:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,sans-serif;background:#f7f4ee;color:#251f1b;--bg: #f7f4ee;--surface: #fffdf8;--surface-soft: #f3efe7;--line: #ddd3c4;--line-strong: #c7b89f;--text-muted: #756b60;--wine: #7d1930;--wine-dark: #5f1123;--sage: #506a4f;--gold: #a8894a;--terracotta: #b55534;--shadow: 0 18px 45px rgba(61, 44, 31, .09)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#ffffffad,#f7f4eeeb),var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:26px;height:100vh;padding:28px 18px;border-right:1px solid var(--line);background:#fffdf8db;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:grid;gap:5px;padding:0 8px 16px}.brand strong{font-family:Georgia,Times New Roman,serif;font-size:25px;line-height:1;letter-spacing:0}.brand span,.eyebrow,small{color:var(--text-muted)}.brand span{font-size:11px;text-transform:uppercase}.nav-list{display:grid;gap:8px}.nav-item{display:grid;gap:3px;width:100%;min-height:58px;padding:10px 12px;text-align:left;color:#3a332d;border:1px solid transparent;border-radius:8px;background:transparent}.nav-item span{font-weight:700}.nav-item small{font-size:12px}.nav-item.is-active,.nav-item:hover{border-color:#e6ddcf;background:#f3efe7}.daily-credit{display:grid;gap:4px;margin-top:auto;padding:16px 14px;border:1px solid var(--line);border-radius:8px;background:#fbf8f2}.daily-credit strong{font-size:30px;line-height:1}.credit-line{height:1px;margin:10px 0;background:var(--line)}.app-main{min-width:0}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px 18px;border-bottom:1px solid var(--line);background:#f7f4eee0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar h1{margin:4px 0 0;font-size:24px;line-height:1.1;letter-spacing:0}.eyebrow{margin:0;font-size:11px;font-weight:800;letter-spacing:0;text-transform:uppercase}.topbar-actions{display:flex;align-items:center;gap:12px}.credit-pill,.consultant{display:flex;align-items:center;gap:10px;min-height:46px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.credit-pill strong{font-size:20px}.consultant>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:#b79872;font-weight:800}.consultant div{display:grid}.panel-tabs{display:flex;gap:8px;padding:18px 28px 0}.panel-tabs button,.quality-tier button{min-height:36px;padding:8px 14px;color:#4f463d;border:1px solid var(--line);border-radius:999px;background:#fffdf8}.panel-tabs button.is-active,.quality-tier button.is-active{color:#fff;border-color:var(--wine);background:var(--wine)}.workbench-grid{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(350px,1.2fr) minmax(330px,1fr);gap:16px;padding:18px 28px 32px}.surface{min-width:0;border:1px solid var(--line);border-radius:8px;background:#fffdf8e6;box-shadow:var(--shadow)}.upload-surface,.profile-surface,.setup-surface,.proposal-board,.proposal-side,.kpi-surface,.ops-surface{padding:18px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.section-heading h2,.section-heading h3{margin:4px 0 0;line-height:1.15}.section-heading h2{font-size:20px}.section-heading h3{font-size:16px}.section-heading.compact{align-items:center}.count-chip,.status-badge,.tag-row em{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border:1px solid var(--line);border-radius:999px;background:#fbf8f2;font-size:12px;font-style:normal;font-weight:700}.status-badge.is-good,.status-dot.is-good{color:#256238;border-color:#506a4f59;background:#eef5ed}.status-badge.is-warn,.status-dot.is-warn{color:#9a4c1e;border-color:#b555345c;background:#fff2e8}.status-badge.is-neutral{color:#4f463d;background:#f2eee7}.launch-access-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbf8f2}.launch-access-panel div{display:grid;gap:6px}.launch-access-panel .status-badge{justify-self:start}.launch-access-panel strong{font-size:14px}.launch-access-panel small{line-height:1.45}.launch-access-panel.is-ready{border-color:#506a4f59;background:#f2f7f0}.launch-access-panel.is-locked{border-color:#b5553452;background:#fff6ee}.upload-drop{display:grid;gap:4px;width:100%;min-height:92px;place-items:center;margin-bottom:14px;color:#574c42;border:1px dashed var(--line-strong);border-radius:8px;background:#fbf8f2}.upload-list{display:grid;gap:10px}.image-row,.selected-block{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:92px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.image-row div,.selected-block div{display:grid;gap:4px}.image-row span,.selected-block span{color:var(--text-muted);font-size:13px}.asset{display:block;overflow:hidden;border:1px solid var(--line);border-radius:7px;background-image:url(/assets/style-workbench/asset-sheet.png);background-repeat:no-repeat;background-size:400% 300%}.upload-thumb,.person-thumb,.scene-thumb{width:82px;height:72px}.person-thumb{height:82px}.scene-thumb{width:96px}.mini-thumb{width:52px;height:46px}.shot-thumb{width:100%;aspect-ratio:1 / 1.08}.proposal-image{width:100%;height:100%}.status-dot{width:12px;height:12px;border-radius:50%;border:1px solid currentColor}.notice-line{display:grid;gap:4px;margin-top:14px;padding:12px;border-left:3px solid var(--gold);background:#fbf7ef}.notice-line span{color:var(--text-muted)}.field-grid{display:grid;border-top:1px solid var(--line)}.field-row{display:grid;grid-template-columns:86px minmax(0,1fr) 70px;align-items:center;gap:10px;min-height:48px;border-bottom:1px solid var(--line)}.field-row span,.field-row small,.brief-grid span,.delivery-stack span{color:var(--text-muted)}.field-row strong{min-width:0;overflow-wrap:anywhere}.brief-box{margin-top:18px;padding:14px;border-radius:8px;background:#f8f4ed}.brief-grid{display:grid;gap:14px;margin-bottom:12px}.tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.small-button,.ghost-button,.secondary-button,.text-button{border:1px solid var(--line);border-radius:8px;background:#fffdf8;color:#4f463d}.small-button{min-height:34px;padding:7px 11px;font-size:13px}.ghost-button{min-height:42px;padding:8px 14px}.option-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 16px}.image-option{display:grid;gap:6px;justify-items:center;min-height:88px;padding:8px;color:#4f463d;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.image-option.is-selected{border-color:var(--sage);box-shadow:0 0 0 2px #506a4f29}.image-option span{font-size:12px;font-weight:700}.shot-preview{padding-top:6px}.shot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shot-tile{display:grid;gap:6px;min-height:158px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.shot-tile.is-anchor{border-color:var(--sage)}.shot-tile strong{font-size:13px}.quality-tier{display:flex;gap:8px;margin-top:16px}.generation-timeline{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbf8f2}.timeline-list{display:grid;gap:8px}.timeline-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.timeline-marker{width:12px;height:12px;margin-top:4px;border-radius:50%;border:2px solid var(--line-strong);background:#fffdf8}.timeline-item div{display:grid;gap:3px}.timeline-item strong{font-size:13px}.timeline-item small{line-height:1.45}.timeline-item em{min-width:70px;padding:3px 7px;border-radius:999px;text-align:center;font-size:11px;font-style:normal;font-weight:800;color:var(--text-muted);background:#f3efe7}.timeline-item.is-complete .timeline-marker{border-color:var(--sage);background:var(--sage)}.timeline-item.is-running{border-color:#7d193057}.timeline-item.is-running .timeline-marker,.timeline-item.is-action .timeline-marker{border-color:var(--wine);background:var(--wine)}.timeline-item.is-running em,.timeline-item.is-action em{color:#fff;background:var(--wine)}.timeline-item.is-failed .timeline-marker{border-color:var(--terracotta);background:var(--terracotta)}.credit-summary{display:grid;gap:4px;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbf8f2}.credit-summary strong{color:var(--wine);font-size:30px;line-height:1}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.primary-button,.secondary-button{min-height:46px;padding:10px 14px;font-weight:800}.primary-button{color:#fff;border:1px solid var(--wine-dark);border-radius:8px;background:linear-gradient(180deg,var(--wine),var(--wine-dark))}.primary-button:disabled{cursor:wait;opacity:.72}.secondary-button:hover,.ghost-button:hover,.small-button:hover,.text-button:hover{border-color:var(--line-strong);background:#f8f4ed}.toast{margin:12px 0 0;padding:10px 12px;border-radius:8px;color:#3a4f34;background:#eef5ed}.global-toast{margin:14px 28px 0;border:1px solid rgba(80,106,79,.2)}.toast.is-error{color:#7f251a;background:#fff0ea}.history-surface{grid-column:1 / -1;padding:16px 18px}.table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:880px}th,td{padding:12px 10px;text-align:left;border-top:1px solid var(--line)}th{color:var(--text-muted);font-size:12px;font-weight:800}td span{display:block;margin-top:3px;color:var(--text-muted);font-size:12px}.text-button{min-height:32px;padding:6px 10px}.proposal-layout,.operations-layout{display:grid;gap:16px;padding:18px 28px 32px}.proposal-layout{grid-template-columns:minmax(0,1fr) 340px}.history-detail-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:14px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.history-detail-strip span,.history-detail-strip em{color:var(--muted);font-size:12px;font-style:normal;white-space:nowrap}.history-detail-strip strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.proposal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(210px,28vw);gap:12px}.proposal-card{position:relative;overflow:hidden;min-height:210px;border-radius:8px;background:#e7dfd3}.proposal-card.is-cover{grid-row:span 2}.proposal-card div{position:absolute;left:14px;right:14px;bottom:14px;display:grid;gap:4px;padding:12px;border-radius:8px;color:#fff;background:#251f1bb8}.proposal-card div span{font-size:28px;font-family:Georgia,Times New Roman,serif}.proposal-side{align-self:start}.delivery-stack,.quality-list,.signal-grid{display:grid;gap:10px}.delivery-stack label,.quality-row,.signal-grid div{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.quality-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.proposal-side .primary-button,.proposal-side .secondary-button{width:100%;margin-top:12px}.operations-layout{grid-template-columns:minmax(0,1fr)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kpi-grid div{display:grid;gap:6px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fbf8f2}.kpi-grid strong{font-size:32px;line-height:1}.signal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.signal-grid span{color:var(--text-muted);line-height:1.55}@media(max-width:1180px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.nav-list{grid-template-columns:repeat(4,minmax(0,1fr))}.daily-credit{display:none}.workbench-grid,.proposal-layout{grid-template-columns:1fr}}@media(max-width:760px){.topbar,.topbar-actions,.panel-tabs,.action-row{align-items:stretch;flex-direction:column}.topbar{position:static}.panel-tabs,.workbench-grid,.proposal-layout,.operations-layout{padding-right:14px;padding-left:14px}.nav-list,.option-strip,.shot-grid,.proposal-grid,.kpi-grid,.signal-grid{grid-template-columns:1fr}.field-row{grid-template-columns:1fr;padding:10px 0}.image-row,.selected-block{grid-template-columns:74px minmax(0,1fr)}.launch-access-panel{grid-template-columns:1fr}.launch-access-panel .small-button{width:100%}.image-row .status-dot{display:none}.proposal-card.is-cover{grid-row:span 1}}
