:root{font-family:"OPPO Sans 4.0",-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#192922;background:#f4f6f5;font-synthesis:none;--green:#246c4c;--ink:#162d23;--muted:#64736b;--line:#e1e7e3;--surface:#fff;--soft:#eff5ed}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button,a{outline-offset:4px}button:focus-visible,a:focus-visible{outline:3px solid #9eba5d}button{border:1px solid var(--line);border-radius:8px;background:white;padding:10px 15px;color:var(--ink);font-size:.875rem;font-weight:550}button:hover:enabled{background:#f0f5ef}button.primary{background:var(--green);color:white;border-color:var(--green)}button.primary:hover:enabled{background:#195536}button.quiet{border-color:transparent;background:transparent}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}input,select,textarea{width:100%;border:1px solid #ccd6ce;border-radius:7px;background:white;padding:11px 12px;color:var(--ink);font-size:1rem}textarea{resize:vertical;line-height:1.75;min-height:120px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--green)}label{display:flex;flex-direction:column;gap:8px;font-size:.875rem;color:#45594c}h1,h2,h3,p{margin:0}h1{font-size:1.8rem;font-weight:630;letter-spacing:-.04em}h2{font-size:1.1rem;font-weight:650}h3{font-size:1rem}p{line-height:1.8}.muted{color:var(--muted);font-size:.875rem}.small{font-size:.8125rem}.mono{font-family:var(--lxj-font);font-variant-numeric:tabular-nums}.layout{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--ink);color:#d0dbd4;padding:30px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;padding:0 10px 32px}.brand :is(img,svg){width:36px;height:36px}.brand b{display:block;color:white;font-size:1rem;letter-spacing:.05em}.brand small{display:block;margin-top:6px;font-size:.65rem;letter-spacing:.12em;color:#a3bbaa}.nav-label{font-size:.75rem;letter-spacing:.12em;color:#8ba495;padding:18px 14px 10px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{color:#c7d5cc;background:transparent;border:0;text-align:left;display:flex;align-items:center;gap:12px;padding:13px 15px;font-size:.9rem}.nav button:hover{background:#254433}.nav button.active{background:#c1e797;color:#193621}.nav-icon{font-size:1.15rem;width:22px;text-align:center}.sidebar-bottom{margin-top:auto;border-top:1px solid #375041;padding:22px 10px 0}.avatar{width:32px;height:32px;background:#36563f;border-radius:50%;display:grid;place-items:center;color:#daedcb;font-size:.8rem}.profile{display:flex;gap:10px;align-items:center}.profile b{display:block;font-size:.875rem}.profile small{display:block;color:#8faa96;margin-top:4px;font-size:.75rem}.workspace{min-width:0}.topbar{height:70px;padding:0 42px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:white}.breadcrumb{font-size:.875rem;color:#778579}.environment{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:#6b775e}.dot{width:6px;height:6px;border-radius:50%;background:#769354}.content{max-width:1500px;margin:auto;padding:34px 42px 64px}.heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:27px}.eyebrow{color:var(--green);font-size:.75rem;letter-spacing:.15em;font-weight:650;margin-bottom:10px}.heading p{margin-top:10px;color:var(--muted);font-size:.875rem}.heading-actions{display:flex;gap:10px;flex-shrink:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:30px}.stat{background:white;border:1px solid var(--line);border-radius:10px;padding:20px 22px;display:flex;justify-content:space-between;align-items:center}.stat strong{font-size:1.75rem;font-weight:550}.stat .muted{font-size:.8125rem}.section-head{display:flex;align-items:center;justify-content:space-between;margin:28px 0 16px;gap:16px}.channel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.channel-card{text-align:left;padding:20px;background:white;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:38px 1fr 14px;gap:12px;align-items:center}.channel-card:hover:enabled{border-color:#8aaf8d;background:white;box-shadow:0 3px 12px #17381d08}.channel-icon{width:36px;height:40px;border-radius:7px;background:#edf4e9;color:#37724e;display:grid;place-items:center;font-size:1rem;font-weight:650}.channel-card b{font-size:.9375rem;display:block;font-weight:600}.channel-card small{font-weight:400;font-size:.8125rem;color:var(--muted);display:block;margin-top:6px}.arrow{color:#879d88}.bundle{margin-top:12px;background:#e6efdc;border:1px solid #d5e3c8;border-radius:10px;padding:18px 23px;display:flex;align-items:center;justify-content:space-between}.bundle b{font-size:.9375rem}.bundle p{font-size:.8125rem;color:#5d725a;margin-top:4px}.bundle button{background:transparent;border:1px solid #b1c69f;color:#315b2b}.panel{background:white;border:1px solid var(--line);border-radius:11px;overflow:hidden}.panel-pad{padding:24px}.empty{padding:45px 26px;text-align:center;color:var(--muted)}.empty-mark{display:grid;place-items:center;margin:0 auto 15px;width:44px;height:48px;border:1px solid #c9d9c9;border-radius:8px;color:#7e977a;background:#f6f9f2;font-size:1.4rem}.empty b{display:block;color:#465e4b;font-size:.95rem;margin-bottom:9px}.empty p{font-size:.875rem}.empty button{margin-top:20px}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:18px}.toolbar input{max-width:320px;background:white}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{font-size:.8125rem;padding:7px 13px;border-radius:30px;background:transparent}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.875rem}th{font-weight:500;color:#78867a;text-align:left;padding:14px 20px;font-size:.8125rem;background:#fafcf9;border-bottom:1px solid var(--line)}td{padding:19px 20px;border-bottom:1px solid #eef1ec;white-space:nowrap}tr:last-child td{border-bottom:0}td .title-link{font-weight:600;text-align:left;max-width:360px;white-space:normal;padding:0;border:0}td small{display:block;color:var(--muted);margin-top:6px;font-size:.75rem}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:5px;padding:5px 9px;background:#f0f3ef;color:#5d705e;font-size:.75rem;white-space:nowrap}.badge.good{background:#e7f3e6;color:#367e42}.badge.warn{background:#fff1d9;color:#977028}.badge.running{background:#e9f0fb;color:#4b6eae}.split{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px}.stack{display:flex;flex-direction:column;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}.checklist{display:flex;flex-wrap:wrap;gap:10px}.check{display:flex;flex-direction:row;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;color:#354d3b;background:white}.check:has(input:checked){border-color:#81ad76;background:#f0f7ec}.notice{border:1px solid #e8dfc7;background:#fffaf0;color:#826f41;padding:13px 16px;border-radius:7px;font-size:.8125rem;line-height:1.8}.info{background:#eff5ec;border-color:#d4e3cb;color:#587147}.tabs{display:flex;gap:4px;padding:12px 18px;border-bottom:1px solid var(--line);overflow:auto}.tab{border:0;background:transparent;color:var(--muted);white-space:nowrap}.tab.active{background:#e9f2e2;color:#36633e}.editor{padding:25px}.editor .output-title{font-size:1.3rem;border-color:transparent;padding:0 0 13px;font-weight:600}.editor .output-body{border-color:transparent;min-height:340px;padding:14px 0;line-height:1.95}.editor .output-body:focus,.editor .output-title:focus{outline:1px solid #b3c9a9;outline-offset:8px}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid var(--line)}.editor-toolbar div{display:flex;gap:10px}.source-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.source-card{padding:22px;border:1px solid var(--line);border-radius:10px;background:white;text-align:left;min-height:195px;display:flex;flex-direction:column;align-items:flex-start;gap:13px}.source-card h3{line-height:1.5}.source-card p{font-size:.875rem;font-weight:400;color:var(--muted);white-space:pre-line;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.source-card footer{margin-top:auto;padding-top:12px;font-size:.75rem;font-weight:400;color:#81917f}.asset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.asset-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white}.asset-card img{width:100%;height:185px;object-fit:contain;background:#eef1ec}.asset-card div{padding:14px}.asset-card p{font-size:.875rem;overflow-wrap:anywhere}.asset-card small{font-size:.75rem;color:var(--muted);display:block;margin:7px 0}.connect-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.connect-card{padding:25px;border:1px solid var(--line);background:white;border-radius:10px}.connect-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.connect-card p{font-size:.875rem;color:var(--muted)}.connect-card button{margin-top:18px}.connect-card pre{white-space:pre-wrap;word-break:break-word;background:#f5f8f3;padding:15px;font-size:.8125rem;line-height:1.8}.versions{list-style:none;padding:0;margin:0}.versions li{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.job{display:flex;justify-content:space-between;align-items:center;padding:15px 0;gap:12px;border-bottom:1px solid var(--line)}.job:last-child{border-bottom:0}.job p{font-size:.875rem}.job small{color:var(--muted);font-size:.75rem}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.gallery img{width:100%;height:200px;object-fit:contain;background:#f1f4ef}.gallery a{font-size:.8125rem;display:block;margin-top:6px}.boot{padding:80px;text-align:center;color:var(--muted)}.login{max-width:440px;margin:12vh auto;background:white;border:1px solid var(--line);border-radius:15px;padding:40px}.login :is(img,svg){width:46px;margin-bottom:28px}.login p{font-size:.9rem;color:var(--muted);margin:18px 0 26px}.login a{display:block;text-align:center;background:var(--green);padding:12px;color:white;border-radius:8px}dialog{border:1px solid var(--line);border-radius:15px;padding:0;max-width:min(780px,94vw);width:760px;max-height:90vh;box-shadow:0 20px 80px #15241922;color:var(--ink)}dialog::backdrop{background:#15271977;backdrop-filter:blur(2px)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:22px 28px;border-bottom:1px solid var(--line)}.modal-body{padding:25px 28px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:19px 28px;border-top:1px solid var(--line);background:#fafcf9}.form-error{display:none;color:#a34639;font-size:.875rem;margin-top:15px}.form-error:not(:empty){display:block}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:9px;padding:14px 24px;box-shadow:0 8px 25px #153c2026;font-size:.875rem;z-index:10;display:none;max-width:90vw}#toast.visible{display:block}.save-state{font-size:.8125rem;color:#7b8b77}.error-state{color:#a7553b}.plan-counts{display:flex;flex-wrap:wrap;gap:10px}.plan-counts label{flex-direction:row;align-items:center;font-size:.8125rem}.plan-counts input{width:62px;padding:8px}.ref-list{max-height:170px;overflow:auto;display:flex;flex-direction:column;gap:8px}.ref-list .check{font-size:.8125rem;align-items:start}.subtle-divider{height:1px;background:var(--line);margin:23px 0}.content-note{font-size:.8125rem;color:#7b8b78;margin-top:16px;line-height:1.8}.mobile-brand{display:none}@media(min-width:1600px){.content{padding:45px 60px}.channel-card{padding:25px}}@media(max-width:1150px){.layout{grid-template-columns:185px minmax(0,1fr)}.content{padding:28px 26px}.topbar{padding:0 26px}.source-cards,.asset-grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:280px minmax(0,1fr)}.channel-card{padding:17px 13px;grid-template-columns:30px 1fr;gap:10px}.channel-card .arrow{display:none}.channel-icon{width:30px;height:34px}}@media(max-width:800px){.layout{display:block}.sidebar{position:static;height:auto;padding:15px}.brand{padding:0 7px 16px}.brand small{display:none}.nav-label,.sidebar-bottom{display:none}.nav{flex-direction:row;overflow:auto;gap:4px}.nav button{padding:10px 12px;font-size:.8125rem;white-space:nowrap;gap:6px}.nav-icon{font-size:1rem;width:16px}.topbar{height:48px;padding:0 20px}.content{padding:26px 18px 50px}.heading{gap:16px}.heading-actions{flex-direction:column}.heading-actions button{padding:9px 12px}h1{font-size:1.5rem}.stats{gap:8px;margin-bottom:24px}.stat{padding:16px 12px;flex-direction:column;align-items:start;gap:10px}.stat strong{font-size:1.5rem}.channel-grid{grid-template-columns:1fr 1fr}.channel-card{padding:18px 12px}.channel-card small{font-size:.75rem}.bundle{gap:14px;padding:17px}.bundle button{white-space:nowrap}.split{display:flex;flex-direction:column}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.connect-grid{grid-template-columns:1fr}.editor{padding:20px}.editor-toolbar{padding:15px}.modal-head,.modal-body{padding:20px}.modal-footer{padding:18px 20px}.source-cards{grid-template-columns:1fr 1fr}.source-card{padding:16px}.asset-grid{grid-template-columns:1fr 1fr}.asset-card img{height:150px}.toolbar{align-items:stretch;flex-direction:column}.toolbar input{max-width:100%}.gallery{grid-template-columns:1fr 1fr}.login{margin:8vh 20px;padding:30px}.table-wrap th,.table-wrap td{padding:15px}.notice{font-size:.8125rem}}
.first-section{margin-top:0}.job-copy{white-space:pre-wrap;margin-top:14px}
.topbar{gap:12px}.topbar .breadcrumb{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .environment{white-space:nowrap}.topbar #logout{flex-shrink:0;font-size:.8125rem}@media(max-width:480px){.topbar .breadcrumb{display:none}.topbar .environment{flex:1}}
.material-image{margin:0;min-width:0}.material-control{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.material-control button{font-size:.8125rem;padding:8px 10px}.text-material-control{justify-content:space-between;margin:0 0 20px;padding-bottom:14px;border-bottom:1px solid var(--line)}.retention-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.retention-card{min-width:0;padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff}.retention-card-head{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:12px}.retention-card h3{font-size:.9375rem;line-height:1.6;overflow-wrap:anywhere;margin-top:4px}.retention-card .badge{white-space:normal;line-height:1.6}.retention-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.retention-card-actions:empty{display:none}.material-preview{display:block;border-radius:6px;overflow:hidden;background:#f1f4ef}.material-preview img{display:block;width:100%;height:170px;object-fit:contain}.material-copy summary{cursor:pointer;color:var(--green);font-size:.875rem;padding:5px 0}.material-copy p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.875rem;max-height:250px;overflow:auto;padding:12px 0}.retention-section>h3{font-size:1rem}.retention-section>.muted{margin-top:8px}.retention-section+.retention-section{border-top:1px solid var(--line);padding-top:20px}#trash-list{margin-top:24px}#confirm-task-complete{max-width:100%;white-space:normal}#retention-error{margin-top:0}@media(max-width:800px){.editor-toolbar{align-items:flex-start;gap:12px;flex-wrap:wrap}.editor-toolbar div{flex-wrap:wrap}.material-control{align-items:flex-start}.material-control .badge{white-space:normal;line-height:1.6}.retention-list{grid-template-columns:1fr}.retention-card{padding:16px}.modal-footer{flex-wrap:wrap}.material-preview img{height:200px}}
.task-trash-card .trash-deadline{margin-top:12px;font-size:.875rem;color:#9b3d34}.task-trash-card .retention-card-actions{justify-content:flex-start}
.copy-editor{margin-bottom:24px}.copy-editor summary{cursor:pointer;color:var(--muted,#64726b);padding:12px 0}.copy-editor[open] summary{margin-bottom:12px}.output-summary-field{margin:8px 0 18px;font-weight:600}.output-summary{font-weight:400}.preview-title{font-size:25px;line-height:1.4;margin:8px 0 24px}.article-preview{max-width:720px;margin:auto}.article-cover{margin:0 0 18px}.article-cover .planned-image{margin:0}.article-cover .planned-image img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:2.35/1;object-fit:cover}.article-summary{margin:0 0 28px;padding:15px 17px;border-left:3px solid #567461;background:#f4f6f5}.article-summary b{font-size:13px}.article-summary p{margin-top:5px;color:#526259;line-height:1.75}.article-section{margin:0 0 24px}.article-section>p,.article-section:not(section){white-space:pre-wrap;line-height:1.9;font-size:16px}.article-preview .material-image{margin:18px 0 30px}.article-preview img{width:100%;max-height:720px;object-fit:contain;background:#f6f7f4}.placement{font-size:12px!important;color:#66756b;line-height:1.5!important}.planned-image{margin:0;padding:12px;border:1px solid #e2e8e1;border-radius:12px;background:#fff}.planned-image figcaption{margin-bottom:12px}.planned-image figcaption p{margin:8px 0 0}.image-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}.edit-base-preview{max-width:320px;max-height:360px;object-fit:contain;align-self:center;width:100%;border-radius:10px}.image-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px}.image-comparison figure{margin:0;min-width:0}.image-comparison img{width:100%;max-height:500px;object-fit:contain;background:#f5f6f3;border-radius:10px}.image-comparison figcaption{font-weight:600;margin-bottom:10px}.button-link{display:inline-block;padding:9px 12px;border:1px solid #d9e1d9;border-radius:8px;text-decoration:none}.finished-grid,.preference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.finished-card{overflow:hidden}.finished-cover{width:100%;height:230px;object-fit:contain;background:#f1f4ee}.finished-excerpt{line-height:1.7;color:#526259}.preference-card h3{line-height:1.7;font-size:17px;margin:16px 0}.preference-card>p{line-height:1.7}.preference-list{padding-left:22px;line-height:1.9}.preference-list li{margin:8px 0}.toolbar select{max-width:180px}.gallery .planned-image img{width:100%;height:auto;max-height:440px;object-fit:contain}.editor-toolbar>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}[hidden]{display:none!important}@media(max-width:760px){.finished-grid,.preference-grid{grid-template-columns:1fr}.image-comparison{gap:8px}.image-comparison img{max-height:350px}.toolbar select{max-width:100%}.editor-toolbar{gap:12px;align-items:flex-start}.article-section>p{font-size:16px}.gallery .planned-image{min-width:0}.article-summary{padding:13px 14px}}
.asset-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.asset-card-actions button{padding:7px 9px;font-size:.8125rem}.asset-card-actions a{font-size:.8125rem}@media(max-width:480px){.asset-card-actions{align-items:flex-start;flex-direction:column}}
.news-express-gallery{grid-template-columns:minmax(0,min(100%,760px));justify-content:center;align-items:start}.news-express-gallery>*,.news-express-card{min-width:0;max-width:760px;width:100%}.news-express-gallery img,.news-express-gallery .planned-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:#f7f4ef}.news-express-card{padding:14px;border-radius:10px}.news-express-card figcaption{overflow-wrap:anywhere}.news-express-gallery figure{margin:0}@media(max-width:800px){.news-express-gallery{grid-template-columns:minmax(0,1fr)}.news-express-card{padding:10px}.news-express-gallery .image-actions{align-items:flex-start}.news-express-gallery .image-actions a,.news-express-gallery .image-actions button{max-width:100%;white-space:normal}}
button.danger{color:#9b3d34;border-color:#dfc5c0}button.danger:hover:enabled{background:#fbefed;border-color:#cf9e97}button.danger-filled{background:#a54137;color:#fff;border-color:#a54137}button.danger-filled:hover:enabled{background:#89342d;border-color:#89342d}.task-actions{text-align:right;width:1%;white-space:nowrap}.task-actions button{padding:7px 10px}

/* BEGIN LXJ V0.9 workspace adapter; appended once after legacy layout */
/* LXJ V0.9 native Workspace adapter. Source tokens are read-only. */
:root {
  --lxj-primary-900: #173D32;
  --lxj-primary-700: #245646;
  --lxj-primary-500: #3E7561;
  --lxj-primary-100: #E5EEE9;
  --lxj-primary-50: #F2F7F4;
  --lxj-surface-page: #F6F5F1;
  --lxj-surface-default: #FFFFFF;
  --lxj-text-primary: #202522;
  --lxj-text-secondary: #626A66;
  --lxj-text-weak: #929894;
  --lxj-border-default: #DEE2DF;
  --lxj-border-divider: #ECEEEC;
  --lxj-status-success: #27845F;
  --lxj-status-warning: #C8892C;
  --lxj-status-error: #C74B4B;
  --lxj-status-info: #4D7495;
  --lxj-radius-sm: 6px;
  --lxj-radius-md: 8px;
  --lxj-radius-lg: 12px;
  --lxj-radius-xl: 16px;
  --lxj-space-4: 4px;
  --lxj-space-8: 8px;
  --lxj-space-12: 12px;
  --lxj-space-16: 16px;
  --lxj-space-20: 20px;
  --lxj-space-24: 24px;
  --lxj-space-32: 32px;
  --lxj-space-40: 40px;
  --lxj-space-48: 48px;
  --lxj-shadow-none: none;
  --lxj-shadow-1: 0 1px 3px rgba(0,0,0,0.06);
  --lxj-shadow-2: 0 8px 24px rgba(0,0,0,0.10);
  --lxj-font: "OPPO Sans 4.0", sans-serif;
  --lxj-control: 40px;
  --lxj-sidebar: 240px;
  --ink: var(--lxj-text-primary);
  --green: var(--lxj-primary-900);
  --muted: var(--lxj-text-secondary);
  --line: var(--lxj-border-default);
  --paper: var(--lxj-surface-default);
  --surface: var(--lxj-surface-default);
  --accent: var(--lxj-primary-100);
  --soft: var(--lxj-primary-50);
}

html { background:var(--lxj-surface-page); color:var(--lxj-text-primary); font:14px/1.65 var(--lxj-font); font-variant-numeric:tabular-nums; }
body { background:var(--lxj-surface-page); color:var(--lxj-text-primary); }
button,input,select,textarea { font:inherit; }
h1 { font-size:24px; line-height:1.4; letter-spacing:0; }
h2 { font-size:20px; line-height:1.4; }
h3 { font-size:16px; }
small,.small { font-size:13px; }
.muted,small,.content-note,.heading p,.page-head p { color:var(--lxj-text-secondary); }
a { color:var(--lxj-primary-900); }
a:hover { color:var(--lxj-primary-700); }
button,.button-link,.login a { min-height:var(--lxj-control); padding:8px 16px; line-height:22px; border:1px solid var(--lxj-border-default); border-radius:var(--lxj-radius-md); background:var(--lxj-surface-default); color:var(--lxj-text-primary); box-shadow:none; }
button:hover:enabled,.button-link:hover { background:var(--lxj-primary-50); border-color:var(--lxj-primary-500); }
button:active:enabled { background:var(--lxj-primary-100); }
button.primary,.login a { background:var(--lxj-primary-900); border-color:var(--lxj-primary-900); color:var(--lxj-surface-default); }
button.primary:hover:enabled,.login a:hover { background:var(--lxj-primary-700); border-color:var(--lxj-primary-700); }
button.primary:active:enabled { background:var(--lxj-primary-500); }
button.quiet { background:transparent; border-color:transparent; color:var(--lxj-text-secondary); }
button.quiet:hover:enabled { background:var(--lxj-primary-50); color:var(--lxj-primary-900); }
button:disabled { opacity:1; cursor:not-allowed; color:var(--lxj-text-secondary); background:var(--lxj-border-divider); border-color:var(--lxj-border-default); }
button.quiet:disabled { background:transparent; border-color:transparent; }
button.danger,.danger { color:var(--lxj-status-error); }
button.danger-filled { background:var(--lxj-status-error); color:var(--lxj-surface-default); border-color:var(--lxj-status-error); }
button.danger-filled:hover:enabled { background:var(--lxj-status-error); border-color:var(--lxj-status-error); }
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:2px solid var(--lxj-primary-500); outline-offset:4px; }
input:not([type=checkbox]):not([type=radio]),select { min-height:var(--lxj-control); padding:8px 12px; line-height:22px; }
input,select,textarea { border-color:var(--lxj-border-default); border-radius:var(--lxj-radius-md); color:var(--lxj-text-primary); background:var(--lxj-surface-default); }
input:hover:enabled,select:hover:enabled,textarea:hover:enabled { border-color:var(--lxj-primary-500); }
input:focus,select:focus,textarea:focus { border-color:var(--lxj-primary-500); }
input:disabled,select:disabled,textarea:disabled { opacity:1; background:var(--lxj-border-divider); color:var(--lxj-text-secondary); }
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true],.field-error { border-color:var(--lxj-status-error); }
input[type=checkbox],input[type=radio] { width:16px; height:16px; min-height:0; padding:0; accent-color:var(--lxj-primary-900); flex-shrink:0; }
label { color:var(--lxj-text-primary); font-size:13px; }
textarea { padding:12px; min-height:120px; }
.shell,.layout { display:grid; grid-template-columns:var(--lxj-sidebar) minmax(0,1fr); }
.shell>main,.workspace { min-width:0; }
.sidebar { background:var(--lxj-primary-900); color:var(--lxj-surface-default); padding:24px 16px; border-right:0; }
.brand { display:flex; align-items:center; gap:12px; padding:0 8px 24px; }
.brand strong,.brand b { display:block; font-size:16px; letter-spacing:0; color:var(--lxj-surface-default); }
.brand small { font-size:12px; color:var(--lxj-primary-100); letter-spacing:0; margin-top:4px; }
.brand :is(img,svg),.lxj-app-icon { width:40px; height:40px; flex-shrink:0; border-radius:var(--lxj-radius-md); }
.lxj-icon { width:20px; height:20px; flex-shrink:0; display:inline-block; vertical-align:middle; }
.nav { gap:4px; }
.nav a,.nav button { display:flex; align-items:center; gap:12px; padding:8px 12px; min-height:40px; color:var(--lxj-primary-100); border-radius:var(--lxj-radius-md); border:0; background:transparent; font-size:14px; }
.nav a:hover,.nav button:hover:enabled { background:var(--lxj-primary-700); color:var(--lxj-surface-default); border:0; text-decoration:none; }
.nav a.active,.nav button.active { background:var(--lxj-primary-100); color:var(--lxj-primary-900); font-weight:600; }
.nav a:focus-visible,.nav button:focus-visible { outline-color:var(--lxj-primary-100); }
.nav-label { color:var(--lxj-primary-100); padding:8px 12px; letter-spacing:0; }
.sidebar-foot,.sidebar-bottom { padding:16px 8px 0; border-color:var(--lxj-primary-500); }
.sidebar small { color:var(--lxj-primary-100); }
.sidebar-foot .quiet { color:var(--lxj-primary-100); font-size:12px; padding:8px; }
.sidebar .avatar { background:var(--lxj-primary-700); color:var(--lxj-surface-default); border-radius:50%; width:32px; height:32px; }
.topbar { min-height:64px; height:auto; padding:16px 32px; gap:16px; background:var(--lxj-surface-default); }
.crumb,.breadcrumb,.environment { color:var(--lxj-text-secondary); font-size:13px; }
.dot { background:var(--lxj-status-success); width:8px; height:8px; }
.content { padding:32px; }
.page-head,.heading { gap:24px; margin-bottom:24px; }
.page-head p,.heading p { margin-top:8px; font-size:14px; }
.heading-actions { gap:8px; flex-wrap:wrap; }
.eyebrow { color:var(--lxj-primary-700); font-size:12px; letter-spacing:1px; }
.stats { margin-bottom:24px; }
.stat { border-radius:var(--lxj-radius-lg); padding:20px 24px; box-shadow:none; }
.stat strong { font-size:24px; color:var(--lxj-text-primary); }
.panel,.table-wrap,.product-card,.type-card,.source-card,.asset-card,.connect-card,.finished-card,.preference-card { border-color:var(--lxj-border-default); border-radius:var(--lxj-radius-lg); background:var(--lxj-surface-default); box-shadow:none; }
.panel-pad,.product-card,.source-card,.connect-card { padding:24px; }
th,td { padding:8px 16px; min-height:40px; height:40px; border-color:var(--lxj-border-divider); font-size:13px; }
th { background:var(--lxj-surface-page); color:var(--lxj-text-secondary); }
td .title-link { min-height:40px; display:inline-flex; align-items:center; }
.tag,.badge { font-size:12px; padding:4px 8px; border-radius:var(--lxj-radius-sm); color:var(--lxj-text-secondary); background:var(--lxj-border-divider); }
.tag.good,.badge.good { color:var(--lxj-status-success); background:color-mix(in srgb,var(--lxj-status-success) 10%,white); }
.tag.warn,.badge.warn { color:var(--lxj-status-warning); background:color-mix(in srgb,var(--lxj-status-warning) 10%,white); }
.tag.error,.badge.error { color:var(--lxj-status-error); background:color-mix(in srgb,var(--lxj-status-error) 10%,white); }
.tag.info,.badge.running { color:var(--lxj-status-info); background:color-mix(in srgb,var(--lxj-status-info) 10%,white); }
.notice { padding:12px 16px; border-radius:var(--lxj-radius-md); border-color:var(--lxj-border-default); border-left:4px solid var(--lxj-primary-500); background:var(--lxj-primary-50); color:var(--lxj-text-primary); }
.notice.warn,.notice:not(.info) { border-left-color:var(--lxj-status-warning); }
.notice.info { border-left-color:var(--lxj-status-info); background:var(--lxj-primary-50); color:var(--lxj-text-secondary); }
.form-error,.form-status,.wf-error,.error-state,.auth-error { color:var(--lxj-status-error); }
.form-status,.wf-error { background:color-mix(in srgb,var(--lxj-status-error) 7%,white); border-color:var(--lxj-status-error); border-radius:var(--lxj-radius-md); }
.empty { padding:40px 24px; color:var(--lxj-text-secondary); }
.empty strong,.empty b { color:var(--lxj-text-primary); }
.empty-mark,.channel-icon { background:var(--lxj-primary-50); color:var(--lxj-primary-700); border-color:var(--lxj-border-default); border-radius:var(--lxj-radius-md); }
.channel-card { padding:20px; border-radius:var(--lxj-radius-lg); }
.channel-card:hover:enabled { background:var(--lxj-primary-50); box-shadow:none; }
.bundle { padding:20px 24px; border-color:var(--lxj-border-default); border-radius:var(--lxj-radius-lg); background:var(--lxj-primary-100); }
.bundle p { color:var(--lxj-text-secondary); }
.bundle button { border-color:var(--lxj-primary-500); color:var(--lxj-primary-900); }
.chip,.tab { border-radius:var(--lxj-radius-md); }
.chip.active { background:var(--lxj-primary-900); border-color:var(--lxj-primary-900); color:var(--lxj-surface-default); }
.tab.active,.check:has(input:checked),.intake-options label:has(input:checked) { background:var(--lxj-primary-50); border-color:var(--lxj-primary-500); color:var(--lxj-primary-900); box-shadow:none; }
.save-state { color:var(--lxj-status-success); }
.save-state.error-state { color:var(--lxj-status-error); }
dialog { border-color:var(--lxj-border-default); border-radius:var(--lxj-radius-lg); box-shadow:var(--lxj-shadow-2); background:var(--lxj-surface-default); max-height:calc(100dvh - 32px); }
dialog::backdrop { background:color-mix(in srgb,var(--lxj-primary-900) 40%,transparent); backdrop-filter:none; }
.modal-head,.modal-body,.modal-footer { padding:24px; border-color:var(--lxj-border-divider); }
.modal-footer,dialog footer { gap:8px; background:var(--lxj-surface-default); }
#toast { background:var(--lxj-primary-900); color:var(--lxj-surface-default); border-radius:var(--lxj-radius-md); box-shadow:var(--lxj-shadow-2); max-width:calc(100vw - 32px); overflow-wrap:anywhere; }
.login,.login-card { background:var(--lxj-surface-default); border-color:var(--lxj-border-default); }
body[data-lxj-product=tmall] .login { background:var(--lxj-surface-page); }
.login-card { padding:32px; }
.login-card .lxj-app-icon { margin-bottom:16px; }
@media(max-width:850px) {
 .shell,.layout { display:block; }
 .sidebar { position:relative; height:auto; padding:16px; }
 .brand { padding:0 0 16px; }
 .sidebar-foot,.sidebar-bottom,.nav-label { display:none; }
 .nav { flex-direction:row; overflow-x:auto; gap:4px; padding-bottom:4px; }
 .nav a,.nav button { flex-shrink:0; white-space:nowrap; }
 .topbar { padding:12px 16px; min-height:56px; flex-wrap:wrap; gap:8px; }
 .content { padding:24px 16px 40px; }
 .heading,.page-head { flex-direction:column; align-items:flex-start; gap:16px; }
 .heading-actions { flex-shrink:1; }
 .stats { gap:12px; }
 .stat { padding:16px; }
 .split,.grid-two,.form-grid,.connect-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
 .full { grid-column:1/-1; }
 .channel-grid,.source-cards,.asset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .bundle { padding:16px; flex-wrap:wrap; gap:16px; }
 .toolbar { flex-wrap:wrap; }
 .toolbar input { max-width:none; }
 dialog { max-width:calc(100vw - 32px); }
 .modal-head,.modal-body,.modal-footer { padding:16px; }
 .heading-actions,.row,.editor-toolbar { flex-wrap:wrap; }
 .editor { padding:16px; }
 .topbar .breadcrumb { display:inline; }
}
@media(max-width:480px) {
 .stats { grid-template-columns:1fr; }
 .channel-grid,.source-cards { grid-template-columns:1fr; }
 .channel-card { padding:16px; }
 input:not([type=checkbox]):not([type=radio]),select,textarea { font-size:16px; }
 .heading-actions { width:100%; }
 .heading-actions button { flex:1 1 auto; }
 .login { margin:32px 16px; padding:24px; }
 body[data-lxj-product=tmall] .login { margin:0; padding:16px; }
}
@media(prefers-reduced-motion:reduce) { button { transition:none; } }

/* Keep action controls at Workspace density across legacy breakpoints. */
.heading-actions button { min-height:40px; padding:8px 16px; line-height:22px; }
.table-wrap th,.table-wrap td { padding:8px 16px; }

/* :root outranks legacy html font rules. */
:root { font-family:var(--lxj-font); color:var(--lxj-text-primary); background:var(--lxj-surface-page); font-synthesis:none; font-variant-numeric:tabular-nums; }

/* Native select line metrics differ at mobile 16px; fix the outer control box. */
input:not([type=checkbox]):not([type=radio]),select { height:40px; }

.font-credit{padding:12px 20px;text-align:center;font-size:11px;line-height:1.5;color:#64736b}.font-credit a{color:inherit}
pre,code,kbd,samp{font-family:var(--lxj-font)}

.coffee-template-reference{display:block;max-width:100%;width:340px;height:auto;margin:auto}.coffee-template-prompt{white-space:pre-wrap;font:inherit;line-height:1.8;overflow-wrap:anywhere}

.request-status{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:10000;max-width:calc(100% - 32px);padding:10px 18px;border-radius:8px;background:#176b71;color:white;box-shadow:0 4px 20px #0002;pointer-events:none;font-size:14px}
.request-status[hidden]{display:none}button[aria-busy="true"]{cursor:wait;opacity:.75}.asset-card>a{display:block}.asset-card img{object-fit:contain}
#task-image-forms .plan-counts,#new-task-image-forms{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px}
#task-image-forms label,#new-task-image-forms label{flex-direction:column;align-items:stretch;min-width:0;gap:6px}
#task-image-forms select,#new-task-image-forms select{width:100%;max-width:100%;min-width:0}

/* Latest detached generation: original aspect ratio and explicit source. */
.latest-result-preview {min-width:0;overflow-wrap:anywhere}
.latest-result-preview .job-copy {white-space:pre-wrap;line-height:1.85}
.latest-result-gallery {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:16px}
.latest-result-image {min-width:0;margin:16px 0;padding:12px;border:1px solid #dbe2de;border-radius:12px}
.latest-result-image img {display:block;width:100%;height:auto;object-fit:contain;margin:12px 0}
.latest-result-image figcaption p {margin:6px 0}
.latest-result-notice .image-actions {display:flex;flex-wrap:wrap;gap:8px}
.latest-result-notice p {line-height:1.65}

.image-edit-preview{border:1px solid #a8c3b4;background:#f2f7f3;border-radius:10px;padding:14px;margin:12px 0 16px;min-width:0;overflow-wrap:anywhere}.image-edit-preview>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:6px}.image-edit-preview .image-actions{display:flex;flex-wrap:wrap;gap:10px}.image-edit-preview p{margin:8px 0}.image-edit-current-label{padding-top:8px;border-top:1px solid #d9e2dc}

/* Task photos stay visible beside the brief; original files open separately. */
.task-asset-fields{min-width:0;display:flex;flex-direction:column;gap:12px}
.task-asset-fields>.content-note{margin:0}
.task-asset-count{font-size:.8125rem;color:var(--muted);margin:0 0 10px}
.task-asset-count b{color:var(--ink)}
.task-asset-selected{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:10px}
.task-asset-photo{min-width:0;margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}
.task-asset-photo>a{display:block;background:#f4f6f5}
.task-asset-photo img{display:block;width:100%;height:112px;object-fit:contain}
.task-asset-photo figcaption{padding:8px;font-size:.75rem;overflow-wrap:anywhere;line-height:1.5}
.task-asset-photo small{display:block;color:var(--muted);margin:4px 0}
.task-asset-photo button{padding:3px 0;font-size:.75rem}
.task-asset-library,.task-asset-upload{border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.task-asset-fields summary{cursor:pointer;font-size:.875rem;color:var(--ink);line-height:1.6}
.task-asset-fields details[open]>summary{margin-bottom:12px}
.task-asset-upload .stack{gap:12px}
.task-asset-upload input[type=file]{height:auto;max-width:100%;padding:8px;font-size:.8125rem}
.task-asset-upload [data-task-upload-start]{width:100%}
.task-asset-choice{display:flex;align-items:center;gap:8px;min-width:0}
.task-asset-choice>a{flex:0 0 48px;display:block}
.task-asset-choice img{display:block;width:48px;height:48px;object-fit:contain;border:1px solid var(--line);border-radius:5px}
.task-asset-choice .check{flex:1;min-width:0;padding:8px;gap:8px}
.task-asset-choice .check span{min-width:0;overflow-wrap:anywhere;font-size:.8125rem}
.task-asset-choice .check small{display:block;color:var(--muted);font-size:.75rem;line-height:1.5;margin-top:4px}
.task-asset-choice input{flex-shrink:0}

/* Desktop result reading: one large image per row; original pixels stay untouched. */
@media(min-width:851px){
 #content:has(>.split){max-width:1920px}
 #output-area .gallery,#output-area .latest-result-gallery{grid-template-columns:minmax(0,1fr);justify-items:center;gap:24px}
 #output-area .gallery>*,#output-area .latest-result-gallery>*,#output-area .latest-result-preview>.latest-result-image{width:100%;min-width:0;max-width:960px;margin-left:auto;margin-right:auto}
 #output-area .planned-image>img,#output-area .planned-image .image-edit-preview>img,#output-area .latest-result-image>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
}

/* Unapproved previews are visibly separate from accepted deliverables. */
.unapproved-section{padding:24px;border-top:1px solid var(--line);min-width:0}
.unapproved-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin:16px 0}
.unapproved-image{width:100%;max-width:960px;min-width:0;margin:0 auto;padding:14px;border:1px solid #dec79d;border-radius:10px;background:#fffdf8;overflow-wrap:anywhere}
.unapproved-image figcaption{line-height:1.7;margin-bottom:12px}
.unapproved-image figcaption p,.unapproved-reason{font-size:.875rem;margin:8px 0}
.unapproved-image>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.unapproved-empty{margin:16px 0;line-height:1.8}
.unapproved-image .button-link{display:inline-block;margin-top:8px}
