:root{color:#1a1a1a;background:#f5f6fa;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,Roboto,sans-serif;font-synthesis:none;--bg-app: #f5f6fa;--bg-surface: #ffffff;--bg-raised: #ffffff;--bg-hover: #f4f5f7;--bg-active: #eef4ff;--bg-overlay: rgba(17, 24, 39, .42);--bg-inset: #f4f5f7;--border-divider: #f0f1f5;--border-subtle: #ececf1;--border-default: #dfe3eb;--border-strong: #cdd3df;--text-primary: #1a1a1a;--text-secondary: #8a8f9c;--text-tertiary: #9ba1ae;--text-disabled: #b3b8c4;--text-on-accent: #ffffff;--accent-primary: #3b82f6;--accent-hover: #2563eb;--accent-pressed: #1d4ed8;--accent-subtle: #eef4ff;--accent-muted: #dce9ff;--accent-focus: rgba(59, 130, 246, .2);--gradient-hero: linear-gradient(120deg, #4c8dff, #7b5cff);--success: #178754;--success-subtle: #e8f7ef;--warning: #a16207;--warning-subtle: #fff7df;--danger: #c2414b;--danger-subtle: #fff0f1;--info: #2563eb;--info-subtle: #eef4ff;--pastel-1: linear-gradient(135deg, #fdf3e3, #fbe8d8);--pastel-2: linear-gradient(135deg, #e3ecfd, #d8e4fb);--pastel-3: linear-gradient(135deg, #fde3f3, #f6d8fb);--pastel-4: linear-gradient(135deg, #ece3fd, #e0d8fb);--pastel-5: linear-gradient(135deg, #e3fdf0, #d8fbe8);--pastel-6: linear-gradient(135deg, #fde8e3, #fbd8d8);--radius-xs: 6px;--radius-sm: 8px;--radius-control: 12px;--radius-card: 16px;--radius-modal: 16px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", Roboto, sans-serif;--font-size-micro: 12px;--font-size-caption: 12px;--font-size-label: 13px;--font-size-body: 14px;--font-size-card-title: 16px;--font-size-section-title: 20px;--font-size-page-title: 24px;--font-size-display: 24px;--line-height-tight: 1.25;--line-height-micro: 18px;--line-height-caption: 18px;--line-height-body: 21px;--line-height-card-title: 24px;--line-height-section-title: 28px;--line-height-page-title: 32px;--line-height-display: 32px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-heading: 650;--control-compact: 32px;--control-default: 36px;--control-comfortable: 44px;--transition-fast: .15s ease;--shadow-card: 0 1px 2px rgba(17, 24, 39, .035);--shadow-raised: 0 8px 24px rgba(17, 24, 39, .07);--shadow-modal: 0 24px 64px rgba(17, 24, 39, .16);--focus-ring: 0 0 0 3px var(--accent-focus);--header-height: 64px;--content-max-width: 1440px;--sidebar-width: 200px;--inspector-width: 336px;--bg-canvas: var(--bg-app);--bg-surface-raised: var(--bg-raised);--bg-surface-hover: var(--bg-hover);--bg-surface-selected: var(--bg-active);--bg: var(--bg-app);--panel: var(--bg-surface);--panel-2: var(--bg-raised);--line: var(--border-subtle);--muted: var(--text-tertiary);--text: var(--text-primary);--blue: var(--accent-primary);--green: var(--success);--orange: var(--warning);--red: var(--danger)}*{box-sizing:border-box}body{margin:0;min-width:1120px;min-height:100vh;background:radial-gradient(circle at 15% 0%,#eef4ff 0,transparent 35%),var(--bg)}button,input,select,textarea{color:inherit;font:inherit}button{cursor:pointer}code{font-family:SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:24px;min-height:64px;padding:9px 22px;background:#0a0f16f0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:10px;min-width:220px}.brand>i{display:grid;place-items:center;width:38px;height:38px;color:var(--text-primary);font-weight:900;font-style:normal;background:linear-gradient(135deg,#78beff,#54e1bc);border-radius:9px}.brand span{display:flex;flex-direction:column}.brand small{color:var(--muted);font-size:11px}.context-selectors{display:flex;gap:8px}.context-selectors label{display:flex;align-items:center;gap:7px;padding-left:9px;color:var(--muted);font-size:12px;background:#f4f5f7;border:1px solid var(--line);border-radius:7px}.context-selectors select{min-width:150px;border:0}.topbar nav{display:flex;align-self:stretch;margin-left:auto}.topbar nav a{display:grid;place-items:center;padding:0 14px;color:#9babbd;text-decoration:none;border-bottom:2px solid transparent}.topbar nav a:hover{color:#e8f1fb}.topbar nav a.active{color:#78beff;background:#54a5ff12;border-bottom-color:var(--blue)}.workspace{max-width:1680px;margin:0 auto;padding:20px 24px 44px}.page-stack{display:flex;flex-direction:column;gap:16px}.panel{padding:16px;background:linear-gradient(180deg,#151e2af5,#fffffff5);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px #00000021}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.panel-heading h2,.panel h2,.panel h1{margin:0;font-size:16px}.panel-heading span,.muted{color:var(--muted);font-size:12px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:16px}select,input,textarea{min-height:34px;padding:6px 9px;color:var(--text);background:#f4f5f7;border:1px solid #dfe3eb;border-radius:6px;outline:none}select:focus,input:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px #54a5ff1f}textarea{resize:vertical}.primary-button,.secondary-button,.icon-button{padding:8px 13px;border:1px solid transparent;border-radius:6px}.primary-button{color:var(--text-primary);font-weight:750;background:var(--blue)}.secondary-button{color:#bdddff;background:#eef4ff;border-color:#c9dcff}.icon-button{font-size:22px;line-height:1;background:transparent}button:disabled{cursor:wait;opacity:.55}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-card{min-height:112px;padding:16px;background:linear-gradient(145deg,#fff,#f8f9fb);border:1px solid #ececf1;border-radius:10px}.metric-card span{color:#91a1b5;font-size:13px}.metric-card strong{display:block;margin-top:9px;color:var(--text-primary);font-size:32px;line-height:1}.metric-card small{display:block;margin-top:12px;color:var(--muted)}.metric-card.danger{border-color:#ff657a8c}.metric-card.danger strong{color:var(--red)}.metric-card .metric-text{font-size:19px}.distribution-list{display:grid;gap:11px}.distribution-row{display:grid;grid-template-columns:90px 1fr 50px;align-items:center;gap:10px;font-size:13px}.distribution-track,.progress{height:7px;overflow:hidden;background:#dfe3eb;border-radius:20px}.distribution-track i{display:block;height:100%;background:linear-gradient(90deg,#3f87d5,#6dc8ff);border-radius:inherit}.trend-chart{width:100%;overflow:hidden}.trend-chart svg{display:block;width:100%;max-height:230px}.grid-line{stroke:#dfe3eb;stroke-width:1}.trend-line{fill:none;stroke:#65b5ff;stroke-width:3}.trend-dot{fill:#8fceff;stroke:#dce9ff;stroke-width:3}.trend-labels{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}details summary{cursor:pointer;font-weight:650}.code-list,.link-list{display:grid;gap:6px;margin-top:12px}.code-list code{padding:7px 9px;color:#9db0c5;background:#f4f5f7;border-radius:5px}.toolbar{position:sticky;top:74px;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px}.toolbar input{flex:1;min-width:190px}.result-total{margin-left:auto;padding:0 7px;color:var(--muted);font-size:12px}.screen-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.screen-card{overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:9px}.screen-card.is-open{grid-column:span 2;border-color:#3d6f9d}.screen-card-main{width:100%;padding:14px;text-align:left;background:transparent;border:0}.card-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-title strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.ellipsis{overflow:hidden;margin-top:5px;text-overflow:ellipsis;white-space:nowrap}.screen-counts{display:flex;justify-content:space-between;margin:14px 0 10px;color:#aebccd;font-size:12px}.coverage-meta{display:flex;justify-content:space-between;margin-bottom:6px;font-size:12px}.state-untouched{color:#8994a2}.state-half{color:var(--orange)}.state-done{color:var(--green)}.progress-untouched{background:#697584}.progress-half{background:var(--orange)}.progress-done{background:var(--green)}.progress i{display:block;height:100%;border-radius:inherit}.screen-detail{padding:13px;border-top:1px solid var(--line)}.detail-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;color:var(--muted);font-size:12px}.mini-asset-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.mini-asset{position:relative;min-width:0;padding:0;overflow:hidden;background:#fff;border:1px solid #dfe3eb;border-radius:6px}.mini-asset .badge{position:absolute;left:4px;bottom:4px}.asset-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.asset-tile{position:relative;min-width:0;padding:7px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:7px}.asset-tile:hover,.asset-tile.selected{border-color:#4b84ba;transform:translateY(-1px)}.asset-tile-meta{display:flex;align-items:center;gap:6px;margin:7px 0 5px;color:var(--muted);font-size:10px}.asset-tile code{display:block;overflow:hidden;color:#9baabd;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.thumb{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1;overflow:hidden;color:#788596;font-size:12px;border-radius:4px}.checkerboard{background-color:#eef0f4;background-image:linear-gradient(45deg,#eef0f4 25%,transparent 25%),linear-gradient(-45deg,#eef0f4 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eef0f4 75%),linear-gradient(-45deg,transparent 75%,#eef0f4 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.thumb img{width:100%;height:100%;object-fit:contain}.changed-dot{position:absolute;top:7px;right:7px;width:9px;height:9px;background:var(--green);border:2px solid #ffffff;border-radius:50%;box-shadow:0 0 8px #4fd18bb3}.badge{display:inline-flex;align-items:center;max-width:100%;padding:2px 6px;color:#a9b8c8;font-size:9px;line-height:1.35;background:#dfe3eb;border-radius:20px}.badge-chrome{color:#a9d4ff;background:#e3ecfd}.badge-carrier{color:#d2b7ff;background:#ece3fd}.badge-text{color:#ffd39a;background:#fdf3e3}.badge-content{color:#a7e8c5;background:#e3fdf0}.sentinel{min-height:30px;color:var(--muted);font-size:12px;text-align:center}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:39;background:#00000073}.asset-drawer{position:fixed;top:0;right:0;z-index:40;width:min(540px,48vw);height:100vh;overflow:auto;background:#fff;border-left:1px solid #dfe3eb;box-shadow:-20px 0 60px #0006;transform:translate(102%);transition:transform .2s ease}.asset-drawer.open{transform:translate(0)}.drawer-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fffffff5;border-bottom:1px solid var(--line)}.drawer-header h2{margin:0;font-size:16px}.drawer-content{display:grid;gap:18px;padding:18px}.large-thumb{max-height:360px;aspect-ratio:4/3}.path-block{padding:9px;color:#a8bad0;background:#f4f5f7;border-radius:5px}.definition-grid{display:grid;grid-template-columns:minmax(100px,1fr) minmax(80px,1fr);gap:1px;overflow:hidden;background:#dfe3eb;border:1px solid #dfe3eb;border-radius:6px}.definition-grid>span,.definition-grid>strong{padding:8px 9px;background:#f4f5f7}.definition-grid>span{color:var(--muted);font-size:12px}.definition-grid>strong{font-size:12px;font-weight:650}.field-stack{display:grid;gap:6px}.field-stack>span{color:#aab8c7;font-size:12px}.drawer-content section h3,.spec-editor h3,.preview-panel h3{margin:0 0 10px;color:#b9c8d8;font-size:13px}.dominant-list{display:grid;gap:7px}.dominant-list div{display:grid;grid-template-columns:34px 1fr 55px;align-items:center;gap:9px;font-size:12px}.dominant-list i{width:34px;height:24px;border:1px solid #536174;border-radius:4px}.link-list button{padding:7px;color:#86c6ff;text-align:left;background:#eef4ff;border:0;border-radius:4px}.spec-layout{display:grid;grid-template-columns:minmax(680px,1.5fr) minmax(360px,.8fr);gap:16px;align-items:start}.spec-editor{display:grid;gap:14px}.palette-table{display:grid;gap:5px}.palette-row{display:grid;grid-template-columns:1.2fr repeat(6,minmax(70px,1fr));gap:5px;align-items:center}.palette-row input{width:100%;min-width:0}.palette-head{color:var(--muted);font-size:10px;text-align:center}.rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rule-grid label{display:grid;grid-template-columns:1fr 110px;align-items:center;gap:8px;padding:7px 9px;background:#fff;border-radius:5px}.rule-grid span{color:#a9b8c8;font-size:11px}.checkbox-row{display:flex;flex-wrap:wrap;gap:12px}.checkbox-row label{display:flex;align-items:center;gap:5px;color:#adbbca;font-size:12px}.checkbox-row input{min-height:0}.preview-panel{position:sticky;top:138px}.preview-metrics{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:18px}.preview-metrics div{padding:13px;background:#fff;border:1px solid var(--line);border-radius:7px}.preview-metrics span{display:block;color:var(--muted);font-size:11px}.preview-metrics strong{display:block;margin-top:5px;font-size:25px}.preview-samples{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.preview-samples code{display:block;overflow:hidden;margin-top:4px;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.gate-header{display:flex;align-items:center;justify-content:space-between}.gate-header p{margin:5px 0 0;color:var(--muted);font-size:12px}.critical-banner{padding:13px;color:var(--text-primary);font-size:16px;font-weight:800;text-align:center;background:#a92e43;border:1px solid #ff667d;border-radius:7px}.gate-screen-list{display:grid;gap:7px}.gate-screen{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:7px}.gate-screen-summary{display:grid;grid-template-columns:minmax(230px,1.8fr) repeat(3,minmax(130px,.8fr)) 70px;align-items:center;gap:12px;width:100%;padding:11px 13px;color:#b7c5d4;text-align:left;background:transparent;border:0}.gate-screen-summary>span:first-child{display:grid;gap:3px}.gate-screen-summary small{color:var(--muted)}.gate-screen-summary b{color:var(--red);text-align:right}.violation-list{display:grid;gap:8px;padding:11px;border-top:1px solid var(--line)}.violation-item{display:grid;grid-template-columns:82px 1fr;gap:11px;padding:9px;background:#f8f9fb;border-radius:6px}.violation-thumb{width:82px;height:82px}.violation-item p{margin:6px 0 0;color:#b8c3d0;font-size:12px}.violation-item p strong{color:#ff8b9b}.error-bar,.success-bar,.notice-bar{padding:10px 12px;border-radius:6px;font-size:13px}.error-bar{color:#ffc2ca;background:#8e1e3180;border:1px solid #9e3d4e}.success-bar{color:#a8f1cb;background:#1f6b4959;border:1px solid #347858}.notice-bar{color:#f7cf92;background:#754c1559;border:1px solid #805e2c}.loading-block,.empty-block,.root-state{display:grid;min-height:120px;place-items:center;color:var(--muted)}.root-state{min-height:100vh;padding:30px}@media (max-width: 1320px){.asset-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.topbar{gap:12px}.topbar nav a{padding:0 9px}}.brand-button{padding:0;color:inherit;text-align:left;background:transparent;border:0;cursor:pointer}.platform-topbar{align-items:stretch}.platform-topbar>.brand,.platform-topbar>.context-selectors{align-self:center}.platform-topbar nav{gap:8px}.nav-group{display:flex;align-items:stretch;position:relative;padding-top:13px;border-left:1px solid rgba(39,52,68,.7)}.nav-group:first-child{border-left:0}.nav-group>small{position:absolute;top:4px;left:14px;color:#617286;font-size:9px;letter-spacing:.12em}.nav-group a{padding-top:7px!important}.login-page{display:grid;min-height:100vh;place-items:center}.login-card{display:grid;gap:18px;width:390px;padding:28px;background:linear-gradient(180deg,#fff,#fff);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 70px #00000059}.login-card label,.modal-card label{display:grid;gap:7px;color:#9dacbf;font-size:12px}.login-card input{min-height:44px}.login-brand{margin-bottom:6px}.home-shell{min-height:100vh}.home-header{display:flex;align-items:center;justify-content:space-between;padding:18px max(28px,calc((100vw - 1480px)/2));border-bottom:1px solid var(--line);background:#fffffff5}.home-content{max-width:1480px;margin:0 auto;padding:40px 28px}.home-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.home-title h1{margin:0;font-size:30px}.home-title p{margin:7px 0 0;color:var(--muted)}.home-title>strong{color:#8a8f9c;font-size:64px;line-height:.8}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.project-card{overflow:hidden;padding:0;color:inherit;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:12px;transition:transform .16s,border-color .16s}.project-card:hover{transform:translateY(-3px);border-color:#4776a4}.project-cover{display:grid;height:170px;overflow:hidden;place-items:center;color:#111827d1;font-size:58px;font-weight:800;background:linear-gradient(135deg,#e3ecfd,#1c7569)}.project-cover img{width:100%;height:100%;object-fit:cover}.project-card-body{display:grid;gap:12px;padding:16px}.project-card-body>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.project-card h2{overflow:hidden;margin:0;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.project-card code{color:var(--muted);font-size:11px}.project-card footer{display:flex;gap:20px;padding-top:12px;color:var(--muted);font-size:12px;border-top:1px solid var(--line)}.project-card footer strong{color:var(--text)}.modal-backdrop,.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:30px;background:#02060ad1;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.modal-card{display:grid;gap:14px;width:520px;padding:22px;background:#fff;border:1px solid #dfe3eb;border-radius:12px;box-shadow:0 28px 80px #0008}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:6px}.capture-layout{display:grid;grid-template-columns:320px 1fr;gap:16px;min-height:calc(100vh - 128px)}.capture-sidebar{align-self:start}.capture-list{display:grid;gap:7px}.capture-list>button{display:grid;gap:8px;width:100%;padding:12px;color:inherit;text-align:left;background:#f4f5f7;border:1px solid transparent;border-radius:7px}.capture-list>button:hover,.capture-list>button.active{background:#eef4ff;border-color:#a9c9ff}.capture-list>button>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.capture-list strong{overflow:hidden;font-size:12px;text-overflow:ellipsis}.capture-list span{color:var(--muted);font-size:11px}.capture-workspace{min-width:0}.capture-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.capture-toolbar h1{font-size:18px}.capture-toolbar p{margin:6px 0 0;color:var(--muted);font-size:12px}.capture-toolbar>div:last-child{display:flex;align-items:center;gap:8px}.shot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.shot-card{overflow:hidden;background:#f4f5f7;border:1px solid var(--line);border-radius:8px}.shot-preview{display:grid;width:100%;height:210px;padding:0;place-items:center;background:#eef0f4;border:0}.shot-preview img{width:100%;height:100%;object-fit:contain}.shot-meta{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:5px;padding:9px}.shot-meta>span{color:var(--muted);font-size:10px}.primary-star,.shot-name{padding:0;color:var(--muted);text-align:left;background:transparent;border:0}.primary-star{font-size:19px}.primary-star.active{color:#ffd45d}.shot-name{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.lightbox{grid-template-rows:1fr auto}.lightbox img{max-width:92vw;max-height:84vh;object-fit:contain;box-shadow:0 20px 80px #000}.lightbox>button{position:absolute;top:18px;right:22px;color:var(--text-primary)}.lightbox>strong{margin-top:12px}@media (max-width: 1380px){.project-grid,.shot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.platform-topbar{gap:10px}.platform-topbar .topbar nav a{padding-left:8px;padding-right:8px}}.chat-page{display:grid;gap:14px}.worldview-card{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:18px;padding:14px 18px;background:linear-gradient(110deg,#eef4ff,#e8f7ef);border:1px solid #dfe3eb;border-radius:10px}.worldview-card small{color:#8fa5ba}.worldview-card h2{margin:4px 0 0;font-size:17px}.palette-row{display:flex;gap:6px}.palette-row i{width:26px;height:26px;border:2px solid #ffffff25;border-radius:50%;box-shadow:0 2px 10px #0007}.chat-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;height:calc(100vh - 166px);min-height:620px}.chat-sidebar{padding:12px;overflow:hidden}.chat-list{display:grid;gap:5px;overflow-y:auto}.chat-list>div{display:grid;grid-template-columns:minmax(0,1fr) 26px;align-items:center;border:1px solid transparent;border-radius:7px}.chat-list>div.active{background:#eef4ff;border-color:#37658f}.chat-list button{min-width:0;padding:9px;color:inherit;text-align:left;background:transparent;border:0}.chat-list button:first-child{display:grid;gap:4px}.chat-list strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.chat-list small{color:var(--muted);font-size:10px}.chat-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:0;overflow:hidden}.visual-context-bar{display:grid;gap:8px;padding:11px 13px;background:#fff;border-bottom:1px solid var(--line)}.visual-context-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.visual-context-heading>div{display:grid;gap:2px}.visual-context-heading strong{color:#d5e9fb;font-size:12px}.visual-context-heading small{color:var(--muted);font-size:10px}.visual-context-thumbs{display:flex;align-items:center;gap:7px;min-height:48px;overflow-x:auto}.visual-context-thumbs>span{color:var(--muted);font-size:11px}.visual-context-thumbs figure{position:relative;flex:0 0 62px;width:62px;height:48px;margin:0;overflow:hidden;background:#f4f5f7;border:1px solid #dfe3eb;border-radius:6px}.visual-context-thumbs img{width:100%;height:100%;object-fit:cover}.visual-context-thumbs button{position:absolute;top:2px;right:2px;width:19px;height:19px;padding:0;color:var(--text-primary);background:#7c3440dd;border:0;border-radius:50%;line-height:18px}.message-stream{display:flex;flex-direction:column;gap:14px;padding:22px;overflow-y:auto}.message-bubble{max-width:min(78%,840px);padding:12px 15px;border:1px solid var(--line);border-radius:12px}.message-bubble.user{align-self:flex-end;color:#1a1a1a;background:#a9d4ff;border-color:#c6e2ff;border-bottom-right-radius:3px}.message-bubble.assistant{align-self:flex-start;background:#fff;border-color:#dfe3eb;border-bottom-left-radius:3px}.message-bubble>small{display:block;margin-bottom:7px;opacity:.64;font-size:10px}.message-bubble p{margin:0;line-height:1.68;white-space:pre-wrap}.message-attachments{display:flex;gap:7px;margin-bottom:9px}.message-attachments img{width:86px;height:86px;object-fit:cover;background:#f4f5f7;border-radius:6px}.typing-caret{display:inline-block;width:7px;height:15px;margin-left:3px;vertical-align:-2px;background:var(--blue);animation:blink .8s steps(1) infinite}@keyframes blink{50%{opacity:0}}.chat-composer{position:relative;display:grid;gap:8px;padding:12px;background:#fff;border-top:1px solid var(--line)}.chat-composer>div:last-child{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:end;gap:8px}.upload-button{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.upload-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.chat-composer textarea{resize:none}.selected-shots{display:flex;flex-wrap:wrap;gap:6px}.selected-shots span{padding:5px 7px;color:#bcd9f5;font-size:11px;background:#eef4ff;border-radius:5px}.selected-shots button{padding:0 0 0 6px;color:inherit;background:none;border:0}.shot-picker{position:absolute;right:12px;bottom:calc(100% + 8px);left:12px;z-index:5;padding:12px;background:#fff;border:1px solid #dfe3eb;border-radius:9px;box-shadow:0 18px 50px #0009}.shot-picker header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.shot-picker header>div{display:flex;align-items:center;gap:8px}.shot-picker header>div:first-child{display:grid;gap:3px}.shot-picker header span,.shot-picker footer span{color:var(--muted);font-size:10px}.shot-picker select{min-width:250px;max-width:420px}.shot-picker-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;max-height:360px;overflow-y:auto}.shot-picker-grid button{display:grid;gap:4px;min-width:0;padding:5px;color:inherit;text-align:left;background:#f4f5f7;border:2px solid transparent;border-radius:6px}.shot-picker-grid button.selected{border-color:var(--blue);box-shadow:0 0 0 1px #75c7ff33}.shot-picker-grid img{width:100%;height:100px;object-fit:contain;background:#eef0f4}.shot-picker-grid span{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.shot-picker footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid #dfe3eb}.worldview-form{width:720px;max-height:90vh;overflow-y:auto}.design-doc-toolbar{display:flex;align-items:end;gap:10px;padding:14px}.design-doc-toolbar>div:first-child{flex:1}.design-doc-toolbar h1{margin:0;font-size:20px}.design-doc-toolbar p{margin:5px 0 0;color:var(--muted);font-size:11px}.design-doc-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:10px}.design-doc-workspace{display:grid;min-height:calc(100vh - 190px)}.design-doc-workspace.editing{grid-template-columns:1fr 1fr;gap:14px}.design-doc-editor{min-height:calc(100vh - 190px);padding:22px;resize:none;background:#f4f5f7;border:1px solid #dfe3eb;border-radius:9px;font-family:SFMono-Regular,Consolas,monospace;line-height:1.65}.markdown-body{padding:28px 34px;overflow:auto;line-height:1.75}.markdown-body h1{margin:1.4em 0 .5em;padding-bottom:.35em;color:#dcecff;font-size:25px;border-bottom:1px solid #dfe3eb}.markdown-body h1:first-child{margin-top:0}.markdown-body h2{color:#b9d9fb}.markdown-body code{padding:2px 5px;background:#f4f5f7;border-radius:4px}.markdown-body blockquote{margin-left:0;padding-left:14px;color:#9fb0c4;border-left:3px solid #3e6f9d}.task-status{display:grid;grid-template-columns:1fr auto;gap:7px 14px;padding:9px 13px;color:var(--muted);font-size:11px;background:#f4f5f7;border:1px solid var(--line);border-radius:7px}.task-status>div{grid-column:1 / -1;height:4px;overflow:hidden;background:#f4f5f7;border-radius:3px}.task-status i{display:block;height:100%;background:var(--blue);transition:width .2s}.task-done strong{color:var(--green)}.task-failed strong,.task-interrupted strong{color:var(--red)}.account-controls{display:flex;align-self:center;align-items:center;gap:7px;flex:0 0 auto}.account-name,.account-logout{min-height:30px;padding:5px 9px;color:#a9bdd2;font-size:11px;background:#fff;border:1px solid #dfe3eb;border-radius:6px}.account-name:not(:disabled):hover{color:#dbeeff;border-color:#4779a8}.account-name:disabled{cursor:default;opacity:.72}.account-logout{color:#f1a9b3;background:transparent;border-color:transparent}.account-logout:hover{background:#ff657a14;border-color:#ff657a4d}.home-header-actions{display:flex;align-items:center;gap:10px}.password-modal{width:430px}.rendering-comparison{display:grid;grid-template-columns:minmax(150px,.32fr) minmax(0,1fr);gap:14px;align-items:start}.source-shot{height:240px;border:1px solid #dfe3eb;border-radius:8px}.rendering-roots{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;align-items:start}.rendering-pending,.rendering-empty{display:grid;min-height:180px;place-items:center;background:#f4f5f7;border:1px dashed #41627d;border-radius:8px}.version-node{min-width:0}.version-children{display:grid;gap:10px;margin:10px 0 0 14px;padding-left:12px;border-left:2px solid #dfe3eb}.rendering-card{overflow:hidden;background:#f4f5f7;border:1px solid #dfe3eb;border-radius:8px}.rendering-card.approved{border-color:#49b982;box-shadow:0 0 0 1px #49b98222}.rendering-preview{display:block;width:100%;padding:0;background:transparent;border:0}.rendering-preview img{display:block;width:100%;aspect-ratio:9 / 16;object-fit:contain;background:#eef0f4}.rendering-preview-state{display:grid;width:100%;min-height:220px;place-content:center;justify-items:center;gap:var(--space-3);color:var(--text-tertiary);background:linear-gradient(110deg,var(--bg-canvas) 25%,var(--bg-surface-raised) 45%,var(--bg-canvas) 65%);background-size:220% 100%;animation:rendering-skeleton 1.8s ease-in-out infinite}.rendering-preview-state.failed{color:var(--danger);background:var(--danger-subtle);animation:none}.rendering-preview-state.failed .secondary-button{color:var(--danger);border-color:currentColor}.rendering-card.failed{border-color:color-mix(in srgb,var(--danger) 55%,var(--border-default))}.rendering-status-failed{color:var(--danger)!important}.rendering-meta{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:7px;padding:7px 8px}.rendering-meta .muted{overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.feedback-summary{margin:0 8px 7px;overflow:hidden;color:#b7c8d9;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.rendering-card-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:var(--space-2);margin:0 var(--space-2) var(--space-2)}.rendering-card-actions .feedback-toggle{width:100%;margin:0}.rendering-cut-cta{display:grid;min-height:var(--control-compact);place-items:center;text-decoration:none}.feedback-panel{display:grid;gap:7px;padding:9px;background:#fff;border-top:1px solid #dfe3eb}.feedback-panel textarea{resize:vertical}.feedback-panel label{display:flex;align-items:center;gap:6px;color:#b7c8d9;font-size:11px}.worldview-references{padding:10px;border:1px solid #dfe3eb;border-radius:7px}.worldview-references legend{padding:0 6px;color:#9fb4c8;font-size:12px}.worldview-references>div{display:flex;flex-wrap:wrap;gap:9px}.worldview-references figure{position:relative;width:92px;height:92px;margin:0;overflow:hidden;background:#eef0f4;border:1px solid #dfe3eb;border-radius:7px}.worldview-references img{width:100%;height:100%;object-fit:cover}.worldview-references figure button{position:absolute;top:3px;right:3px;width:23px;height:23px;color:var(--text-primary);background:#8f3544dd;border:0;border-radius:50%}.reference-upload{position:relative;display:grid;width:92px;height:92px;place-items:center;color:#9dc9ef;font-size:11px;text-align:center;border:1px dashed #47759d;border-radius:7px;cursor:pointer}.reference-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}@media (max-width: 820px){.rendering-comparison{grid-template-columns:1fr}.source-shot{height:180px}}html{color-scheme:dark}body{color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-body);background:var(--bg-canvas)}::selection{color:var(--text-primary);background:var(--accent-subtle)}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font-family:var(--font-sans)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn,.primary-button,.secondary-button,.icon-button{display:inline-flex;min-height:var(--control-default);align-items:center;justify-content:center;gap:var(--space-2);padding:0 var(--space-3);color:var(--text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-body);white-space:nowrap;background:transparent;border:1px solid transparent;border-radius:var(--radius-control);transition:color .12s ease,background-color .12s ease,border-color .12s ease,transform .12s ease}.btn-primary,.primary-button{color:var(--text-on-accent);font-weight:var(--font-weight-semibold);background:var(--accent-primary)}.btn-primary:hover:not(:disabled),.primary-button:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:active:not(:disabled),.primary-button:active:not(:disabled){background:var(--accent-pressed);transform:translateY(1px)}.btn-secondary,.secondary-button{color:var(--text-secondary);background:var(--bg-surface-raised);border-color:var(--border-default)}.btn-secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-surface-hover);border-color:var(--border-strong)}.btn-secondary:active:not(:disabled),.secondary-button:active:not(:disabled){background:var(--bg-surface-selected);transform:translateY(1px)}.btn-danger{color:var(--danger);background:var(--danger-subtle);border-color:transparent}.btn-danger:hover:not(:disabled){color:var(--text-primary);background:var(--danger)}.btn-danger:active:not(:disabled){filter:brightness(.88);transform:translateY(1px)}.btn:disabled,.primary-button:disabled,.secondary-button:disabled,.icon-button:disabled{color:var(--text-disabled);cursor:not-allowed;opacity:.48;transform:none}.icon-button{width:var(--control-default);padding:0;color:var(--text-secondary)}.icon-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-surface-hover)}.icon-button:active:not(:disabled){background:var(--bg-surface-selected);transform:translateY(1px)}.card,.panel{color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.card:hover{background:var(--bg-surface-raised);border-color:var(--border-default)}.card:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-card)}.card:active{background:var(--bg-surface-selected);transform:translateY(1px)}.card[aria-disabled=true],.card.is-disabled{color:var(--text-disabled);pointer-events:none;opacity:.48}.input,.select,input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:var(--control-default);padding:calc(var(--space-2) - 1px) var(--space-3);color:var(--text-primary);background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-control);outline:none;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.input:hover:not(:disabled),.select:hover:not(:disabled),input:not([type=checkbox]):not([type=radio]):hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--border-strong)}.input:active:not(:disabled),.select:active:not(:disabled),input:not([type=checkbox]):not([type=radio]):active:not(:disabled),select:active:not(:disabled),textarea:active:not(:disabled){border-color:var(--accent-pressed)}.input:disabled,.select:disabled,input:disabled,select:disabled,textarea:disabled{color:var(--text-disabled);cursor:not-allowed;background:var(--bg-surface);border-color:var(--border-subtle);opacity:.64}.badge{display:inline-flex;min-height:var(--space-5);align-items:center;gap:var(--space-1);padding:0 var(--space-2);color:var(--text-secondary);font-size:var(--font-size-micro);font-weight:var(--font-weight-medium);line-height:var(--line-height-micro);white-space:nowrap;background:var(--bg-surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);transition:color .12s ease,background-color .12s ease,border-color .12s ease}.badge:hover{color:var(--text-primary);background:var(--bg-surface-hover);border-color:var(--border-default)}.badge:focus-visible{outline:none;box-shadow:var(--focus-ring)}.badge:active{background:var(--bg-surface-selected)}.badge[aria-disabled=true]{color:var(--text-disabled);opacity:.48}.tab{display:inline-flex;min-height:var(--control-default);align-items:center;padding:0 var(--space-3);color:var(--text-tertiary);font-size:var(--font-size-body);text-decoration:none;white-space:nowrap;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:var(--radius-control) var(--radius-control) 0 0;transition:color .12s ease,background-color .12s ease,border-color .12s ease}.tab:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.tab:focus-visible{outline:none;box-shadow:var(--focus-ring)}.tab:active{background:var(--bg-surface-selected)}.tab.active,.tab[aria-selected=true]{color:var(--accent-primary);background:var(--accent-subtle);border-bottom-color:var(--accent-primary)}.tab:disabled,.tab[aria-disabled=true]{color:var(--text-disabled);pointer-events:none;opacity:.48}.checkbox,input[type=checkbox],input[type=radio]{width:var(--space-4);height:var(--space-4);min-height:0;margin:0;accent-color:var(--accent-primary);cursor:pointer;border-radius:var(--radius-xs)}.checkbox:hover:not(:disabled),input[type=checkbox]:hover:not(:disabled),input[type=radio]:hover:not(:disabled){filter:brightness(1.15)}.checkbox:focus-visible,input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:none;box-shadow:var(--focus-ring)}.checkbox:active:not(:disabled),input[type=checkbox]:active:not(:disabled),input[type=radio]:active:not(:disabled){transform:scale(.94)}.checkbox:disabled,input[type=checkbox]:disabled,input[type=radio]:disabled{cursor:not-allowed;opacity:.42}.density-comfortable{padding:var(--space-5)}.density-standard{padding:var(--space-4)}.density-compact{padding:var(--space-3)}.btn:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.icon-button:focus-visible{outline:none;box-shadow:var(--focus-ring)}body{min-width:0}.topbar{height:var(--header-height);min-height:var(--header-height);gap:var(--space-4);padding:0 var(--space-5);color:var(--text-primary);background:#080d14f0;border-bottom-color:var(--border-subtle)}.platform-topbar{flex-wrap:nowrap}.brand{min-width:max-content;gap:var(--space-2)}.brand>i{width:var(--control-default);height:var(--control-default);border-radius:var(--radius-control)}.brand small{color:var(--text-tertiary);font-size:var(--font-size-micro);line-height:var(--line-height-micro)}.context-selectors{flex:0 1 auto;min-width:0;gap:var(--space-2)}.context-selectors label{height:var(--control-default);padding-left:var(--space-2);color:var(--text-tertiary);background:var(--bg-surface);border-color:var(--border-subtle);border-radius:var(--radius-control)}.context-selectors select{min-width:112px;max-width:176px;height:calc(var(--control-default) - 2px);min-height:0;padding:0 var(--space-2);background:transparent;border:0;box-shadow:none}.topbar nav{display:flex;min-width:0;height:100%;align-items:center;gap:var(--space-1);margin-left:auto;white-space:nowrap}.nav-group{display:flex;height:100%;align-items:center;gap:var(--space-1);padding-left:var(--space-2);border-left:1px solid var(--border-subtle)}.nav-group small{color:var(--text-disabled);font-size:var(--font-size-micro);line-height:var(--line-height-micro)}.topbar nav a,.nav-more summary{display:inline-flex;height:40px;align-items:center;gap:var(--space-1);padding:0 var(--space-3);color:var(--text-tertiary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-body);text-decoration:none;white-space:nowrap;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:var(--radius-control) var(--radius-control) 0 0}.topbar nav a:hover,.nav-more summary:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.topbar nav a:active,.nav-more summary:active{background:var(--bg-surface-selected)}.topbar nav a.active,.nav-more.active>summary{color:var(--accent-primary);background:var(--accent-subtle);border-bottom-color:var(--accent-primary)}.nav-more{position:relative;height:40px}.nav-more summary{list-style:none;cursor:pointer}.nav-more summary::-webkit-details-marker{display:none}.nav-more[open] summary{color:var(--text-primary);background:var(--bg-surface-hover)}.nav-more-menu{position:absolute;top:calc(100% + var(--space-2));right:0;display:grid;min-width:168px;padding:var(--space-2);background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-raised)}.nav-more-menu a{width:100%;border-bottom:0;border-radius:var(--radius-control)}.workspace{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:var(--space-5) var(--space-6) var(--space-7)}@media (max-width: 1320px){.brand small,.nav-group small,.context-selectors label>span{display:none}.context-selectors label{padding-left:0}.topbar{gap:var(--space-2);padding-inline:var(--space-4)}.topbar nav a,.nav-more summary{padding-inline:var(--space-2)}}@media (max-width: 1080px){.brand span{display:none}.context-selectors select{width:112px}.workspace{padding-inline:var(--space-4)}}h1,h2,h3,p{margin-top:0}h1{margin-bottom:var(--space-1);font-size:var(--font-size-page-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-page-title);letter-spacing:-.02em}h2{font-size:var(--font-size-section-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-section-title)}h3{font-size:var(--font-size-card-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-card-title)}.page-stack,.cuts-page,.cut-studio,.rendering-page{display:grid;gap:var(--space-4)}.panel{padding:var(--space-4)}.panel-heading{gap:var(--space-4);margin-bottom:var(--space-3)}.panel-heading h1,.panel-heading h2,.panel-heading h3{margin:0}.panel-heading span,.muted{color:var(--text-tertiary);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.toolbar{gap:var(--space-2);padding:var(--space-3) var(--space-4);background:transparent;border:0;border-bottom:1px solid var(--border-subtle);border-radius:0;box-shadow:none}.error-bar,.notice-bar,.success-bar{padding:var(--space-2) var(--space-3);border-radius:var(--radius-control)}.error-bar{color:var(--danger);background:var(--danger-subtle);border-color:color-mix(in srgb,var(--danger) 36%,transparent)}.notice-bar{color:var(--text-secondary);background:var(--bg-surface-raised);border-color:var(--border-default)}.notice-warning{color:var(--warning);background:var(--warning-subtle);border-color:color-mix(in srgb,var(--warning) 36%,transparent)}.notice-info{color:var(--info);background:var(--accent-subtle);border-color:color-mix(in srgb,var(--info) 36%,transparent)}.success-bar{color:var(--success);background:var(--success-subtle);border-color:color-mix(in srgb,var(--success) 36%,transparent)}.loading-block,.empty-block{min-height:160px;padding:var(--space-5);color:var(--text-tertiary);background:var(--bg-surface);border:1px dashed var(--border-default);border-radius:var(--radius-card)}.empty-block .empty-icon{display:grid;width:var(--space-6);height:var(--space-6);place-items:center;color:var(--text-secondary);font-size:var(--font-size-section-title);background:var(--bg-surface-raised);border-radius:var(--radius-control)}.empty-block strong{color:var(--text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium)}.empty-block small{max-width:44ch;color:var(--text-tertiary);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.modal-card,.drawer-content{background:var(--bg-surface-raised);border-color:var(--border-default);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal)}.modal-card label,.field-stack{gap:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-caption)}.home-shell{min-height:100vh;background:var(--bg-canvas)}.home-header{height:var(--header-height);padding:0 var(--space-6);background:#080d14f0;border-bottom-color:var(--border-subtle)}.home-content{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:var(--space-7) var(--space-6) var(--space-8)}.home-title h1{margin:0}.home-title p{margin:var(--space-1) 0 0;color:var(--text-tertiary)}.home-title>span{color:var(--text-tertiary);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.project-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-5)}.project-card{height:344px;overflow:hidden;color:var(--text-primary);text-align:left;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:transform .14s ease,border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.project-card:hover{background:var(--bg-surface-raised);border-color:color-mix(in srgb,var(--accent-primary) 30%,var(--border-default));box-shadow:var(--shadow-raised);transform:translateY(-2px)}.project-card:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-raised)}.project-card:active{background:var(--bg-surface-selected);transform:translateY(0)}.project-cover{height:216px;background:var(--bg-canvas);border-bottom:1px solid var(--border-subtle)}.project-cover span{color:var(--text-tertiary);font-size:var(--font-size-display);font-weight:var(--font-weight-semibold)}.project-card-body{height:128px;padding:var(--space-4) var(--space-5)}.project-card-body h2{font-size:var(--font-size-card-title);line-height:var(--line-height-card-title)}.project-card-body code,.project-card-body footer{color:var(--text-tertiary);font-size:var(--font-size-caption);font-variant-numeric:tabular-nums}.login-page{background:var(--bg-canvas)}.login-card{gap:var(--space-4);padding:var(--space-6);background:var(--bg-surface-raised);border-color:var(--border-default);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal)}.login-card label{gap:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-caption)}.login-card .primary-button{min-height:var(--control-comfortable)}.metric-card{min-height:128px;padding:var(--space-4);background:var(--bg-surface);border-color:var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.metric-card span{color:var(--text-tertiary);font-size:var(--font-size-caption)}.metric-card strong{margin-top:var(--space-2);color:var(--text-primary);font-size:var(--font-size-display);line-height:var(--line-height-display);font-variant-numeric:tabular-nums}.metric-card small{margin-top:var(--space-2);color:var(--text-tertiary)}.metric-card.danger{border-color:var(--border-subtle);border-left:3px solid var(--danger)}.metric-card.danger strong{color:var(--danger)}.distribution-row,.definition-grid{font-variant-numeric:tabular-nums}.distribution-track,.progress{height:var(--space-2);background:var(--bg-surface-hover);border-radius:var(--radius-pill)}.distribution-track i{background:var(--accent-primary)}.gate-header{align-items:center;background:transparent;border:0;border-bottom:1px solid var(--border-subtle);border-radius:0;box-shadow:none}.gate-header p{margin:var(--space-1) 0 0;color:var(--text-tertiary)}.gate-screen{background:transparent;border-color:var(--border-subtle);border-radius:0}.gate-screen-summary:hover{background:var(--bg-surface-hover)}.critical-banner{color:var(--danger);background:var(--danger-subtle);border-color:color-mix(in srgb,var(--danger) 36%,transparent);border-radius:var(--radius-control)}.screen-card{position:relative;min-height:152px;overflow:hidden;background:var(--bg-surface);border-color:var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.screen-card.risk-danger:before{position:absolute;inset:0 auto 0 0;width:3px;content:"";background:var(--danger)}.screen-card-main{min-height:152px;padding:var(--space-4)}.screen-card-main:hover{background:var(--bg-surface-hover)}.screen-counts,.coverage-meta{color:var(--text-tertiary);font-size:var(--font-size-caption);font-variant-numeric:tabular-nums}.progress-danger{background:var(--danger)!important}.progress-warning{background:var(--warning)!important}.progress-success{background:var(--success)!important}.state-danger{color:var(--danger)}.state-warning{color:var(--warning)}.state-success{color:var(--success)}.screen-detail{padding:var(--space-4);background:var(--bg-surface-raised);border-top-color:var(--border-subtle)}.asset-toolbar{position:sticky;top:calc(var(--header-height) + var(--space-1));z-index:10;background:var(--bg-canvas)}.asset-tile{background:var(--bg-surface);border-color:var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.asset-tile:hover{background:var(--bg-surface-raised);border-color:var(--border-default);transform:translateY(-2px)}.asset-tile.selected{background:var(--bg-surface-selected);border-color:var(--accent-primary);box-shadow:var(--focus-ring)}.asset-drawer{background:var(--bg-surface-raised);border-left-color:var(--border-default);box-shadow:var(--shadow-modal)}.spec-editor h3,.preview-panel h3{margin:var(--space-5) 0 var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border-subtle)}.palette-row,.rule-grid label,.checkbox-row label{gap:var(--space-2)}.palette-head{color:var(--text-tertiary);background:var(--bg-surface-raised)}.preview-panel{position:sticky;top:calc(var(--header-height) + var(--space-5))}.rendering-header{display:grid;gap:var(--space-3)}.rendering-header .panel-heading{margin-bottom:0}.rendering-actions,.rendering-actions label{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.rendering-actions label{color:var(--text-secondary);font-size:var(--font-size-caption)}.rendering-task{gap:var(--space-2);padding:var(--space-3);background:var(--bg-surface-raised);border-color:var(--border-subtle);border-radius:var(--radius-control)}.task-status-heading{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-caption);font-variant-numeric:tabular-nums}.task-failures{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);color:var(--warning);font-size:var(--font-size-micro)}.rendering-list{display:grid;gap:var(--space-3)}.rendering-shot-card{display:grid;gap:var(--space-3);padding:var(--space-4)}.rendering-shot-heading{display:flex;min-height:var(--control-comfortable);align-items:center;border-bottom:1px solid var(--border-subtle)}.rendering-shot-heading label{display:flex;min-width:0;align-items:center;gap:var(--space-2)}.rendering-shot-heading strong{overflow:hidden;font-size:var(--font-size-card-title);text-overflow:ellipsis;white-space:nowrap}.rendering-comparison{display:grid;grid-template-columns:minmax(220px,.42fr) minmax(0,1fr);gap:var(--space-3)}.rendering-column{position:relative;min-width:0}.rendering-column-label{display:inline-flex;height:var(--space-5);align-items:center;color:var(--text-tertiary);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.rendering-result-head{display:flex;height:var(--control-compact);align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.rendering-result-head .secondary-button{min-height:var(--control-compact)}.source-shot{width:100%;height:220px;background:var(--bg-canvas);border-color:var(--border-subtle);border-radius:var(--radius-control)}.rendering-roots{min-height:220px;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:var(--space-2)}.rendering-card{background:var(--bg-canvas);border-color:var(--border-subtle);border-radius:var(--radius-control)}.rendering-card:hover{border-color:var(--border-default)}.rendering-card.approved{border-color:var(--success);box-shadow:0 0 0 1px var(--success-subtle)}.rendering-preview img{height:148px;aspect-ratio:auto;object-fit:contain}.rendering-meta{gap:var(--space-1);padding:var(--space-1) var(--space-2);font-variant-numeric:tabular-nums}.approve-button{color:var(--text-tertiary);font-size:var(--font-size-card-title)}.approve-button.approved{color:var(--success)}.feedback-panel{gap:var(--space-2);padding:var(--space-2);background:var(--bg-surface-raised);border-top-color:var(--border-subtle)}.rendering-pending,.rendering-result>.rendering-roots>.empty-block{min-height:220px;background:var(--bg-surface);border:1px dashed var(--border-default);border-radius:var(--radius-control)}.rendering-spinner{display:inline-block;width:var(--space-5);height:var(--space-5);border:2px solid var(--border-strong);border-top-color:var(--accent-primary);border-radius:var(--radius-pill);animation:rendering-spin 1s linear infinite}@keyframes rendering-skeleton{0%,to{background-position:100% 0}50%{background-position:0 0}}.version-children{gap:var(--space-2);margin:var(--space-2) 0 0 var(--space-3);padding-left:var(--space-3);border-left-color:var(--border-default)}.cuts-panel,.cut-studio-toolbar{padding:var(--space-4)}.cut-job-list,.cut-source-list{display:grid;gap:var(--space-2)}.cut-job-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);padding:var(--space-2);color:var(--text-primary);text-align:left;background:transparent;border:0;border-bottom:1px solid var(--border-subtle);border-radius:var(--radius-control)}.cut-job-row:hover{background:var(--bg-surface-hover)}.cut-job-row:active{background:var(--bg-surface-selected)}.cut-job-row:focus-visible{outline:none;box-shadow:var(--focus-ring)}.cut-job-thumb{width:72px;height:var(--header-height);overflow:hidden;background:var(--bg-canvas);border-radius:var(--radius-sm)}.cut-job-thumb img,.cut-source-option img{width:100%;height:100%;object-fit:contain}.cut-job-copy{min-width:0}.cut-job-copy strong,.cut-job-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cut-source-list{max-height:416px;overflow:auto}.cut-source-group{display:grid;gap:var(--space-2)}.cut-source-group+.cut-source-group{padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.cut-source-group>strong{color:var(--text-secondary);font-size:var(--font-size-caption)}.cut-source-group>.empty-block{min-height:150px;padding:var(--space-4);border:1px dashed var(--border-default);border-radius:var(--radius-control)}.cut-source-option{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-control);cursor:pointer}.cut-source-option:hover{background:var(--bg-surface-hover);border-color:var(--border-default)}.cut-source-option.selected{background:var(--bg-surface-selected);border-color:var(--accent-primary)}.cut-source-option img{height:56px;background:var(--bg-canvas);border-radius:var(--radius-xs)}.cut-source-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cut-studio-toolbar{display:grid;gap:var(--space-2)}.cut-studio-heading{margin-bottom:0}.cut-studio-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.cut-studio-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,var(--inspector-width));align-items:start;gap:var(--space-3)}.cut-canvas-panel{min-width:0;padding:var(--space-3)}.cut-history-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}@media (max-width: 900px){.home-content,.home-header{padding-inline:var(--space-4)}.two-column,.spec-layout,.rendering-comparison,.cut-studio-layout{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}.preview-panel{position:static}.cut-job-row{grid-template-columns:var(--header-height) minmax(0,1fr) auto}.cut-job-row>.muted:last-child{display:none}}.badge-done,.badge-success{color:var(--success);background:var(--success-subtle);border-color:transparent}.badge-half,.badge-warning{color:var(--warning);background:var(--warning-subtle);border-color:transparent}.badge-text,.badge-danger{color:var(--danger);background:var(--danger-subtle);border-color:transparent}.badge-chrome,.badge-info{color:var(--info);background:var(--accent-subtle);border-color:transparent}.btn:hover:not(:disabled){border-color:var(--border-strong)}.btn:active:not(:disabled){transform:translateY(1px)}.desktop-nav-shell,.chat-session-drawer,.capture-list-drawer,.cut-node-drawer{display:contents}.mobile-nav,.chat-session-drawer>summary,.capture-list-drawer>summary,.cut-node-drawer>summary,.cut-mobile-notice{display:none}.desktop-nav-shell>nav{display:flex;min-width:0;height:100%;align-items:center;gap:var(--space-1);margin-left:auto;white-space:nowrap}.desktop-nav-shell>.context-selectors{align-self:center}@media (min-width: 641px){.chat-session-drawer:not([open])>.chat-sidebar,.capture-list-drawer:not([open])>.capture-sidebar,.cut-node-drawer:not([open])>.panel{display:block}}@media (min-width: 641px) and (max-width: 1024px){.topbar{gap:var(--space-2);padding-inline:var(--space-3)}.platform-topbar>.brand span{display:none}.desktop-nav-shell{display:flex;min-width:0;flex:1;align-items:center;gap:var(--space-2)}.desktop-nav-shell>nav{overflow-x:auto;scrollbar-width:none}.desktop-nav-shell>nav::-webkit-scrollbar{display:none}.context-selectors select{min-width:96px;max-width:128px}.topbar nav a,.nav-more summary{padding-inline:var(--space-2);font-size:var(--font-size-caption)}.nav-group small{display:none}.nav-group{padding-left:var(--space-1)}.workspace{max-width:var(--content-max-width);padding:var(--space-4)}.project-grid,.screen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.screen-card.is-open{grid-column:span 2}.asset-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.shot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-layout{grid-template-columns:220px minmax(0,1fr)}.capture-layout{grid-template-columns:260px minmax(0,1fr)}.toolbar>input,.toolbar>select{min-height:var(--control-comfortable)}}@media (max-width: 640px),(max-device-width: 640px){html,body,#root{width:100%;max-width:100%}body{overflow-x:hidden}.topbar{height:var(--header-height);min-height:var(--header-height);gap:var(--space-2);padding:0 var(--space-3)}.platform-topbar{position:sticky;align-items:center}.platform-topbar>.brand{min-width:36px}.platform-topbar>.brand span{display:none}.desktop-nav-shell{display:none}.mobile-nav{position:relative;display:block;order:2}.mobile-nav>summary{display:grid;width:var(--control-comfortable);height:var(--control-comfortable);place-items:center;color:var(--text-primary);font-size:22px;list-style:none;background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-control);cursor:pointer}.mobile-nav>summary::-webkit-details-marker{display:none}.mobile-nav[open]>summary{color:var(--accent-primary);border-color:var(--accent-primary)}.mobile-nav-drawer{position:fixed;top:var(--header-height);right:var(--space-3);left:var(--space-3);z-index:50;display:grid;gap:var(--space-3);max-height:calc(100vh - var(--header-height) - var(--space-3));padding:var(--space-3);overflow-y:auto;background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:0 0 var(--radius-card) var(--radius-card);box-shadow:var(--shadow-modal)}.mobile-nav-drawer .context-selectors{display:grid;width:100%}.mobile-nav-drawer .context-selectors label{width:100%;height:calc(var(--control-comfortable) + 2px)}.mobile-nav-drawer .context-selectors select{min-width:0;max-width:none;height:var(--control-comfortable);flex:1}.mobile-nav-drawer nav{display:grid;width:100%;height:auto;margin:0;overflow:visible}.mobile-nav-drawer .nav-group{display:grid;height:auto;grid-template-columns:1fr 1fr;gap:var(--space-2);padding:var(--space-5) 0 0;border:0}.mobile-nav-drawer .nav-group>small{top:var(--space-1);left:0;display:block}.mobile-nav-drawer nav a{min-height:var(--control-comfortable);justify-content:flex-start;padding:0 var(--space-3)!important;border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.platform-topbar>.account-controls{order:3;margin-left:auto;gap:var(--space-1)}.account-name,.account-logout{min-height:var(--control-comfortable);padding-inline:var(--space-2)}.workspace{width:100%;max-width:var(--content-max-width);padding:var(--space-4)}.page-stack,.chat-page,.cut-studio{min-width:0}.panel{min-width:0;padding:var(--space-3);border-radius:var(--radius-control)}.panel-heading{gap:var(--space-2)}.panel-heading>div{min-width:0}.primary-button,.secondary-button,.icon-button,.btn,.toolbar input,.toolbar select,.field-stack input,.field-stack select,.capture-toolbar button,.shot-meta select,.chat-list button,.design-doc-toolbar button,.design-doc-toolbar select{min-height:var(--control-comfortable)}button,select,input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea{min-height:var(--control-comfortable)}.icon-button{min-width:var(--control-comfortable);padding:var(--space-2)}.toolbar{position:static;align-items:stretch;padding:var(--space-2)}.toolbar>input,.toolbar>select{width:100%;min-width:min(100%,180px);flex:1 1 140px}.result-total{display:flex;min-height:var(--control-comfortable);align-items:center}.home-header{gap:var(--space-2);padding:var(--space-3) var(--space-4)}.home-header .brand{min-width:0}.home-header .brand small{display:none}.home-header-actions{gap:var(--space-1)}.home-header-actions .secondary-button{padding-inline:var(--space-2)}.home-content{padding:var(--space-5) var(--space-4)}.home-title{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.home-title h1{font-size:var(--font-size-page-title)}.home-title p{font-size:var(--font-size-caption)}.project-grid,.screen-grid,.asset-grid,.shot-grid{grid-template-columns:minmax(0,1fr)}.project-cover{height:148px}.project-card,.screen-card,.asset-tile,.shot-card{min-width:0}.screen-card.is-open{grid-column:auto}.screen-card-main{min-height:var(--control-comfortable);padding:var(--space-3)}.mini-asset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.asset-drawer{width:100vw;max-width:100%}.drawer-content{padding:var(--space-3)}.capture-layout,.chat-layout,.cut-studio-layout{display:grid;height:auto;min-height:0;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.capture-list-drawer,.chat-session-drawer,.cut-node-drawer{display:block;min-width:0}.mobile-nav:not([open])>.mobile-nav-drawer,.capture-list-drawer:not([open])>.capture-sidebar,.chat-session-drawer:not([open])>.chat-sidebar,.cut-node-drawer:not([open])>.panel{display:none}.capture-list-drawer>summary,.chat-session-drawer>summary,.cut-node-drawer>summary{display:grid;min-height:var(--control-comfortable);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:0 var(--space-3);list-style:none;background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-control);cursor:pointer}.capture-list-drawer>summary::-webkit-details-marker,.chat-session-drawer>summary::-webkit-details-marker,.cut-node-drawer>summary::-webkit-details-marker{display:none}.capture-list-drawer>summary span,.chat-session-drawer>summary span,.cut-node-drawer>summary span{color:var(--text-tertiary);font-size:var(--font-size-caption)}.capture-list-drawer>summary strong,.chat-session-drawer>summary strong,.cut-node-drawer>summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.capture-list-drawer>summary i,.chat-session-drawer>summary i,.cut-node-drawer>summary i{font-style:normal}.capture-list-drawer[open]>summary i,.chat-session-drawer[open]>summary i,.cut-node-drawer[open]>summary i{transform:rotate(180deg)}.capture-sidebar,.chat-sidebar,.cut-node-drawer>.panel{max-height:min(52vh,420px);margin-top:var(--space-2);overflow-y:auto}.capture-list>button{min-height:var(--control-comfortable)}.capture-workspace{width:100%}.capture-toolbar{align-items:stretch;flex-direction:column;gap:var(--space-3)}.capture-toolbar>div:last-child{flex-wrap:wrap;align-items:stretch}.capture-toolbar>div:last-child>button{flex:1 1 132px}.shot-meta{min-width:0}.shot-meta>*{min-width:0}.shot-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worldview-card{grid-template-columns:minmax(0,1fr);gap:var(--space-3);padding:var(--space-3)}.worldview-card .palette-row{min-width:0}.worldview-card>.secondary-button{width:100%}.chat-session-drawer{grid-row:1}.chat-main{min-height:calc(100dvh - 190px);grid-template-rows:auto minmax(240px,1fr) auto}.visual-context-heading{align-items:stretch;flex-direction:column}.visual-context-heading .secondary-button{width:100%}.visual-context-strip,.message-attachments{max-width:100%;overflow-x:auto}.visual-context-strip{display:flex;gap:var(--space-2);padding-bottom:var(--space-1)}.visual-context-strip img{flex:0 0 72px;width:72px;height:52px;object-fit:cover;border-radius:var(--radius-sm)}.messages{display:flex;min-width:0;min-height:240px;max-height:58vh;flex-direction:column;gap:var(--space-3);padding:var(--space-3);overflow-y:auto}.message{width:fit-content;max-width:92%;padding:var(--space-3);overflow-wrap:anywhere;background:var(--bg-surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}.message.user{align-self:flex-end;color:#1a1a1a;background:#a9d4ff;border-color:#c6e2ff}.message.assistant{align-self:flex-start}.message>small{display:block;margin-bottom:var(--space-2);opacity:.7}.message p{margin:0;line-height:1.68;white-space:pre-wrap}.message[style]{max-width:100%!important}.message-attachments{flex-wrap:nowrap}.message-attachments img{flex:0 0 76px;width:76px;height:76px}.chat-composer{position:sticky;bottom:0;z-index:4;padding:var(--space-2)}.composer-row,.chat-composer>div:last-child{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:var(--space-2)}.composer-row textarea,.chat-composer>div:last-child textarea{min-height:88px;grid-column:1 / -1;grid-row:1}.composer-row>.primary-button,.chat-composer>div:last-child>.primary-button{grid-column:3}.composer-row>button,.composer-row>label{min-width:0;padding-inline:var(--space-1);font-size:var(--font-size-caption)}.selected-shots{flex-wrap:nowrap;overflow-x:auto}.selected-shots span{flex:0 0 auto;min-height:var(--control-comfortable)}.shot-picker{right:var(--space-2);left:var(--space-2);max-height:70vh;overflow-y:auto}.shot-picker header{align-items:stretch;flex-direction:column}.shot-picker header>div:last-child{display:grid;grid-template-columns:minmax(0,1fr) auto}.shot-picker select{width:100%;min-width:0;max-width:none}.shot-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shot-picker-grid img{height:112px}.cut-studio-toolbar,.cuts-panel{padding:var(--space-3)}.cut-studio-heading{align-items:flex-start}.cut-studio-heading>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-2)}.cut-studio-heading h1[style],.cut-studio-heading span[style]{margin-left:0!important}.cut-studio-heading span[style]{grid-column:1 / -1}.cut-studio-actions>button{flex:1 1 92px}.cut-studio-actions>.muted{width:100%}.cut-mobile-notice{display:block;padding:var(--space-2) var(--space-3);color:var(--warning);font-size:var(--font-size-caption);text-align:center;background:var(--warning-subtle);border:1px solid rgba(245,165,36,.35);border-radius:var(--radius-control)}.cut-canvas-panel{width:100%;padding:var(--space-2);overflow:hidden}.cut-canvas-panel img{max-width:100%;height:auto}.cut-resize-handle{min-width:24px;min-height:24px}.cut-job-row{grid-template-columns:56px minmax(0,1fr) auto;min-height:var(--control-comfortable);gap:var(--space-2)}.cut-job-thumb{width:56px;height:56px}.cut-source-option{grid-template-columns:48px minmax(0,1fr) auto;min-height:var(--control-comfortable)}.rendering-shot-card{padding:var(--space-3)}.rendering-shot-heading,.rendering-shot-heading label{align-items:flex-start}.rendering-comparison,.rendering-roots{grid-template-columns:minmax(0,1fr)}.rendering-actions{align-items:stretch}.rendering-actions>*{flex:1 1 140px}.version-children{margin-left:var(--space-1);padding-left:var(--space-2)}.metric-grid{grid-template-columns:minmax(0,1fr)}.metric-card{min-height:96px}.two-column,.spec-layout{grid-template-columns:minmax(0,1fr)}.distribution-row{grid-template-columns:72px minmax(0,1fr) 40px;gap:var(--space-2)}.gate-header,.design-doc-toolbar{align-items:stretch;flex-direction:column}.gate-screen{overflow-x:auto}.gate-screen-summary{min-width:660px;min-height:var(--control-comfortable)}.violation-item,.spec-editor{min-width:0}.spec-editor .palette-table,.spec-editor .rule-grid{max-width:100%;overflow-x:auto}.spec-editor .palette-table .palette-row{min-width:720px}.checkbox-row{grid-template-columns:minmax(0,1fr)}.preview-panel{position:static}.design-doc-workspace.editing{grid-template-columns:minmax(0,1fr)}.design-doc-editor{min-height:44vh}.login-page{padding:var(--space-4)}.login-card{width:min(90vw,360px);padding:var(--space-5)}.modal-backdrop,.lightbox{padding:var(--space-3)}.modal-card,.password-modal,.worldview-form{width:min(100%,520px);max-height:calc(100vh - var(--space-5));overflow-y:auto}.form-row{grid-template-columns:minmax(0,1fr)}.lightbox img{max-width:100%;max-height:calc(100vh - 100px)}}.chat-page{display:flex;height:calc(100dvh - var(--header-height) - var(--space-5) - var(--space-7));min-height:0;flex-direction:column;gap:var(--space-3);overflow:hidden}.chat-page>.error-bar,.chat-page>.worldview-card{flex:0 0 auto}.worldview-card{min-height:58px;padding-block:var(--space-2)}.chat-layout{display:grid;height:auto;min-height:0;flex:1 1 auto;grid-template-columns:260px minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden}.chat-sidebar{display:flex;height:100%;min-height:0;flex-direction:column}.chat-sidebar .panel-heading{flex:0 0 auto}.chat-list{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}.chat-main{height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.visual-context-bar{min-height:0;flex:0 0 auto}.visual-context-strip{display:flex;max-width:100%;gap:var(--space-2);overflow-x:auto;overscroll-behavior-inline:contain}.visual-context-strip img{flex:0 0 72px;width:72px;height:52px;object-fit:cover;border-radius:var(--radius-sm)}.messages{display:flex;width:100%;min-width:0;min-height:0;max-height:none;flex-direction:column;gap:var(--space-3);padding:var(--space-4);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.message-stream-end{flex:0 0 1px}.message{width:fit-content;max-width:min(760px,82%);padding:var(--space-3) var(--space-4);overflow-wrap:anywhere;background:var(--bg-surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}.message.user{align-self:flex-end;color:#1a1a1a;background:#a9d4ff;border-color:#c6e2ff;border-bottom-right-radius:var(--radius-xs)}.message.assistant{align-self:flex-start;color:var(--text-primary);background:var(--bg-surface-raised);border-bottom-left-radius:var(--radius-xs)}.message>small{display:block;margin-bottom:var(--space-2);color:currentColor;opacity:.64;font-size:var(--font-size-micro)}.message-plain{margin:0;line-height:1.6;white-space:pre-wrap}.message-attachments{display:flex;max-width:min(100%,520px);flex-wrap:nowrap;gap:var(--space-2);margin-bottom:var(--space-2);padding-bottom:var(--space-1);overflow-x:auto;overscroll-behavior-inline:contain}.message-attachments img{width:72px;height:72px;flex:0 0 72px;object-fit:cover;background:var(--bg-canvas);border-radius:var(--radius-sm)}.chat-markdown{min-width:0;color:var(--text-primary);font-size:var(--font-size-body);line-height:1.6}.chat-markdown>:first-child{margin-top:0}.chat-markdown>:last-child{margin-bottom:0}.chat-markdown h1,.chat-markdown h2,.chat-markdown h3{margin:1.25em 0 .55em;color:var(--text-primary);line-height:1.3}.chat-markdown h1{padding-bottom:var(--space-2);font-size:var(--font-size-page-title);border-bottom:1px solid var(--border-subtle)}.chat-markdown h2{font-size:var(--font-size-section-title)}.chat-markdown h3{font-size:var(--font-size-card-title)}.chat-markdown p{margin:0 0 .85em;line-height:1.6}.chat-markdown strong{color:#f4f7fb;font-weight:var(--font-weight-semibold)}.chat-markdown ul,.chat-markdown ol{margin:.45em 0 .9em;padding-left:1.55rem}.chat-markdown li{margin:.25em 0}.chat-markdown li>p{margin-bottom:.35em}.chat-markdown code{padding:2px 5px;color:#d8e9fb;background:#758da82e;border-radius:var(--radius-xs);font-family:SFMono-Regular,Consolas,monospace;font-size:.9em}.chat-markdown pre{max-width:100%;margin:.75em 0 1em;padding:var(--space-3);overflow-x:auto;color:#d5e3f2;background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-control)}.chat-markdown pre code{padding:0;color:inherit;background:transparent;border-radius:0}.chat-markdown table{display:block;width:max-content;max-width:100%;margin:.75em 0 1em;overflow-x:auto;border-spacing:0;border-collapse:collapse}.chat-markdown th,.chat-markdown td{padding:var(--space-2) var(--space-3);text-align:left;border:1px solid var(--border-default)}.chat-markdown th{color:var(--text-primary);font-weight:var(--font-weight-semibold);background:var(--bg-surface-hover)}.chat-markdown tr:nth-child(2n) td{background:#11182705}.chat-markdown blockquote{margin:.75em 0 1em;padding:var(--space-1) 0 var(--space-1) var(--space-3);color:var(--text-secondary);border-left:3px solid var(--accent-primary)}.chat-markdown blockquote>:last-child{margin-bottom:0}.chat-markdown a{color:var(--accent-primary);text-decoration:underline;text-underline-offset:2px}.chat-markdown hr{margin:var(--space-4) 0;border:0;border-top:1px solid var(--border-default)}.chat-markdown img{max-width:100%;border-radius:var(--radius-control)}.message.rendering-message{width:min(560px,92%);max-width:min(560px,92%);padding:0;background:transparent;border:0}.chat-rendering-card{display:grid;gap:var(--space-3);padding:var(--space-3);background:linear-gradient(145deg,#eef4ff,#fff);border:1px solid #365772;border-radius:var(--radius-card)}.chat-rendering-card>small{color:var(--text-tertiary);font-size:var(--font-size-micro)}.rendering-message-preview{justify-self:start;max-width:220px;padding:0;overflow:hidden;background:transparent;border:0;border-radius:var(--radius-control);cursor:zoom-in}.rendering-message-preview img{display:block;width:auto;max-width:220px;max-height:220px;object-fit:contain;background:var(--bg-canvas)}.rendering-message-state{display:grid;width:220px;min-height:150px;place-items:center;color:var(--text-tertiary);background:var(--bg-canvas);border-radius:var(--radius-control)}.rendering-message-state.failed{color:var(--danger);background:var(--danger-subtle)}.rendering-message-source{display:flex;min-width:0;align-items:center;gap:var(--space-2);color:var(--text-tertiary);font-size:var(--font-size-caption)}.rendering-message-source img{width:48px;height:48px;flex:0 0 48px;object-fit:cover;border-radius:var(--radius-sm)}.rendering-message-source span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rendering-message-prompt summary{color:var(--text-tertiary);font-size:var(--font-size-caption)}.rendering-message-prompt pre{max-height:160px;margin:var(--space-2) 0 0;padding:var(--space-2);overflow:auto;white-space:pre-wrap;color:var(--text-secondary);background:var(--bg-canvas);border-radius:var(--radius-sm);font-size:var(--font-size-micro)}.chat-composer{position:relative;bottom:auto;z-index:4;flex:0 0 auto;padding:var(--space-3);background:var(--bg-surface);border-top:1px solid var(--border-subtle);box-shadow:0 -10px 28px #0000002e}.composer-row,.chat-composer>div:last-child{display:grid;grid-template-columns:auto auto auto minmax(240px,1fr) auto;align-items:end;gap:var(--space-2)}.composer-row>button,.composer-row>label{white-space:nowrap}.composer-row textarea,.chat-composer>div:last-child textarea{min-width:0;min-height:var(--control-comfortable);max-height:120px;grid-column:auto;grid-row:auto}.composer-row>.primary-button,.chat-composer>div:last-child>.primary-button{grid-column:auto}.selected-shots{flex-wrap:nowrap;overflow-x:auto}.selected-shots span{flex:0 0 auto}@media (max-width: 1024px){.chat-page{height:calc(100dvh - var(--header-height) - var(--space-6))}.chat-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:var(--space-2)}.chat-session-drawer{position:relative;z-index:8;min-width:0}.chat-session-drawer[open]>.chat-sidebar{position:absolute;top:calc(100% + var(--space-2));right:0;left:0;z-index:12;height:auto;max-height:min(52vh,420px);margin-top:0;overflow-y:hidden;box-shadow:var(--shadow-modal)}.chat-session-drawer[open] .chat-list{max-height:calc(min(52vh,420px) - 64px)}.chat-main{height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr) auto}.messages{min-height:0;max-height:none}}@media (max-width: 640px),(max-device-width: 640px){.chat-page{gap:var(--space-2)}.worldview-card{min-height:0;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.worldview-card h2{margin-top:2px;overflow:hidden;font-size:var(--font-size-card-title);text-overflow:ellipsis;white-space:nowrap}.worldview-card .palette-row{display:none}.worldview-card>.secondary-button{width:auto;min-height:var(--control-default);padding-inline:var(--space-2)}.visual-context-heading{align-items:center;flex-direction:row}.visual-context-heading small{display:none}.visual-context-heading .secondary-button{width:auto;padding-inline:var(--space-2)}.visual-context-strip img{flex-basis:58px;width:58px;height:42px}.messages{gap:var(--space-2);padding:var(--space-3)}.message{max-width:94%;padding:var(--space-3)}.message.rendering-message{width:min(100%,460px);max-width:100%;padding:0}.rendering-message-preview,.rendering-message-preview img{max-width:180px;max-height:180px}.rendering-message-state{width:180px;min-height:130px}.chat-composer{position:relative;padding:var(--space-2)}.composer-row,.chat-composer>div:last-child{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:var(--space-2)}.composer-row textarea,.chat-composer>div:last-child textarea{min-height:76px;grid-column:1 / -1;grid-row:1}.composer-row>.primary-button,.chat-composer>div:last-child>.primary-button{grid-column:4}.composer-row>button,.composer-row>label{min-width:0;padding-inline:var(--space-1);overflow:hidden;font-size:var(--font-size-caption);text-overflow:ellipsis}}.chat-layout{grid-template-columns:300px minmax(0,1fr)}.chat-resource-panel{display:grid;height:100%;min-height:0;grid-template-rows:auto minmax(128px,.72fr) minmax(230px,1.28fr);padding:0;overflow:hidden}.resource-worldview-mini{display:grid;gap:var(--space-2);padding:var(--space-3);background:linear-gradient(135deg,#4c9aff1a,#35c48d14);border-bottom:1px solid var(--border-subtle)}.resource-worldview-mini>div:first-child{display:grid;min-width:0;gap:2px}.resource-worldview-mini small{color:var(--text-tertiary);font-size:var(--font-size-micro)}.resource-worldview-mini strong{overflow:hidden;color:var(--text-primary);font-size:var(--font-size-card-title);text-overflow:ellipsis;white-space:nowrap}.resource-worldview-actions{display:grid;grid-template-columns:minmax(0,1fr) var(--control-compact) auto;align-items:center;gap:var(--space-2)}.resource-worldview-actions .palette-row{min-width:0;overflow:hidden}.resource-worldview-actions .palette-row i{width:15px;height:15px;flex:0 0 15px;border-width:1px}.resource-worldview-actions .icon-button{width:var(--control-compact);min-height:var(--control-compact);padding:0;font-size:var(--font-size-section-title)}.resource-worldview-actions .secondary-button{min-height:var(--control-compact);padding:var(--space-1) var(--space-2);font-size:var(--font-size-caption)}.chat-session-section,.project-resource-section{display:grid;min-height:0;grid-template-rows:auto minmax(0,1fr)}.chat-session-section{border-bottom:1px solid var(--border-subtle)}.resource-section-heading{display:flex;min-height:var(--control-default);align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle)}.resource-section-heading strong{color:var(--text-secondary);font-size:var(--font-size-caption)}.resource-section-heading small{color:var(--text-tertiary);font-size:var(--font-size-micro)}.resource-section-heading .icon-button{min-height:var(--control-compact);padding:0 var(--space-1)}.chat-session-section .chat-list{padding:var(--space-2)}.project-resource-section{background:#080d1457}.resource-library-scroll{display:grid;min-height:0;align-content:start;gap:var(--space-2);padding:var(--space-2);overflow-y:auto;overscroll-behavior:contain}.resource-group{min-width:0;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.resource-group>summary{display:grid;min-height:var(--control-compact);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:0 var(--space-2);color:var(--text-secondary);font-size:var(--font-size-caption);list-style:none;cursor:pointer}.resource-group>summary::-webkit-details-marker{display:none}.resource-group>summary:before{content:"›";display:inline-block;width:10px;grid-column:1;margin-right:var(--space-1);color:var(--text-tertiary);transform:rotate(0);transition:transform .15s}.resource-group>summary>span{grid-column:1;margin-left:14px}.resource-group[open]>summary:before{transform:rotate(90deg)}.resource-group>summary small{grid-column:2;color:var(--text-tertiary);font-size:var(--font-size-micro)}.resource-group>select{width:calc(100% - var(--space-3));min-width:0;margin:0 var(--space-2) var(--space-2);font-size:var(--font-size-micro)}.resource-thumb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-1);padding:0 var(--space-2) var(--space-2)}.resource-thumb-grid:empty:after{content:"暂无资源";grid-column:1 / -1;padding:var(--space-3);color:var(--text-disabled);font-size:var(--font-size-micro);text-align:center}.resource-thumb-grid button{display:grid;min-width:0;gap:3px;padding:3px;color:var(--text-tertiary);text-align:left;background:var(--bg-canvas);border:1px solid transparent;border-radius:var(--radius-sm)}.resource-thumb-grid button:hover:not(:disabled){color:var(--text-secondary);border-color:var(--border-default)}.resource-thumb-grid button.selected{color:var(--accent-primary);background:var(--accent-subtle);border-color:var(--accent-primary)}.resource-thumb-grid img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#eef0f4;border-radius:var(--radius-xs)}.resource-thumb-grid span{overflow:hidden;font-size:9px;line-height:14px;text-overflow:ellipsis;white-space:nowrap}.resource-documents{display:grid;gap:var(--space-1);padding-bottom:var(--space-2)}.resource-documents>summary{margin-bottom:2px}.resource-documents>button{display:grid;min-width:0;min-height:var(--control-default);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2);margin:0 var(--space-2);padding:var(--space-1) var(--space-2);color:var(--text-secondary);text-align:left;background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.resource-documents>button:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--border-default)}.resource-documents>button.selected{color:var(--accent-primary);background:var(--accent-subtle);border-color:var(--accent-primary)}.resource-documents>button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-documents>button small{color:var(--text-tertiary);font-size:9px;white-space:nowrap}.resource-loading{padding:var(--space-2);color:var(--text-tertiary);font-size:var(--font-size-micro);text-align:center}.resource-reference-chips .document-chip{color:#d7c8f2;background:#9a6ed129;border:1px solid rgba(154,110,209,.34)}@media (max-width: 1024px){.chat-layout{grid-template-columns:minmax(0,1fr)}.chat-resource-drawer[open]>.chat-resource-panel{max-height:min(72dvh,620px);grid-template-rows:auto minmax(110px,.65fr) minmax(190px,1.35fr)}}@media (max-width: 640px),(max-device-width: 640px){.chat-resource-drawer,.chat-resource-panel,.resource-worldview-mini,.chat-session-section,.project-resource-section{width:100%;max-width:100%;min-width:0}.chat-resource-drawer[open]>.chat-resource-panel{right:0;left:0;max-height:calc(100dvh - var(--header-height) - 92px)}.resource-library-scroll{padding:var(--space-2)}.resource-thumb-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-worldview-actions{grid-template-columns:minmax(0,1fr) var(--control-comfortable) auto}.resource-worldview-actions .icon-button{width:var(--control-comfortable);min-height:var(--control-comfortable)}.resource-worldview-actions .secondary-button{min-height:var(--control-comfortable)}.resource-reference-chips{max-width:100%}}.chat-resource-shell{min-width:0;min-height:0}.chat-resource-toggle{display:none}@media (min-width: 641px){.workspace:has(>.chat-page){max-width:none}.chat-layout{width:100%;grid-template-columns:280px minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:var(--space-3)}.chat-resource-shell{display:block;width:280px;height:100%}.chat-resource-panel{display:grid;width:100%;height:100%;margin:0}.chat-main{width:100%;min-width:0}}@media (max-width: 640px),(max-device-width: 640px){.chat-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:var(--space-2)}.chat-resource-shell{position:relative;z-index:8;width:100%}.chat-resource-toggle{display:grid;width:100%;min-height:var(--control-comfortable);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:0 var(--space-3);color:var(--text-primary);text-align:left;background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-control)}.chat-resource-toggle span{color:var(--text-tertiary);font-size:var(--font-size-caption)}.chat-resource-toggle strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-resource-toggle i{font-style:normal;transition:transform .15s}.chat-resource-shell.open>.chat-resource-toggle i{transform:rotate(180deg)}.chat-resource-panel{display:none}.chat-resource-shell.open>.chat-resource-panel{position:absolute;top:calc(100% + var(--space-2));right:0;left:0;z-index:12;display:grid;width:100%;height:auto;max-height:calc(100dvh - var(--header-height) - 92px);grid-template-rows:auto minmax(110px,.65fr) minmax(190px,1.35fr);margin:0;overflow:hidden;box-shadow:var(--shadow-modal)}}.reskin-spec-page,.rendering-page{min-width:0}.reskin-spec-toolbar,.reskin-mapping-section{display:grid;gap:var(--space-3)}.reskin-generate-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2)}.reskin-overview-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-3)}.reskin-theme-card,.reskin-narrative-card{min-width:0}.eyebrow{color:var(--text-tertiary);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.06em}.theme-route{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--space-3);margin:var(--space-4) 0}.theme-route strong{overflow-wrap:anywhere;font-size:22px}.theme-route i{color:var(--accent-primary);font-size:24px;font-style:normal}.reskin-theme-card p,.reskin-scene-card p,.reskin-character-card p{margin:0;color:var(--text-secondary);line-height:1.65}.reskin-narrative-card dl,.character-render-card dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-2) var(--space-3);margin:var(--space-3) 0 0}.reskin-narrative-card dt,.character-render-card dt{color:var(--text-tertiary);font-size:var(--font-size-caption)}.reskin-narrative-card dd,.character-render-card dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--text-secondary)}.reskin-scene-grid,.reskin-character-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.reskin-scene-card,.reskin-character-card{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3);background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.reskin-character-card h3{margin:var(--space-1) 0 0}.reskin-character-card p strong{display:block;color:var(--text-tertiary);font-size:var(--font-size-caption)}.reskin-mapping-table{display:grid;min-width:0;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.reskin-mapping-head,.reskin-mapping-row{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(130px,.8fr) minmax(150px,.7fr) minmax(240px,1.6fr) auto;gap:var(--space-2);align-items:start;padding:var(--space-2) var(--space-3)}.reskin-mapping-head{color:var(--text-tertiary);font-size:var(--font-size-caption);background:var(--bg-surface-raised);border-bottom:1px solid var(--border-subtle)}.reskin-mapping-row{border-bottom:1px solid var(--border-subtle)}.reskin-mapping-row:last-child{border-bottom:0}.reskin-mapping-row label{display:grid;min-width:0;gap:var(--space-1)}.reskin-mapping-row label>span{display:none;color:var(--text-tertiary);font-size:var(--font-size-caption)}.reskin-mapping-row input,.reskin-mapping-row textarea{width:100%;min-width:0}.reskin-mapping-row small{overflow:hidden;color:var(--text-tertiary);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.mapping-selects,.mapping-actions{display:grid;gap:var(--space-2)}.status-toggle{display:flex!important;min-height:var(--control-compact);grid-template-columns:auto 1fr;align-items:center}.status-toggle span{display:inline!important}.mapping-actions button{min-height:var(--control-compact)}.rendering-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);overflow-x:auto;background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.rendering-tabs button{min-height:var(--control-compact);padding:0 var(--space-4);color:var(--text-secondary);white-space:nowrap;background:transparent;border:0;border-radius:var(--radius-sm)}.rendering-tabs button.active{color:var(--accent-primary);background:var(--accent-subtle)}.notice-bar a{margin:0 var(--space-1);color:inherit;font-weight:700}.spec-render-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--space-3);min-width:0}.spec-render-card{display:grid;min-width:0;align-content:start;gap:var(--space-3)}.spec-render-card>header{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.spec-render-card>header label{display:flex;min-width:0;align-items:flex-start;gap:var(--space-2)}.spec-render-card>header label span{display:grid;min-width:0;gap:var(--space-1)}.spec-render-card>header small{color:var(--text-tertiary)}.spec-render-card>header strong{overflow-wrap:anywhere}.spec-render-card>header strong i{color:var(--accent-primary);font-style:normal}.spec-render-prompt{min-height:4.8em;margin:0;overflow-wrap:anywhere;color:var(--text-secondary);font-size:var(--font-size-caption);line-height:1.6}.spec-render-card .rendering-roots{min-height:176px}.spec-render-card .rendering-preview img{height:176px}.spec-render-card .rendering-preview-state{min-height:176px}@media (max-width: 900px){.reskin-overview-grid{grid-template-columns:minmax(0,1fr)}.reskin-mapping-head{display:none}.reskin-mapping-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--space-3)}.reskin-mapping-row>label:nth-of-type(3),.mapping-actions{grid-column:1 / -1}.reskin-mapping-row label>span{display:block}.mapping-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px),(max-device-width: 640px){.reskin-generate-row,.reskin-mapping-row,.spec-render-grid{grid-template-columns:minmax(0,1fr)}.reskin-generate-row button{width:100%}.reskin-mapping-row>*{grid-column:1!important}.theme-route strong{font-size:18px}.rendering-tabs{width:100%}.rendering-tabs button{flex:1 0 auto;min-height:var(--control-comfortable)}.spec-render-card{padding:var(--space-3)}.spec-render-card>header{align-items:stretch;flex-direction:column}.rendering-actions>button{flex:1 1 140px}}.resource-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:var(--space-5);background:#02070cd1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.resource-preview-modal{display:grid;width:min(980px,calc(100vw - var(--space-7)));height:min(820px,calc(100dvh - var(--space-7)));min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-modal)}.resource-preview-modal>header,.resource-preview-modal>footer{display:flex;min-width:0;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-surface)}.resource-preview-modal>header{justify-content:space-between;border-bottom:1px solid var(--border-subtle)}.resource-preview-modal>header>div{min-width:0}.resource-preview-modal>header small{display:block;color:var(--text-tertiary);font-size:var(--font-size-micro)}.resource-preview-modal>header h2{margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-preview-modal>footer{justify-content:flex-end;border-top:1px solid var(--border-subtle)}.resource-preview-content{min-width:0;min-height:0;padding:var(--space-5);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.resource-preview-image{display:grid;min-width:0;min-height:0;place-items:center;padding:var(--space-4);overflow:auto;background:#f4f5f7}.resource-preview-image img{display:block;max-width:100%;max-height:100%;object-fit:contain}@media (max-width: 640px),(max-device-width: 640px){.resource-preview-backdrop{padding:0}.resource-preview-modal{width:100%;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}.resource-preview-modal>header{padding:var(--space-3)}.resource-preview-modal>footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:var(--space-3)}.resource-preview-modal>footer>button{width:100%;min-width:0}.resource-preview-content{padding:var(--space-4)}.resource-preview-image{padding:var(--space-2)}}.objects-page{min-width:0}.object-board-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-5)}.object-board-heading>div:first-child{min-width:0}.object-board-heading h1{margin:var(--space-1) 0;font-size:24px}.object-board-heading p{max-width:760px;margin:0;color:var(--text-secondary);line-height:1.6}.object-board-heading .eyebrow{color:var(--accent-primary);font-size:var(--font-size-micro);font-weight:var(--font-weight-bold);letter-spacing:.08em;text-transform:uppercase}.object-view-switch{display:flex;flex:0 0 auto;padding:3px;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-control)}.object-view-switch button{min-height:34px;padding:0 var(--space-3);color:var(--text-secondary);background:transparent;border:0;border-radius:var(--radius-sm)}.object-view-switch button.active{color:var(--text-primary);background:var(--bg-surface-selected);box-shadow:inset 0 0 0 1px var(--border-strong)}.object-funnel{display:grid;min-width:0;grid-template-columns:repeat(6,minmax(0,1fr));overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-card)}.object-funnel div{position:relative;display:grid;min-width:0;gap:var(--space-1);padding:var(--space-4);border-right:1px solid var(--border-subtle)}.object-funnel div:last-child{border-right:0}.object-funnel small{color:var(--text-tertiary);font-size:var(--font-size-micro)}.object-funnel strong{color:var(--text-primary);font-size:26px}.object-funnel i{position:absolute;top:50%;right:-8px;z-index:1;display:grid;width:16px;height:16px;place-items:center;color:var(--text-tertiary);background:var(--bg-surface);font-size:11px;font-style:normal;transform:translateY(-50%)}.object-toolbar{display:flex;min-width:0;align-items:end;gap:var(--space-3);padding:var(--space-3)}.object-toolbar label{display:grid;min-width:150px;gap:var(--space-1);color:var(--text-tertiary);font-size:var(--font-size-micro)}.object-toolbar>span{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-caption)}.object-table-scroll{min-width:0;overflow-x:auto;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-card)}.object-table{width:100%;min-width:1040px;border-collapse:collapse}.object-table th{padding:var(--space-3);color:var(--text-tertiary);font-size:var(--font-size-micro);font-weight:var(--font-weight-semibold);text-align:left;background:var(--bg-surface-raised);border-bottom:1px solid var(--border-default)}.object-table td{padding:var(--space-3);vertical-align:middle;border-bottom:1px solid var(--border-subtle)}.object-table tr:last-child td{border-bottom:0}.object-table tr:hover td{background:var(--bg-surface-hover)}.object-table td:first-child{width:104px}.object-table td:nth-child(2){width:76px}.object-table td:first-child>small{display:block;max-width:110px;margin-top:var(--space-1);overflow:hidden;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap}.object-kind{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;color:var(--text-secondary);font-size:var(--font-size-micro);font-weight:var(--font-weight-semibold);background:var(--bg-surface-selected);border:1px solid var(--border-default);border-radius:var(--radius-pill)}.object-kind.kind-element{color:#84c4ff}.object-kind.kind-character{color:#d9a5ff}.object-kind.kind-screen{color:#64dcb2}.object-name-pair{display:grid;min-width:220px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--space-2)}.object-name-pair span,.object-name-pair strong{overflow-wrap:anywhere}.object-name-pair span{color:var(--text-secondary)}.object-name-pair i{color:var(--text-disabled);font-style:normal}.object-stage-chain{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.object-stage{display:contents}.object-stage>span{display:inline-flex;min-height:28px;align-items:center;gap:5px;padding:4px 7px;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-sm)}.object-stage b{font-size:var(--font-size-micro)}.object-stage i{font-style:normal;font-weight:var(--font-weight-bold)}.object-stage small{color:var(--text-tertiary);font-size:var(--font-size-micro)}.object-stage em{color:var(--text-disabled);font-size:10px;font-style:normal}.object-stage.stage-done i{color:var(--success)}.object-stage.stage-warning i{color:var(--warning)}.object-stage.stage-empty i{color:var(--text-disabled)}.object-stage-chain.compact{min-width:390px;flex-wrap:nowrap}.object-stage-chain.compact .object-stage>span{padding:4px 6px}.object-blockers{display:flex;max-width:260px;flex-wrap:wrap;gap:var(--space-1)}.object-blockers span{padding:3px 6px;color:var(--warning);font-size:var(--font-size-micro);background:var(--warning-subtle);border-radius:var(--radius-xs)}.object-clear{color:var(--success);font-size:var(--font-size-caption)}.object-next-link{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent-primary);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-decoration:none;white-space:nowrap}.object-card-grid{display:grid;min-width:0;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-3)}.object-card{display:grid;min-width:0;align-content:start;gap:var(--space-4);padding:var(--space-4);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-card)}.object-card>header{display:grid;min-width:0;grid-template-columns:88px minmax(0,1fr);gap:var(--space-3)}.object-card>header>div:last-child{min-width:0}.object-card header small{margin-left:var(--space-2);color:var(--text-tertiary);font-size:var(--font-size-micro)}.object-card h2{margin:var(--space-2) 0 var(--space-1);overflow-wrap:anywhere;font-size:var(--font-size-section-title)}.object-card p{margin:0;overflow-wrap:anywhere;color:var(--text-secondary);font-size:var(--font-size-caption)}.object-thumb-link{display:inline-block;flex:0 0 auto;line-height:0;border-radius:var(--radius-control)}.object-thumb-link:hover .object-thumb{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-focus)}.object-thumb{display:grid;width:88px;height:88px;place-items:center;overflow:hidden;color:var(--text-tertiary);background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-control)}.object-thumb.object-table-thumb{width:56px;height:56px}.object-thumb.placeholder{color:var(--text-disabled);background:linear-gradient(135deg,var(--bg-canvas),var(--bg-surface-raised));border-style:dashed}.object-thumb img{display:block;width:100%;height:100%;object-fit:contain}.object-thumb span{font-size:24px;font-weight:var(--font-weight-bold)}.object-thumb.object-table-thumb span{font-size:16px}.object-card-footer{display:flex;min-width:0;align-items:end;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.object-card-footer .object-blockers{flex:1}.object-card-footer .primary-button{flex:0 0 auto;text-decoration:none}@media (max-width: 760px),(max-device-width: 760px){.object-board-heading{align-items:stretch;flex-direction:column;gap:var(--space-3)}.object-view-switch{width:100%}.object-view-switch button{flex:1}.object-funnel{grid-template-columns:repeat(2,minmax(0,1fr))}.object-funnel div{border-bottom:1px solid var(--border-subtle)}.object-funnel div:nth-child(2n){border-right:0}.object-funnel div:nth-last-child(-n+2){border-bottom:0}.object-funnel i{display:none}.object-toolbar{align-items:stretch;flex-direction:column}.object-toolbar label{width:100%;min-width:0}.object-toolbar>span{margin-left:0}.object-table-scroll{width:100%;max-width:100%}.object-card-grid{grid-template-columns:minmax(0,1fr)}.object-card>header{grid-template-columns:72px minmax(0,1fr)}.object-thumb{width:72px;height:72px}.object-card .object-stage-chain{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.object-card .object-stage{display:block}.object-card .object-stage>span{width:100%;justify-content:space-between}.object-card .object-stage em{display:none}.object-card-footer{align-items:stretch;flex-direction:column}.object-card-footer .object-blockers{max-width:none}.object-card-footer .primary-button{width:100%;text-align:center}}.rendering-suite-entry{display:flex;justify-content:flex-end}.rendering-card.outlier{border-color:color-mix(in srgb,var(--danger) 65%,var(--border-default));box-shadow:0 0 0 1px color-mix(in srgb,var(--danger) 22%,transparent)}.rendering-outlier-badge{display:flex;align-items:center;gap:var(--space-1);padding:7px 10px;color:var(--danger);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);background:color-mix(in srgb,var(--danger) 10%,transparent);border-top:1px solid color-mix(in srgb,var(--danger) 30%,transparent);border-bottom:1px solid color-mix(in srgb,var(--danger) 30%,transparent)}.suite-page{display:grid;min-width:0;gap:var(--space-4)}.suite-hero{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-5);overflow:hidden;background:radial-gradient(circle at 92% 0%,color-mix(in srgb,var(--accent-primary) 18%,transparent),transparent 42%),var(--bg-surface)}.suite-hero h1{margin:var(--space-1) 0 var(--space-2)}.suite-hero p{max-width:680px;margin:0;color:var(--text-secondary)}.suite-summary{display:grid;flex:0 0 auto;grid-template-columns:auto auto;align-items:baseline;gap:2px var(--space-2);padding:var(--space-3) var(--space-4);background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-control)}.suite-summary strong{color:var(--accent-primary);font-size:24px}.suite-summary span{color:var(--text-tertiary);font-size:var(--font-size-caption)}.suite-toolbar{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-3)}.suite-toolbar .rendering-tabs{min-width:0;overflow-x:auto}.suite-toolbar .primary-button{flex:0 0 auto}.suite-filter{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.suite-filter label{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary)}.suite-filter select{min-width:150px}.suite-filter>span{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--text-tertiary);font-size:var(--font-size-caption)}.suite-legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.suite-legend-dot.outlier{background:var(--danger)}.suite-legend-dot.stale{background:var(--warning)}.suite-contact-sheet{display:grid;min-width:0;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:var(--space-3)}.suite-contact-sheet>.panel{grid-column:1 / -1}.suite-card{position:relative;display:grid;min-width:0;align-content:start;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-card);transition:border-color .16s ease,transform .16s ease}.suite-card:hover{transform:translateY(-2px);border-color:var(--border-strong)}.suite-card.selected{border-color:var(--accent-primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-primary) 42%,transparent)}.suite-card.outlier{border-color:color-mix(in srgb,var(--danger) 65%,var(--border-default))}.suite-card-image{position:relative;display:grid;aspect-ratio:1 / 1;place-items:center;overflow:hidden;background-color:var(--bg-canvas);background-image:linear-gradient(45deg,color-mix(in srgb,var(--text-primary) 6%,transparent) 25%,transparent 25%),linear-gradient(-45deg,color-mix(in srgb,var(--text-primary) 6%,transparent) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,color-mix(in srgb,var(--text-primary) 6%,transparent) 75%),linear-gradient(-45deg,transparent 75%,color-mix(in srgb,var(--text-primary) 6%,transparent) 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.suite-card-image img{display:block;width:100%;height:100%;object-fit:contain}.suite-card-empty{color:var(--text-tertiary);font-size:var(--font-size-caption)}.suite-outlier-mark,.suite-stale-mark{position:absolute;z-index:1;top:8px;padding:4px 7px;font-size:var(--font-size-micro);font-weight:var(--font-weight-bold);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-xs)}.suite-outlier-mark{left:8px;color:var(--text-primary);background:color-mix(in srgb,var(--danger) 86%,transparent)}.suite-stale-mark{right:8px;color:#fff7df;background:color-mix(in srgb,var(--warning) 88%,transparent)}.suite-card-copy{display:grid;min-width:0;gap:3px;padding:var(--space-3);border-top:1px solid var(--border-subtle)}.suite-card-copy strong,.suite-card-copy span,.suite-card-copy small{overflow-wrap:anywhere}.suite-card-copy strong{font-size:var(--font-size-body)}.suite-card-copy span{color:var(--text-secondary);font-size:var(--font-size-caption)}.suite-card-copy small{color:var(--text-tertiary);font-size:var(--font-size-micro)}.suite-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);padding:0 var(--space-3) var(--space-3)}.suite-card-actions label{display:flex;grid-column:1 / -1;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--font-size-caption)}.suite-card-actions .secondary-button{min-width:0;padding-inline:8px;text-align:center;text-decoration:none}.secondary-button.danger-outline{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 50%,var(--border-default))}.suite-board-panel{min-width:0;overflow:hidden}.suite-board-workbench{display:grid;min-width:0;gap:var(--space-3)}.suite-board-controls{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--text-tertiary);font-size:var(--font-size-caption)}.suite-board-controls label{display:flex;min-width:0;align-items:center;gap:var(--space-2);color:var(--text-secondary)}.suite-board-controls input{width:min(220px,42vw)}.suite-board-stage{position:relative;width:min(100%,980px);max-height:76vh;margin:0 auto;overflow:hidden;touch-action:none;background:#f4f5f7;border:1px solid var(--border-default);border-radius:var(--radius-card);-webkit-user-select:none;user-select:none}.suite-board-background{display:block;width:100%;max-height:76vh;object-fit:contain;pointer-events:none}.suite-board-grid{position:absolute;z-index:2;display:grid;width:max-content;max-width:78%;grid-template-columns:repeat(6,var(--suite-cell));gap:max(2px,calc(var(--suite-cell) * .08));padding:max(4px,calc(var(--suite-cell) * .08));cursor:grab;background:color-mix(in srgb,var(--bg-canvas) 24%,transparent);border:1px dashed color-mix(in srgb,var(--accent-primary) 72%,transparent);border-radius:var(--radius-control);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transform:translate(-10%,-10%)}.suite-board-grid:active{cursor:grabbing}.suite-board-cell{display:grid;width:var(--suite-cell);aspect-ratio:1 / 1;place-items:center;overflow:hidden;background:color-mix(in srgb,#fff 10%,transparent);border-radius:18%}.suite-board-cell img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.suite-board-no-elements{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--text-secondary);background:color-mix(in srgb,var(--bg-canvas) 56%,transparent)}@media (max-width: 760px),(max-device-width: 760px){.rendering-suite-entry{justify-content:stretch}.rendering-suite-entry .secondary-button{width:100%;text-align:center}.suite-hero,.suite-toolbar{align-items:stretch;flex-direction:column}.suite-summary{width:100%;grid-template-columns:auto 1fr auto 1fr}.suite-toolbar .primary-button{width:100%}.suite-contact-sheet{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.suite-card-actions{grid-template-columns:minmax(0,1fr)}.suite-card-actions label{grid-column:auto}.suite-card-actions .secondary-button{width:100%}.suite-board-controls{align-items:stretch;flex-direction:column}.suite-board-controls label{justify-content:space-between}.suite-board-grid{max-width:88%;grid-template-columns:repeat(4,var(--suite-cell))}}@media (max-width: 420px),(max-device-width: 420px){.suite-contact-sheet{grid-template-columns:minmax(0,1fr)}.suite-filter{align-items:stretch;flex-direction:column}.suite-filter label,.suite-filter select{width:100%}.suite-board-grid{grid-template-columns:repeat(3,var(--suite-cell))}}.shot-detail-lightbox{display:grid;grid-template-rows:minmax(0,1fr);padding:var(--space-5)}.shot-detail-panel{display:grid;width:min(1180px,calc(100vw - 48px));max-height:calc(100vh - 48px);grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--bg-surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal)}.shot-detail-panel>header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle)}.shot-detail-panel>header>div{display:flex;min-width:0;align-items:baseline;gap:var(--space-2)}.shot-detail-panel>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shot-detail-panel>header span{flex:0 0 auto;color:var(--text-tertiary);font-size:var(--font-size-caption)}.shot-detail-panel>header .icon-button{flex:0 0 auto;color:var(--text-primary)}.shot-detail-body{display:grid;min-width:0;min-height:0;grid-template-columns:minmax(0,1fr) minmax(340px,420px);overflow:hidden}.shot-detail-image{display:grid;min-width:0;min-height:0;place-items:center;padding:var(--space-4);overflow:hidden;background:#f4f5f7}.shot-detail-image img{display:block;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 16px 54px #0009}.shot-structure{min-width:0;min-height:0;overflow:hidden;border-left:1px solid var(--border-subtle)}.shot-structure>summary{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:var(--space-2);padding:0 var(--space-4);cursor:pointer;font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--border-subtle)}.shot-structure>summary small{color:var(--text-tertiary);font-size:var(--font-size-micro);font-weight:var(--font-weight-regular)}.shot-structure-content{display:grid;min-width:0;max-height:calc(100vh - 145px);gap:var(--space-3);padding:var(--space-3);overflow-y:auto}.shot-prefab{display:grid;min-width:0;gap:4px;padding:var(--space-3);background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.shot-prefab span{color:var(--text-tertiary);font-size:var(--font-size-micro)}.shot-prefab strong{overflow:hidden;color:var(--accent-primary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap}.shot-elements-table-wrap{min-width:0;overflow-x:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.shot-elements-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:var(--font-size-caption)}.shot-elements-table th,.shot-elements-table td{min-width:0;padding:9px 10px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--border-subtle)}.shot-elements-table th{position:sticky;top:0;z-index:1;color:var(--text-tertiary);font-size:var(--font-size-micro);background:var(--bg-surface-raised)}.shot-elements-table th:nth-child(1){width:24%}.shot-elements-table th:nth-child(2){width:34%}.shot-elements-table th:nth-child(3){width:42%}.shot-elements-table tr:last-child td{border-bottom:0}.shot-elements-table td{overflow:hidden}.shot-elements-table td:nth-child(2){display:flex;min-width:0;align-items:center;gap:6px}.shot-element-value,.shot-node-path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shot-element-value{min-width:0;flex:1 1 auto}.shot-node-path{color:var(--text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--font-size-micro)}.shot-copy-asset{min-height:26px;flex:0 0 auto;padding:3px 7px;color:var(--accent-primary);font-size:var(--font-size-micro);background:color-mix(in srgb,var(--accent-primary) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-primary) 38%,var(--border-default));border-radius:var(--radius-xs)}.shot-copy-asset:hover{background:color-mix(in srgb,var(--accent-primary) 18%,transparent)}@media (max-width: 760px),(max-device-width: 760px){.shot-detail-lightbox{padding:var(--space-2)}.shot-detail-panel{width:100%;max-height:calc(100dvh - var(--space-4))}.shot-detail-panel>header{padding:var(--space-3)}.shot-detail-body{display:block;overflow-y:auto}.shot-detail-image{min-height:260px;max-height:52dvh;padding:var(--space-2)}.shot-detail-image img{max-height:calc(52dvh - var(--space-4))}.shot-structure{overflow:visible;border-top:1px solid var(--border-subtle);border-left:0}.shot-structure-content{max-height:none;overflow:visible}.shot-elements-table-wrap{overflow:visible;border:0}.shot-elements-table,.shot-elements-table tbody,.shot-elements-table tr,.shot-elements-table td{display:block;width:100%}.shot-elements-table thead{display:none}.shot-elements-table tbody{display:grid;gap:var(--space-2)}.shot-elements-table tr{padding:var(--space-2);background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.shot-elements-table td,.shot-elements-table td:nth-child(2){display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:start;gap:var(--space-2);padding:5px;overflow:visible;border:0}.shot-elements-table td:before{content:attr(data-label);color:var(--text-tertiary);font-size:var(--font-size-micro)}.shot-element-value,.shot-node-path{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.shot-copy-asset{grid-column:3;grid-row:1}}@media (max-width: 420px),(max-device-width: 420px){.shot-detail-panel>header>div{display:grid;gap:2px}.shot-detail-image{min-height:220px}.shot-structure>summary,.shot-structure-content{padding-right:var(--space-3);padding-left:var(--space-3)}.shot-elements-table td,.shot-elements-table td:nth-child(2){grid-template-columns:78px minmax(0,1fr) auto}}html{min-width:0;color-scheme:dark;background:var(--bg-app)}body{min-width:0;min-height:100vh;margin:0;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:1.5;text-rendering:optimizeLegibility;background:var(--bg-app);-webkit-font-smoothing:antialiased}body,button,input,select,textarea{font-variant-numeric:tabular-nums}::selection{color:var(--text-primary);background:var(--accent-muted)}*{scrollbar-color:rgba(17,24,39,.16) transparent;scrollbar-width:thin}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#11182724;border-radius:var(--radius-pill)}*::-webkit-scrollbar-thumb:hover{background:#11182738}h1,h2,h3,h4,p{margin-top:0}p{color:var(--text-secondary)}small,.muted{color:var(--text-tertiary)}code{color:var(--text-secondary);font-family:SFMono-Regular,Consolas,ui-monospace,monospace;font-size:.92em}a{color:var(--accent-primary);text-underline-offset:3px}hr{margin:var(--space-4) 0;border:0;border-top:1px solid var(--border-divider)}.workspace{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:var(--space-5) var(--space-6) var(--space-8)}.page-stack{gap:var(--space-4)}.panel{color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:none}.panel-heading,.section-heading{min-height:var(--control-default)}.panel-heading h1,.panel-heading h2,.section-heading h1,.section-heading h2{margin-bottom:0}.eyebrow{color:var(--text-tertiary);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}@media (max-width: 640px),(max-device-width: 640px){.workspace{padding:var(--space-4) var(--space-3) var(--space-6)}}.topbar,.home-header{background:#0d1017f0;border-bottom:1px solid var(--border-divider);box-shadow:0 1px #0003;-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%)}.topbar{gap:var(--space-3);padding-inline:var(--space-4)}.brand-button{border-radius:var(--radius-control);transition:opacity var(--transition-fast)}.brand-button:hover{opacity:.82}.brand>i{width:var(--control-default);height:var(--control-default);color:var(--text-on-accent);font-size:var(--font-size-label);font-weight:700;letter-spacing:-.02em;background:var(--accent-primary);border:1px solid rgba(17,24,39,.16);border-radius:var(--radius-control);box-shadow:inset 0 1px #1118272e}.brand strong{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.brand small{font-size:var(--font-size-caption)}.context-selectors label{gap:var(--space-1);height:var(--control-default);color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border-subtle);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.context-selectors label:hover{background:var(--bg-raised);border-color:var(--border-default)}.context-selectors select{color:var(--text-secondary);font-size:var(--font-size-label);font-weight:var(--font-weight-medium)}.nav-group{gap:2px;border-left-color:var(--border-divider)}.nav-group>small{color:var(--text-disabled);font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase}.topbar nav a,.nav-more summary{position:relative;height:36px;padding-inline:10px;color:var(--text-tertiary);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);background:transparent;border:0;border-radius:var(--radius-control);transition:color var(--transition-fast),background-color var(--transition-fast)}.topbar nav a:before,.nav-more.active>summary:before{position:absolute;top:8px;bottom:8px;left:0;width:2px;content:"";background:transparent;border-radius:var(--radius-pill)}.topbar nav a:hover,.nav-more summary:hover{color:var(--text-secondary);background:var(--bg-hover)}.topbar nav a.active,.nav-more.active>summary{color:var(--accent-primary);background:var(--accent-subtle);border-bottom-color:transparent}.topbar nav a.active:before,.nav-more.active>summary:before{background:var(--accent-primary)}.nav-more[open]>summary{color:var(--text-primary);background:var(--bg-active)}.nav-more-menu{padding:var(--space-1);background:var(--bg-raised);border-color:var(--border-default);border-radius:var(--radius-control);box-shadow:var(--shadow-raised)}.nav-more-menu a{justify-content:flex-start;height:var(--control-default)}.account-controls{gap:var(--space-1)}.account-name,.account-logout{min-height:var(--control-compact);padding:0 var(--space-2);color:var(--text-tertiary);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);background:transparent;border:1px solid transparent;border-radius:var(--radius-control);transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.account-name{color:var(--text-secondary);background:var(--bg-surface);border-color:var(--border-subtle)}.account-name:not(:disabled):hover{color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-default)}.account-name:disabled{color:var(--text-tertiary);cursor:default;opacity:.72}.account-logout{color:color-mix(in srgb,var(--danger) 78%,var(--text-tertiary))}.account-logout:hover{color:var(--danger);background:var(--danger-subtle);border-color:transparent}.btn,.primary-button,.secondary-button,.icon-button,.account-name,.account-logout{min-height:var(--control-default);font-size:var(--font-size-label);line-height:1;border-radius:var(--radius-control);transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.btn-primary,.primary-button{color:var(--text-on-accent);font-weight:var(--font-weight-semibold);background:var(--accent-primary);border-color:var(--accent-primary);box-shadow:inset 0 1px #11182729}.btn-primary:hover:not(:disabled),.primary-button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:active:not(:disabled),.primary-button:active:not(:disabled){background:var(--accent-pressed);border-color:var(--accent-pressed);transform:translateY(1px)}.btn-secondary,.secondary-button{color:var(--text-secondary);background:var(--bg-surface);border-color:var(--border-default);box-shadow:none}.btn-secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-strong)}.btn-secondary:active:not(:disabled),.secondary-button:active:not(:disabled){background:var(--bg-active);transform:translateY(1px)}.btn-ghost{color:var(--text-secondary);background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.btn-danger{color:var(--text-primary);background:var(--danger);border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 86%,#fff)}.secondary-button.danger-outline{color:var(--danger);background:transparent;border-color:color-mix(in srgb,var(--danger) 38%,var(--border-default))}.icon-button{color:var(--text-tertiary);background:transparent;border-color:transparent}.icon-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.btn:disabled,.primary-button:disabled,.secondary-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.4;transform:none}.is-loading:before,[aria-busy=true]:before{width:12px;height:12px;content:"";border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:m19-spin .7s linear infinite}@keyframes m19-spin{to{transform:rotate(360deg)}}.input,.select,input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:var(--control-default);padding:7px var(--space-3);color:var(--text-primary);font-size:var(--font-size-label);background:var(--bg-inset);border:1px solid var(--border-default);border-radius:var(--radius-control);box-shadow:inset 0 1px #11182705;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}textarea{line-height:1.5}input::placeholder,textarea::placeholder{color:var(--text-disabled);opacity:1}.input:hover:not(:disabled),.select:hover:not(:disabled),input:not([type=checkbox]):not([type=radio]):hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){background:var(--bg-surface);border-color:var(--border-strong)}.input:focus-visible,.select:focus-visible,input:not([type=checkbox]):not([type=radio]):focus-visible,select:focus-visible,textarea:focus-visible{background:var(--bg-surface);border-color:var(--accent-primary);box-shadow:var(--focus-ring)}.field-stack,.modal-card label{gap:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.badge,.object-kind,.object-blockers span{min-height:22px;padding:2px var(--space-2);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:16px;border:1px solid transparent;border-radius:var(--radius-pill)}.badge{color:var(--text-secondary);background:#1118270e}.badge-success,.badge-done{color:var(--success);background:var(--success-subtle)}.badge-warning,.badge-half{color:var(--warning);background:var(--warning-subtle)}.badge-danger,.badge-text{color:var(--danger);background:var(--danger-subtle)}.badge-info,.badge-chrome{color:var(--info);background:var(--info-subtle)}.badge-carrier{color:#b9a5ff;background:#a184ff1f}.badge-content{color:var(--success);background:var(--success-subtle)}.rendering-tabs,.tab-list{display:flex;gap:2px;padding:var(--space-1);background:var(--bg-inset);border:1px solid var(--border-subtle);border-radius:var(--radius-control)}.rendering-tabs button,.tab{min-height:var(--control-compact);padding:0 var(--space-3);color:var(--text-tertiary);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);background:transparent;border:0;border-radius:var(--radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}.rendering-tabs button:hover,.tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.rendering-tabs button.active,.tab.active,.tab[aria-selected=true]{color:var(--text-primary);background:var(--bg-active);box-shadow:inset 0 0 0 1px var(--border-subtle)}.toolbar{gap:var(--space-2);padding:var(--space-2) 0 var(--space-3);background:var(--bg-app);border:0;border-bottom:1px solid var(--border-divider)}@media (max-width: 640px),(max-device-width: 640px){.mobile-nav>summary{width:var(--control-comfortable);height:var(--control-comfortable);color:var(--text-secondary);background:var(--bg-surface);border-color:var(--border-default);box-shadow:none}.mobile-nav[open]>summary{color:var(--accent-primary);background:var(--accent-subtle);border-color:var(--accent-primary)}.mobile-nav-drawer{background:var(--bg-raised);border-color:var(--border-default);border-radius:0 0 var(--radius-card) var(--radius-card)}.mobile-nav-drawer .nav-group>small{font-size:10px}.mobile-nav-drawer nav a{position:relative;border-color:var(--border-divider)}.mobile-nav-drawer nav a.active{border-color:transparent}.account-name,.account-logout{min-height:var(--control-comfortable)}}.object-table-scroll,.shot-elements-table-wrap,.reskin-mapping-table,.palette-table{overflow:auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:none}.object-table,.shot-elements-table,.reskin-mapping-table table,.palette-table table{width:100%;border-spacing:0;border-collapse:separate;font-size:var(--font-size-label)}.object-table th,.object-table td,.shot-elements-table th,.shot-elements-table td,.reskin-mapping-table th,.reskin-mapping-table td,.palette-table th,.palette-table td{height:44px;padding:8px var(--space-3);vertical-align:middle;border-bottom:1px solid var(--border-divider)}.object-table th,.shot-elements-table th,.reskin-mapping-table th,.palette-table th{position:sticky;top:0;z-index:2;color:var(--text-tertiary);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.035em;text-align:left;text-transform:uppercase;background:var(--bg-raised);border-bottom-color:var(--border-subtle)}.object-table tbody tr,.shot-elements-table tbody tr,.reskin-mapping-table tbody tr,.palette-table tbody tr{transition:background-color var(--transition-fast)}.object-table tbody tr:hover td,.shot-elements-table tbody tr:hover td,.reskin-mapping-table tbody tr:hover td,.palette-table tbody tr:hover td{background:var(--bg-hover)}.object-table tbody tr:last-child td,.shot-elements-table tbody tr:last-child td,.reskin-mapping-table tbody tr:last-child td,.palette-table tbody tr:last-child td{border-bottom:0}.object-table td strong,.object-funnel strong,.metric-card strong,.definition-grid strong,.distribution-row strong{font-variant-numeric:tabular-nums}.card,.panel,.project-card,.screen-card,.asset-tile,.shot-card,.rendering-card,.spec-render-card,.object-card,.suite-card,.metric-card,.gate-screen{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.project-card:hover,.screen-card:hover,.asset-tile:hover,.shot-card:hover,.rendering-card:hover,.object-card:hover,.suite-card:hover,.gate-screen:hover{background:var(--bg-raised);border-color:var(--border-default);box-shadow:0 1px #11182706;transform:translateY(-1px)}.project-card:active,.asset-tile:active,.object-card:active,.suite-card:active{transform:translateY(0)}.project-card:focus-visible,.screen-card:focus-within,.asset-tile:focus-visible,.shot-card:focus-within,.object-card:focus-within,.suite-card:focus-within{outline:none;box-shadow:var(--focus-ring)}.metric-card{min-height:112px;padding:var(--space-4)}.metric-card span{color:var(--text-tertiary);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.metric-card strong{margin-top:var(--space-2);color:var(--text-primary);font-size:var(--font-size-display);line-height:var(--line-height-display);letter-spacing:-.025em}.metric-card small{margin-top:var(--space-1);color:var(--text-tertiary);font-size:var(--font-size-caption)}.metric-card.danger{border-color:var(--border-subtle);border-left:2px solid var(--danger)}.project-cover,.shot-preview,.rendering-preview,.object-thumb,.suite-card-image,.cut-job-thumb{background-color:var(--bg-inset)}.project-card footer,.project-cover,.shot-meta,.rendering-meta,.suite-card-copy,.object-card-footer{border-color:var(--border-divider)}.screen-card.is-open,.asset-tile.selected,.suite-card.selected{background:var(--bg-active);border-color:color-mix(in srgb,var(--accent-primary) 58%,var(--border-default));box-shadow:var(--focus-ring)}.rendering-card.approved{border-color:color-mix(in srgb,var(--success) 65%,var(--border-default));box-shadow:inset 2px 0 0 var(--success)}.rendering-card.failed,.rendering-card.outlier,.suite-card.outlier{border-color:color-mix(in srgb,var(--danger) 58%,var(--border-default));box-shadow:inset 2px 0 0 var(--danger)}.object-funnel{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:none}.object-funnel div{padding:var(--space-3) var(--space-4);border-right-color:var(--border-divider)}.object-funnel strong{font-size:var(--font-size-section-title);line-height:var(--line-height-section-title)}.object-funnel i{color:var(--text-disabled);background:var(--bg-surface)}.object-stage>span{min-height:26px;color:var(--text-secondary);background:#1118270b;border:1px solid transparent;border-radius:var(--radius-pill)}.object-stage.stage-done>span{color:var(--success);background:var(--success-subtle)}.object-stage.stage-warning>span{color:var(--warning);background:var(--warning-subtle)}.object-stage.stage-empty>span{color:var(--text-tertiary);background:#11182709}.object-stage>span i{display:grid;width:16px;height:16px;place-items:center;font-size:10px;background:currentColor;border-radius:50%}.object-stage>span i{color:inherit;background:transparent;border:1px solid currentColor}.object-stage-chain>.object-stage>em{color:var(--text-disabled)}.loading-block,.empty-block,.root-state{min-height:176px;padding:var(--space-6);color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}.empty-block{display:grid;align-content:center;justify-items:center;gap:var(--space-2);text-align:center}.empty-block .empty-icon{display:grid;width:40px;height:40px;margin-bottom:var(--space-1);place-items:center;color:var(--accent-primary);font-size:var(--font-size-section-title);background:var(--accent-subtle);border:1px solid color-mix(in srgb,var(--accent-primary) 24%,transparent);border-radius:var(--radius-control)}.empty-block strong{color:var(--text-primary);font-size:var(--font-size-card-title);font-weight:var(--font-weight-semibold)}.empty-block small{max-width:48ch;color:var(--text-tertiary);font-size:var(--font-size-label);line-height:1.5}.empty-block>.primary-button,.empty-block>.secondary-button,.empty-block>a,.empty-block>button{margin-top:var(--space-2)}.loading-block{border-style:dashed}.error-bar,.success-bar,.notice-bar,.notice-warning,.notice-info,.critical-banner{padding:10px var(--space-3);font-size:var(--font-size-label);line-height:20px;border:1px solid transparent;border-radius:var(--radius-control)}.error-bar,.critical-banner{color:var(--danger);background:var(--danger-subtle);border-color:color-mix(in srgb,var(--danger) 26%,transparent)}.success-bar{color:var(--success);background:var(--success-subtle);border-color:color-mix(in srgb,var(--success) 26%,transparent)}.notice-bar,.notice-warning{color:var(--warning);background:var(--warning-subtle);border-color:color-mix(in srgb,var(--warning) 26%,transparent)}.notice-info{color:var(--info);background:var(--info-subtle);border-color:color-mix(in srgb,var(--info) 26%,transparent)}.modal-backdrop,.lightbox,.drawer-backdrop{background:var(--bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card,.resource-preview-modal,.shot-detail-panel{overflow:hidden;background:var(--bg-raised);border:1px solid var(--border-default);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal)}.modal-card{width:min(520px,calc(100vw - var(--space-6)));gap:var(--space-4);padding:var(--space-5)}.modal-card>.panel-heading:first-child,.resource-preview-modal>header,.shot-detail-panel>header{margin:calc(var(--space-5) * -1) calc(var(--space-5) * -1) 0;padding:var(--space-3) var(--space-4);background:var(--bg-raised);border-bottom:1px solid var(--border-divider)}.modal-actions{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-divider)}.asset-drawer{background:var(--bg-raised);border-left-color:var(--border-default);box-shadow:-24px 0 64px #00000061;transition:transform var(--transition-fast)}.drawer-header{background:#171c27f5;border-bottom-color:var(--border-divider)}.drawer-content{background:var(--bg-raised)}@media (max-width: 640px),(max-device-width: 640px){.metric-card{min-height:96px}.loading-block,.empty-block,.root-state{min-height:152px;padding:var(--space-5)}.modal-card{width:calc(100vw - var(--space-4));padding:var(--space-4)}.modal-card>.panel-heading:first-child{margin:calc(var(--space-4) * -1) calc(var(--space-4) * -1) 0}}.login-page{padding:var(--space-5);background:var(--bg-app)}.login-card{width:min(400px,100%);gap:var(--space-4);padding:var(--space-6);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:0 20px 50px #00000047}.login-brand{padding-bottom:var(--space-4);border-bottom:1px solid var(--border-divider)}.login-card label{color:var(--text-secondary);font-size:var(--font-size-label)}.login-card input,.login-card .primary-button{min-height:var(--control-comfortable)}.home-content{max-width:var(--content-max-width);padding:var(--space-6)}.home-title{align-items:end;margin-bottom:var(--space-5)}.home-title h1{font-size:var(--font-size-page-title)}.home-title p{margin-top:var(--space-1)}.project-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.project-card{height:308px}.project-cover{height:184px}.project-card-body{height:124px;gap:var(--space-2);padding:var(--space-4)}.project-card h2{font-size:var(--font-size-card-title)}.project-card footer{padding-top:var(--space-2)}.object-board-heading,.rendering-header,.gate-header,.capture-toolbar,.reskin-spec-toolbar,.suite-hero,.section-heading,.panel-heading{gap:var(--space-4)}.object-board-heading p,.rendering-header p,.gate-header p,.capture-toolbar p,.suite-hero p{color:var(--text-tertiary);font-size:var(--font-size-label);line-height:1.5}.object-board-heading .eyebrow,.suite-hero .eyebrow{color:var(--text-tertiary)}.object-toolbar,.suite-toolbar,.suite-filter,.reskin-spec-toolbar{background:var(--bg-surface);border-color:var(--border-subtle)}.object-toolbar{padding:var(--space-3) var(--space-4)}.object-view-switch{background:var(--bg-inset);border-color:var(--border-subtle)}.object-view-switch button{color:var(--text-tertiary);font-size:var(--font-size-label)}.object-view-switch button.active{color:var(--text-primary);background:var(--bg-active);box-shadow:inset 0 0 0 1px var(--border-subtle)}.object-card-grid{gap:var(--space-4)}.object-card{padding:var(--space-4)}.object-card h2{font-size:var(--font-size-card-title)}.object-next-link:hover{color:var(--accent-hover)}.capture-layout{grid-template-columns:280px minmax(0,1fr);gap:var(--space-4)}.capture-sidebar,.capture-workspace{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}.capture-sidebar{padding:var(--space-3)}.capture-workspace{padding:var(--space-4)}.capture-list{gap:var(--space-1)}.capture-list>button{gap:var(--space-1);padding:var(--space-3);background:transparent;border:1px solid transparent;border-radius:var(--radius-control);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.capture-toolbar{margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-divider)}.shot-grid{gap:var(--space-3)}.shot-meta{min-height:40px;padding:var(--space-2) var(--space-3)}.chat-page{gap:var(--space-3)}.chat-sidebar,.chat-main,.chat-resource-panel{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:none}.chat-list button{border-radius:var(--radius-control);transition:background-color var(--transition-fast),color var(--transition-fast)}.chat-list button:hover{background:var(--bg-hover)}.chat-list button.active{background:var(--accent-subtle);box-shadow:inset 2px 0 0 var(--accent-primary)}.messages{background:var(--bg-app)}.message{color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:none}.message.assistant{background:var(--bg-surface)}.message.user{background:var(--accent-subtle);border-color:color-mix(in srgb,var(--accent-primary) 22%,var(--border-subtle))}.chat-composer{background:var(--bg-raised);border-color:var(--border-subtle);box-shadow:none}.chat-markdown pre,.chat-markdown table{color:var(--text-secondary);background:var(--bg-inset);border-color:var(--border-subtle)}.chat-markdown code{color:var(--text-secondary)}.visual-context-bar{background:var(--bg-surface);border-color:var(--border-divider)}.rendering-page{gap:var(--space-4)}.rendering-header{align-items:end}.rendering-actions{gap:var(--space-2)}.rendering-list,.spec-render-grid,.character-render-grid{gap:var(--space-4)}.rendering-shot-card,.spec-render-card,.character-render-card{padding:var(--space-4)}.rendering-shot-heading{min-height:var(--control-default);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-divider)}.rendering-comparison{gap:var(--space-4)}.rendering-column-label{color:var(--text-tertiary);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em}.source-shot{height:210px}.rendering-roots{min-height:210px}.rendering-preview img{height:144px}.feedback-summary{color:var(--text-secondary)}.rendering-suite-entry{background:var(--accent-subtle);border-color:color-mix(in srgb,var(--accent-primary) 22%,transparent)}.suite-page{gap:var(--space-4)}.suite-hero{padding:var(--space-5);background:var(--bg-surface)}.suite-summary{color:var(--text-tertiary);background:var(--bg-inset);border-color:var(--border-subtle)}.suite-summary strong{color:var(--text-primary);font-size:var(--font-size-section-title)}.suite-contact-sheet{gap:var(--space-3)}.suite-card{background:var(--bg-surface)}.suite-board-panel{padding:var(--space-4)}.suite-board-workbench{background:var(--bg-inset);border-color:var(--border-subtle)}.cuts-page,.cut-studio{gap:var(--space-4)}.cuts-panel,.cut-studio-toolbar,.cut-canvas-panel,.cut-node-drawer>.panel{background:var(--bg-surface);border-color:var(--border-subtle)}.cut-job-row{min-height:76px;border-bottom-color:var(--border-divider)}.cut-job-row:hover{background:var(--bg-hover);transform:none}.cut-source-option{background:var(--bg-inset);border-color:var(--border-subtle)}.cut-source-option:hover{background:var(--bg-hover);border-color:var(--border-default)}.cut-source-option.selected{background:var(--accent-subtle);border-color:var(--accent-primary)}.cut-studio-heading{padding-bottom:var(--space-2);border-bottom:1px solid var(--border-divider)}.reskin-spec-page,.design-doc-page,.numeric-plan-page{gap:var(--space-4)}.reskin-overview-grid,.reskin-character-grid,.reskin-scene-grid{gap:var(--space-3)}.reskin-narrative-card,.reskin-theme-card,.reskin-character-card,.reskin-scene-card{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:none}.reskin-mapping-section{padding:var(--space-4)}.reskin-mapping-head{padding-bottom:var(--space-3);border-bottom-color:var(--border-divider)}.reskin-mapping-row{min-height:52px;border-bottom-color:var(--border-divider)}.theme-route{color:var(--text-secondary);background:var(--bg-inset);border-color:var(--border-subtle)}.design-doc-toolbar{padding:var(--space-3);background:var(--bg-surface);border-color:var(--border-subtle)}.design-doc-editor,.markdown-body{color:var(--text-secondary);background:var(--bg-surface);border-color:var(--border-subtle)}.markdown-body h1,.markdown-body h2,.markdown-body h3{color:var(--text-primary)}.markdown-body blockquote{color:var(--text-secondary);background:var(--bg-inset);border-left-color:var(--accent-primary)}.markdown-body pre{background:var(--bg-inset);border-color:var(--border-subtle)}.metric-grid{gap:var(--space-3)}.distribution-list{gap:var(--space-2)}.distribution-track,.progress{background:var(--bg-active)}.distribution-track i,.progress>i{background:var(--accent-primary)}.screen-grid{gap:var(--space-3)}.screen-card-main{min-height:144px;padding:var(--space-4)}.screen-card-main:hover{background:var(--bg-hover)}.screen-counts{margin:var(--space-3) 0 var(--space-2);color:var(--text-secondary)}.screen-detail{background:var(--bg-raised);border-top-color:var(--border-divider)}.asset-grid{gap:var(--space-2)}.asset-tile{padding:var(--space-2)}.asset-tile-meta,.asset-tile code{color:var(--text-tertiary);font-size:var(--font-size-caption)}.spec-layout{gap:var(--space-4)}.spec-editor,.preview-panel{padding:var(--space-4)}.palette-row{min-height:42px;border-bottom-color:var(--border-divider)}.rule-grid,.preview-metrics{gap:var(--space-3)}.gate-screen-list{gap:var(--space-2)}.gate-screen-summary{min-height:48px;color:var(--text-secondary)}.gate-screen-summary:hover{background:var(--bg-hover)}.violation-list{background:var(--bg-raised);border-top-color:var(--border-divider)}@media (max-width: 900px){.capture-layout{grid-template-columns:minmax(0,1fr)}.capture-sidebar,.capture-workspace{padding:var(--space-3)}}@media (max-width: 640px),(max-device-width: 640px){.login-page{padding:var(--space-4)}.login-card{padding:var(--space-5)}.home-content{padding:var(--space-5) var(--space-4)}.project-card{height:306px}.project-cover{height:182px}.capture-sidebar,.capture-workspace{border-radius:var(--radius-card)}.capture-toolbar{align-items:flex-start}.object-funnel{grid-template-columns:repeat(2,minmax(0,1fr))}.object-funnel div{border-bottom:1px solid var(--border-divider)}.suite-hero{padding:var(--space-4)}.rendering-shot-card,.spec-render-card,.character-render-card{padding:var(--space-3)}.source-shot,.rendering-roots{min-height:180px;height:auto}.asset-grid{gap:var(--space-3)}}:root{--bg-app: #eef0f4;--bg-surface: #ffffff;--bg-raised: #ffffff;--bg-hover: #ffffff;--bg-active: #f4f5f7;--bg-inset: #f4f5f7;--border-divider: rgba(17, 24, 39,.045);--border-subtle: rgba(17, 24, 39,.075);--border-default: rgba(17, 24, 39,.12);--border-strong: rgba(17, 24, 39,.2);--accent-primary: #629dff;--accent-hover: #7dafff;--accent-subtle: rgba(98,157,255,.13);--focus-ring: 0 0 0 2px rgba(98,157,255,.32)}html,body,#root{min-height:100%;background:var(--bg-app)}body{color:var(--text-primary);letter-spacing:-.005em}.app-shell{min-height:100vh;background:var(--bg-app)}.workspace{width:auto;max-width:none;min-height:100vh;margin:0;padding:32px 36px 64px}.page-stack{gap:20px}.panel{padding:20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 1px #11182705,0 10px 30px #00000014}.panel-heading{min-height:36px;margin-bottom:16px}.panel-heading h2,.panel h2,.panel h1{color:var(--text-primary);font-weight:600}.panel-heading>span,.muted{color:#7f8999}@media (min-width: 1101px){.platform-topbar{position:fixed;inset:0 auto 0 0;z-index:50;display:flex;width:248px;height:100vh;min-height:100vh;flex-direction:column;align-items:stretch;gap:0;padding:18px 14px 14px;background:#fff;border-right:1px solid var(--border-subtle);border-bottom:0;box-shadow:8px 0 30px #0000001f;-webkit-backdrop-filter:none;backdrop-filter:none}.platform-topbar>.brand{width:100%;min-width:0;height:44px;flex:0 0 auto;padding:4px 8px;border-radius:8px}.platform-topbar>.brand:hover{background:var(--bg-hover);opacity:1}.platform-topbar .brand>i{width:32px;height:32px}.platform-topbar .brand span{min-width:0}.platform-topbar .brand strong{font-size:13px}.platform-topbar .brand small{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.desktop-nav-shell{display:grid;min-width:0;flex:1 1 auto;grid-template-rows:auto minmax(0,1fr);gap:18px;padding-top:20px;overflow:hidden}.desktop-nav-shell>.context-selectors{display:grid;width:100%;gap:8px}.desktop-nav-shell .context-selectors label{display:grid;width:100%;height:auto;gap:5px;padding:0;color:#677183;background:transparent;border:0}.desktop-nav-shell .context-selectors label>span{display:block;padding-left:8px;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.desktop-nav-shell .context-selectors select{width:100%;max-width:none;height:36px;padding:0 10px;color:#d8dde6;background:var(--bg-surface);border:1px solid var(--border-subtle)}.desktop-nav-shell>nav{display:block;height:auto;min-height:0;margin:0;overflow-y:auto}.desktop-nav-shell .nav-group{display:grid;height:auto;gap:3px;padding:26px 0 10px;border:0}.desktop-nav-shell .nav-group:first-child{padding-top:24px}.desktop-nav-shell .nav-group>small{position:absolute;top:5px;left:10px;display:block;color:#5f6878;font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase}.desktop-nav-shell .nav-group a,.desktop-nav-shell .nav-more>summary{position:relative;display:flex;width:100%;height:36px;justify-content:flex-start;padding:0 12px 0 14px!important;color:#8d96a6;font-size:13px;border:0;border-radius:8px}.desktop-nav-shell .nav-group a:before,.desktop-nav-shell .nav-more.active>summary:before{position:absolute;top:9px;bottom:9px;left:4px;width:2px;content:"";background:transparent;border-radius:2px}.desktop-nav-shell .nav-group a:hover,.desktop-nav-shell .nav-more>summary:hover{color:var(--text-primary);background:var(--bg-hover)}.desktop-nav-shell .nav-group a.active,.desktop-nav-shell .nav-more.active>summary{color:#d9e8ff;background:var(--accent-subtle)}.desktop-nav-shell .nav-group a.active:before,.desktop-nav-shell .nav-more.active>summary:before{background:var(--accent-primary)}.desktop-nav-shell .nav-more{width:100%;height:auto}.desktop-nav-shell .nav-more-menu{position:static;width:100%;margin-top:4px;background:transparent;border:0;box-shadow:none}.platform-topbar>.account-controls{width:100%;flex:0 0 auto;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border-divider)}.platform-topbar .account-name{min-width:0;flex:1;justify-content:flex-start}.workspace{margin-left:248px}}@media (max-width: 640px),(max-device-width: 640px){.workspace{padding:16px 12px 40px}.panel{padding:16px}}.primary-button,.secondary-button,.icon-button,.account-name,.account-logout,.danger-button,.upload-button,.shot-name,.primary-star,.feedback-toggle{min-height:36px;padding:0 13px;font-size:13px;font-weight:550;line-height:1;border-radius:8px;transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.primary-button{color:#eef4ff;background:linear-gradient(180deg,#79afff,#5d97f2);border:1px solid #83b5ff;box-shadow:inset 0 1px #1118274d,0 1px 2px #00000040}.primary-button:hover:not(:disabled){background:linear-gradient(180deg,#8bbaff,#6aa3fa);border-color:#9bc5ff;box-shadow:inset 0 1px #11182757,0 3px 10px #2862be38;transform:translateY(-1px)}.primary-button:active:not(:disabled){background:#548de7;box-shadow:inset 0 1px 3px #0003;transform:translateY(0)}.secondary-button{color:#c3cad5;background:linear-gradient(180deg,#fff,#fff);border:1px solid var(--border-default);box-shadow:inset 0 1px #11182709,0 1px 2px #0000002e}.secondary-button:hover:not(:disabled){color:var(--text-primary);background:#f0f4fa;border-color:var(--border-strong);transform:translateY(-1px)}.secondary-button:active:not(:disabled){background:#eef1f6;transform:translateY(0)}.icon-button{width:36px;padding:0;color:#8d97a8;background:transparent;border:1px solid transparent}.icon-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-subtle)}.danger-button,.secondary-button.danger-outline{color:#ff9a9a;background:#f2767614;border-color:#f2767640}.danger-button:hover,.secondary-button.danger-outline:hover{color:#ffd2d2;background:#f2767629;border-color:#f2767673}.primary-button:disabled,.secondary-button:disabled,.icon-button:disabled,button:disabled{cursor:not-allowed;opacity:.4;transform:none!important}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:38px;padding:8px 11px;color:var(--text-primary);font-size:13px;background:#f4f5f7;border:1px solid var(--border-default);border-radius:8px;box-shadow:inset 0 1px 2px #0000003d;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}input:not([type=checkbox]):not([type=radio]):hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){background:#f8f9fb;border-color:var(--border-strong)}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{outline:none;background:#fff;border-color:var(--accent-primary);box-shadow:0 0 0 2px #629dff3d,inset 0 1px 2px #0003}input::placeholder,textarea::placeholder{color:#525c6c;opacity:1}label,.field-stack{color:#9aa3b2}input[type=checkbox],input[type=radio]{width:16px;height:16px;accent-color:var(--accent-primary)}.badge,.object-kind,.object-blockers span,.rendering-outlier-badge,.task-status>span{display:inline-flex;min-height:22px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;line-height:16px;letter-spacing:.015em;background:#1118270e;border:1px solid rgba(17,24,39,.07);border-radius:999px}.badge-done,.badge-success,.object-clear{color:#72d8aa;background:#48c78e1f;border-color:#48c78e2e}.badge-half,.badge-warning{color:#f0be6b;background:#e8ae551f;border-color:#e8ae552e}.badge-text,.badge-danger,.rendering-outlier-badge{color:#ff9696;background:#f276761f;border-color:#f276762e}.badge-chrome,.badge-info{color:#91bbff;background:#629dff1f;border-color:#629dff2e}.badge-carrier{color:#c2adff;background:#a184ff1f;border-color:#a184ff2e}.badge-content{color:#72d8aa;background:#48c78e1f;border-color:#48c78e2e}.rendering-tabs,.object-view-switch{display:inline-flex;gap:3px;padding:4px;background:#f4f5f7;border:1px solid var(--border-subtle);border-radius:9px}.rendering-tabs button,.object-view-switch button{min-height:32px;padding:0 13px;color:#788293;font-size:12px;font-weight:550;background:transparent;border:0;border-radius:6px}.rendering-tabs button:hover,.object-view-switch button:hover{color:#cbd1da;background:#1118270a}.rendering-tabs button.active,.object-view-switch button.active{color:var(--text-primary);background:#eef4ff;box-shadow:inset 0 0 0 1px #1118271a,0 1px 2px #00000040}.toolbar{padding:12px 0 14px;background:transparent;border-bottom:1px solid var(--border-divider)}.error-bar,.success-bar,.notice-bar,.notice-warning,.notice-info,.critical-banner{padding:10px 12px;font-size:12px;font-weight:500;border-radius:8px}.error-bar,.critical-banner{color:#faa;background:#f276761a;border:1px solid rgba(242,118,118,.28)}.success-bar{color:#83dfb7;background:#48c78e1a;border:1px solid rgba(72,199,142,.25)}.notice-bar,.notice-warning{color:#efc477;background:#e8ae551a;border:1px solid rgba(232,174,85,.25)}.notice-info{color:#9bc1ff;background:#629dff1a;border:1px solid rgba(98,157,255,.25)}.project-card,.object-card,.screen-card,.asset-tile,.shot-card,.rendering-card,.spec-render-card,.character-render-card,.suite-card,.metric-card,.gate-screen,.reskin-narrative-card,.reskin-theme-card,.reskin-character-card,.reskin-scene-card{background:#fff;border:1px solid rgba(17,24,39,.075);border-radius:12px;box-shadow:0 1px #11182705,0 8px 24px #00000014;transition:background-color .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease}.project-card:hover,.object-card:hover,.screen-card:hover,.asset-tile:hover,.shot-card:hover,.rendering-card:hover,.suite-card:hover,.gate-screen:hover{background:#fff;border-color:#7dafff57;box-shadow:0 12px 34px #0003;transform:translateY(-2px)}.metric-card{min-height:104px;padding:18px}.metric-card span{color:#778192;font-size:11px;font-weight:600;letter-spacing:.055em;text-transform:uppercase}.metric-card strong{margin-top:10px;color:var(--text-primary);font-size:27px;font-weight:650;line-height:1;letter-spacing:-.035em}.metric-card small{margin-top:10px;color:#727c8c;font-size:11px}.metric-card.danger{border-left:3px solid #f27676}.object-table-scroll,.shot-elements-table-wrap,.reskin-mapping-table,.palette-table{background:#fff;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 28px #0000001a}.object-table,.shot-elements-table{border-collapse:separate;border-spacing:0}.object-table th,.object-table td,.shot-elements-table th,.shot-elements-table td{height:46px;padding:9px 13px;border-bottom:1px solid var(--border-divider)}.object-table th,.shot-elements-table th{position:sticky;top:0;z-index:3;color:#737d8e;font-size:10px;font-weight:650;letter-spacing:.085em;text-transform:uppercase;background:#fff}.object-table tbody tr:hover td,.shot-elements-table tbody tr:hover td{background:#f4f5f7}.object-table tbody tr:last-child td,.shot-elements-table tbody tr:last-child td{border-bottom:0}.object-table td{color:#b7bec9;font-size:12px}.object-table td strong{color:#edf0f5}.object-funnel{background:#fff;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 28px #00000014}.object-funnel div{min-height:86px;justify-content:center;padding:14px 18px;border-right:1px solid var(--border-divider)}.object-funnel small{color:#707a8b;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.object-funnel strong{color:var(--text-primary);font-size:25px;font-weight:650;letter-spacing:-.03em}.object-stage>span{min-height:26px;padding:3px 7px;color:#818b9b;background:#1118270a;border:1px solid rgba(17,24,39,.06);border-radius:999px}.object-stage.stage-done>span{color:#72d8aa;background:#48c78e1a;border-color:#48c78e26}.object-stage.stage-warning>span{color:#efbd69;background:#e8ae551a;border-color:#e8ae5526}.object-stage.stage-empty>span{color:#687283}.object-stage em{color:#444d5c}.loading-block,.empty-block,.root-state,.rendering-pending,.rendering-empty{min-height:190px;padding:30px;color:#737d8d;background:#f4f5f7;border:1px dashed rgba(125,151,190,.3);border-radius:12px}.empty-block{display:grid;align-content:center;justify-items:center;gap:8px;text-align:center}.empty-block .empty-icon{display:grid;width:44px;height:44px;margin-bottom:4px;place-items:center;color:#8eb9ff;font-size:20px;background:#629dff1a;border:1px solid rgba(98,157,255,.22);border-radius:11px}.empty-block strong{color:var(--text-primary);font-size:14px;font-weight:600}.empty-block small{max-width:48ch;color:#6f7989;font-size:12px;line-height:1.55}.modal-backdrop,.lightbox,.drawer-backdrop{background:#020408bd;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-card,.shot-detail-panel,.resource-preview-modal{background:#fff;border:1px solid rgba(17,24,39,.12);border-radius:12px;box-shadow:0 30px 90px #00000094}.modal-card{gap:16px;padding:22px}.modal-card>.panel-heading:first-child,.shot-detail-panel>header,.resource-preview-modal>header{padding-bottom:14px;border-bottom:1px solid var(--border-divider)}.modal-actions{padding-top:14px;border-top:1px solid var(--border-divider)}.asset-drawer{background:#fff;border-left:1px solid var(--border-default);box-shadow:-28px 0 70px #00000073}.drawer-header{background:#151922f5;border-bottom:1px solid var(--border-divider)}.drawer-content{background:#fff}.home-shell{background:radial-gradient(circle at 72% -18%,rgba(75,116,185,.12),transparent 34%),var(--bg-app)}.home-header{height:64px;padding:0 max(28px,calc((100vw - 1440px)/2));background:#090b10e6;border-bottom:1px solid var(--border-subtle)}.home-content{max-width:1440px;padding:48px 32px 72px}.home-title{margin-bottom:28px}.home-title h1{font-size:26px;letter-spacing:-.035em}.home-title p{color:#727c8d;font-size:13px}.home-title>span{padding:4px 9px;color:#8993a3;background:#1118270a;border:1px solid var(--border-subtle);border-radius:999px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:20px}.project-card{height:332px;overflow:hidden;text-align:left}.project-cover{height:206px;background:linear-gradient(145deg,#eef4ff,#f4f5f7);border-bottom:1px solid var(--border-divider)}.project-cover span{color:#657188;font-size:34px}.project-card-body{height:126px;gap:8px;padding:16px 18px}.project-card-body h2{font-size:15px}.project-card-body code{color:#626c7d}.project-card footer{padding-top:10px;border-top:1px solid var(--border-divider)}.project-card footer strong{color:#dce1e9}.object-board-heading{padding:24px 26px;background:linear-gradient(110deg,#fff,#fff 62%);border-color:#629dff2e}.object-board-heading .eyebrow{color:#7394c8;font-size:10px}.object-board-heading h1{margin:6px 0 4px;font-size:23px;letter-spacing:-.03em}.object-board-heading p{max-width:720px;color:#828c9b;font-size:13px}.object-toolbar{padding:14px 16px;background:#fff}.object-toolbar label{color:#687283;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.object-toolbar>span{align-self:center;padding:4px 9px;background:#1118270a;border-radius:999px}.object-card{gap:14px;padding:18px}.object-card-footer{margin-top:2px;padding-top:14px}.rendering-header{padding:22px;background:linear-gradient(110deg,#fff,#fff);border-color:#629dff29}.rendering-header>.panel-heading{margin-bottom:16px}.rendering-header h1{font-size:22px;letter-spacing:-.03em}.rendering-header .panel-heading span{color:#7d8797}.rendering-actions{display:flex;min-height:50px;align-items:center;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-divider)}.rendering-list,.spec-render-grid,.character-render-grid{gap:16px}.rendering-shot-card,.spec-render-card,.character-render-card{padding:18px}.rendering-shot-heading{min-height:42px;padding-bottom:12px;border-bottom:1px solid var(--border-divider)}.rendering-comparison{grid-template-columns:minmax(190px,.34fr) minmax(0,1fr);gap:18px}.rendering-column-label{color:#687386;font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.source-shot{height:220px;background:#eef0f4;border:1px solid var(--border-subtle);border-radius:10px}.rendering-roots{min-height:220px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.rendering-card{overflow:hidden;background:#fff;border-radius:10px}.rendering-preview img{height:154px;background:#eef0f4}.rendering-meta{min-height:38px;padding:5px 8px;border-top:1px solid var(--border-divider)}.rendering-card-actions{padding:0 8px 8px}.capture-layout{grid-template-columns:280px minmax(0,1fr);gap:18px}.capture-sidebar{position:sticky;top:24px;max-height:calc(100vh - 48px);padding:14px;overflow-y:auto;background:#fff}.capture-workspace{min-height:calc(100vh - 64px);padding:20px}.capture-list{gap:3px}.capture-list>button{padding:11px 12px;background:transparent;border:1px solid transparent;border-radius:8px}.capture-list>button:hover{background:var(--bg-hover);border-color:transparent}.capture-list>button.active{background:var(--accent-subtle);border-color:transparent;box-shadow:inset 2px 0 0 var(--accent-primary)}.capture-toolbar{min-height:58px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--border-divider)}.capture-toolbar h1{font-size:20px;letter-spacing:-.025em}.shot-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.shot-card{overflow:hidden}.shot-preview{background:#eef0f4}.shot-meta{min-height:40px;padding:7px 10px;border-top:1px solid var(--border-divider)}.chat-layout{grid-template-columns:286px minmax(0,1fr);gap:14px}.chat-sidebar{padding:12px;background:#fff}.chat-main{overflow:hidden;background:#fff;border:1px solid var(--border-subtle);border-radius:12px}.resource-worldview-mini{padding:12px;background:linear-gradient(145deg,#629dff17,#629dff06);border:1px solid rgba(98,157,255,.14);border-radius:9px}.resource-section-heading{min-height:34px;color:#858f9f}.chat-list{gap:3px}.chat-list>div{border-radius:8px}.chat-list>div:hover{background:var(--bg-hover)}.chat-list>div.active{background:var(--accent-subtle);box-shadow:inset 2px 0 0 var(--accent-primary)}.messages{padding:22px 24px;background:#f4f5f7}.message{max-width:min(780px,88%);padding:13px 15px;background:#fff;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 6px 18px #00000014}.message.user{margin-left:auto;background:#eef4ff;border-color:#629dff2e}.message.assistant{margin-right:auto}.chat-composer{padding:14px;background:#fff;border-top:1px solid var(--border-subtle)}.chat-composer textarea{min-height:84px;background:#f4f5f7}.visual-context-bar{background:#f8f9fb;border-color:var(--border-divider)}@media (max-width: 1100px){.capture-layout,.chat-layout{grid-template-columns:minmax(0,1fr)}.capture-sidebar{position:static;max-height:none}}@media (max-width: 640px),(max-device-width: 640px){.home-content{padding:28px 16px 48px}.project-grid{gap:16px}.project-card{height:306px}.project-cover{height:182px}.object-board-heading,.rendering-header{padding:18px}.object-funnel{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-workspace{padding:14px}.rendering-comparison{grid-template-columns:1fr}.messages{padding:14px 12px}.message{max-width:94%}}.page-surface{min-width:0;color:var(--text-primary)}.page-header{position:relative;padding:20px 22px;background:linear-gradient(135deg,#629dff13,#fffffff5 44%);border:1px solid rgba(98,157,255,.14);border-radius:12px;box-shadow:inset 0 1px #11182709}.page-header:before{position:absolute;top:18px;bottom:18px;left:0;width:2px;content:"";background:var(--accent-primary);border-radius:0 2px 2px 0}.page-header h1,.page-header h2{letter-spacing:-.025em}.btn{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:0 13px;white-space:nowrap;border:1px solid transparent;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.btn-primary{color:var(--text-primary);background:linear-gradient(180deg,#6aa4ff,#4f87e8);border-color:#7eb2ffb8;box-shadow:inset 0 1px #11182733,0 2px 8px #265bb433}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#78adff,#5a91ed);border-color:#9ac3ffdb;box-shadow:inset 0 1px #1118273d,0 5px 14px #265bb440;transform:translateY(-1px)}.btn-secondary{color:#c8ced8;background:linear-gradient(180deg,#fff,#fff);border-color:#1118271b;box-shadow:inset 0 1px #11182709,0 1px 2px #0003}.btn-secondary:hover:not(:disabled){color:var(--text-primary);background:linear-gradient(180deg,#f4f5f7,#eef1f6);border-color:#1118272b;transform:translateY(-1px)}.btn-ghost{color:#8d97a8;background:transparent;border-color:transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:#1118270e;border-color:#11182712}.btn-danger{color:var(--text-primary);background:#d95f65;border-color:#e5787d}.btn.icon-button{width:36px;flex:0 0 36px;padding:0}.status-badge{min-height:22px;padding:2px 8px;font-variant-numeric:tabular-nums;box-shadow:inset 0 1px #11182706}.empty-state{min-height:220px;padding:36px 24px;background:radial-gradient(circle at 50% 22%,rgba(98,157,255,.075),transparent 42%),#fff;border:1px dashed rgba(17,24,39,.105);border-radius:12px}.empty-state .empty-icon{width:44px;height:44px;color:#9fc2ff;background:#629dff1a;border:1px solid rgba(98,157,255,.17);border-radius:11px}.empty-state strong{margin-top:4px;font-size:15px}.empty-state small{color:#747f90}.panel,.metric-card,.project-card,.object-card,.screen-card,.asset-tile,.rendering-shot-card,.spec-render-card,.character-render-card,.gate-screen{border-color:#11182713;box-shadow:inset 0 1px #11182706,0 1px 2px #00000029}.project-card:hover,.object-card:hover,.screen-card:hover,.asset-tile:hover,.rendering-card:hover,.gate-screen:hover{border-color:#8bb4f63d;box-shadow:inset 0 1px #11182709,0 8px 24px #00000029;transform:translateY(-1px)}table thead th{height:36px;color:#737e8e;font-size:10px;font-weight:650;letter-spacing:.075em;text-transform:uppercase;background:#fff}table tbody tr{height:46px;transition:background-color .15s ease}table tbody tr:hover{background:#11182709}table td{vertical-align:middle;border-bottom-color:#1118270b}.modal-backdrop{background:#020408bd;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-card,.drawer-content{background:#fff;border-color:#11182721;box-shadow:0 28px 80px #0000008f,inset 0 1px #1118270a}.modal-card>.panel-heading:first-child,.drawer-header{min-height:42px;padding-bottom:13px;border-bottom:1px solid rgba(17,24,39,.065)}@media (max-width: 640px),(max-device-width: 640px){.page-header{padding:17px 18px}.empty-state{min-height:184px;padding:28px 18px}.btn{min-height:36px}}@media (min-width: 1101px){.capture-layout{display:grid;width:100%;min-width:0;grid-template-columns:280px minmax(0,1fr);align-items:start}details.capture-list-drawer{display:block;width:280px;min-width:0}details.capture-list-drawer>summary{display:none}details.capture-list-drawer:not([open])>.capture-sidebar,details.capture-list-drawer>.capture-sidebar{display:block!important;width:100%;visibility:visible}.capture-sidebar{top:20px;max-height:calc(100dvh - 40px)}.capture-workspace{width:100%;min-width:0}.workspace:has(>.chat-page){height:100dvh;min-height:0;padding-top:20px;padding-bottom:20px;overflow:hidden}.workspace>.chat-page{width:100%;height:100%;min-height:0;overflow:hidden}.chat-page>.chat-layout{height:100%;min-height:0;flex:1 1 0;grid-template-rows:minmax(0,1fr);overflow:hidden}.chat-resource-shell,.chat-resource-panel,.chat-main{height:100%;min-height:0}.chat-main{display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.chat-main>.messages{min-height:0;overflow-y:auto}.chat-main>.chat-composer{position:relative;inset:auto;min-height:0;flex:0 0 auto}.project-resource-section,.resource-library-scroll{min-height:0}.resource-group>summary>span,.resource-group>summary>small,.resource-documents>button>span,.resource-documents>button>small{visibility:visible;opacity:1}}@media (min-width: 1101px){.project-resource-section .resource-group>summary{grid-template-columns:12px minmax(0,1fr) auto}.project-resource-section .resource-group>summary:before{grid-column:1;margin-right:0}.project-resource-section .resource-group>summary>span{grid-column:2;margin-left:0;overflow:hidden;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap}.project-resource-section .resource-group>summary>small{grid-column:3;color:var(--text-tertiary)}}.shot-card{display:grid;grid-template-rows:210px auto auto;align-content:start;background:#fff}.shot-card>.shot-preview{display:block;position:relative;width:100%;height:210px;min-width:0;min-height:0;overflow:hidden;background:var(--bg-inset);border-bottom:1px solid var(--border-divider)}.shot-card>.shot-preview>img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}.shot-card>.shot-meta{min-width:0;color:var(--text-secondary);background:#fff}.shot-card>.shot-meta+.shot-meta{background:#f4f5f7;border-top:1px solid var(--border-divider)}.shot-card .shot-name{color:#b7c0ce}.shot-card .shot-meta>span{color:#727d8e}.shot-card .shot-meta select{width:100%;min-width:0}.design-doc-workspace:not(.editing){min-height:440px}.design-doc-workspace:not(.editing)>.markdown-body{min-height:440px}.asset-drawer:not(.open){visibility:hidden;pointer-events:none}.asset-drawer.open{visibility:visible;pointer-events:auto}html,body,#root{min-height:100%;color:var(--text-primary);background:var(--bg-app);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}body{min-width:1120px;letter-spacing:0;background:var(--bg-app)}.app-shell,.home-shell,.login-page{background:var(--bg-app)}::selection{color:#fff;background:#3b82f6}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d5d8e0;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#c2c6d0}.topbar,.home-header{color:var(--text-primary);background:#fffffff5;border-color:var(--border-subtle);box-shadow:0 1px #11182708;-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%)}.brand>i{color:#fff;background:var(--gradient-hero);border:0;border-radius:12px;box-shadow:0 6px 16px #4c8dff38}.brand strong{color:var(--text-primary)}.brand small{color:var(--text-secondary)}.workspace{width:auto;max-width:none;min-height:100vh;margin:0;padding:32px 36px 64px;background:var(--bg-app)}@media (min-width: 1101px){.platform-topbar{width:200px;padding:18px 12px 14px;color:var(--text-primary);background:#fff;border-right:1px solid var(--border-subtle);box-shadow:4px 0 18px #11182709}.platform-topbar>.brand{height:48px;padding:4px 8px;border-radius:12px}.platform-topbar>.brand:hover{background:#f4f5f7}.platform-topbar .brand>i{width:36px;height:36px}.platform-topbar .brand strong{color:#1a1a1a;font-size:13px}.platform-topbar .brand small{color:#8a8f9c}.desktop-nav-shell{gap:14px;padding-top:18px}.desktop-nav-shell .context-selectors label{color:#8a8f9c}.desktop-nav-shell .context-selectors label>span{color:#b3b8c4}.desktop-nav-shell .context-selectors select{color:#1a1a1a;background:#f4f5f7;border:1px solid #ececf1;border-radius:12px;box-shadow:none}.desktop-nav-shell .nav-group{gap:5px}.desktop-nav-shell .nav-group>small{color:#b3b8c4}.desktop-nav-shell .nav-group a,.desktop-nav-shell .nav-more>summary{height:38px;padding:0 12px!important;color:#8a8f9c;border-radius:12px}.desktop-nav-shell .nav-group a:before,.desktop-nav-shell .nav-more.active>summary:before{display:none}.desktop-nav-shell .nav-group a:hover,.desktop-nav-shell .nav-more>summary:hover{color:#1a1a1a;background:#f4f5f7}.desktop-nav-shell .nav-group a.active,.desktop-nav-shell .nav-more.active>summary{color:#2563eb;font-weight:600;background:#eef4ff}.desktop-nav-shell .nav-more-menu{background:transparent}.platform-topbar>.account-controls{border-top-color:#ececf1}.workspace{margin-left:200px}}.account-name,.account-logout{color:var(--text-secondary);background:transparent;border-color:transparent}.account-name{color:var(--text-primary);background:#f4f5f7;border-color:#ececf1}.account-name:not(:disabled):hover{background:#eef0f4;border-color:#dfe3eb}.account-logout{color:#c2414b}.account-logout:hover{color:#a72f3a;background:#fff0f1}.mobile-nav-drawer,.nav-more-menu{color:var(--text-primary);background:#fff;border-color:#ececf1;box-shadow:var(--shadow-raised)}@media (max-width: 1100px){.workspace{padding:22px 20px 48px}}@media (max-width: 640px),(max-device-width: 640px){body{min-width:0}.workspace{padding:16px 12px 40px}.topbar{background:#fff}}.panel,.card,.project-card,.metric-card,.screen-card,.asset-tile,.shot-card,.rendering-shot-card,.rendering-card,.spec-render-card,.character-render-card,.object-card,.suite-card,.gate-screen,.reskin-narrative-card,.reskin-scene-card,.reskin-character-card{color:var(--text-primary);background:#fff;border:1px solid #ececf1;border-radius:16px;box-shadow:0 1px 2px #11182709}.panel{padding:20px}.panel-heading h1,.panel-heading h2,.panel h1,.panel h2,.panel h3{color:#1a1a1a}.panel-heading>span,.panel-heading small,.muted{color:#8a8f9c}.project-card:hover,.screen-card:hover,.asset-tile:hover,.shot-card:hover,.rendering-card:hover,.object-card:hover,.suite-card:hover,.gate-screen:hover{background:#fff;border-color:#d7dce6;box-shadow:0 8px 22px #11182711;transform:translateY(-1px)}.page-header,.object-board-heading,.rendering-header,.gate-header,.suite-hero,.reskin-spec-toolbar{color:#1a1a1a;background:linear-gradient(120deg,#f3f7ff,#f8f4ff);border:1px solid #e5e8f4;border-radius:16px;box-shadow:none}.page-header:before{background:var(--gradient-hero)}.page-header p,.object-board-heading p,.rendering-header p,.gate-header p,.suite-hero p{color:#8a8f9c}.btn,.primary-button,.secondary-button,.icon-button,.danger-button{min-height:36px;color:#1a1a1a;border-radius:12px;box-shadow:none}.btn-primary,.primary-button{color:#fff;background:#3b82f6;border-color:#3b82f6;box-shadow:0 4px 10px #3b82f62e}.btn-primary:hover:not(:disabled),.primary-button:hover:not(:disabled){color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 6px 14px #3b82f638;transform:translateY(-1px)}.btn-secondary,.secondary-button{color:#4b5563;background:#fff;border-color:#dfe3eb;box-shadow:0 1px 2px #11182706}.btn-secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled){color:#1a1a1a;background:#f4f5f7;border-color:#cdd3df;transform:none}.btn-ghost,.icon-button{color:#8a8f9c;background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled),.icon-button:hover:not(:disabled){color:#1a1a1a;background:#f0f1f5;border-color:transparent}.btn-danger,.danger-button{color:#fff;background:#dc5b65;border-color:#dc5b65}.secondary-button.danger-outline{color:#c2414b;background:#fff0f1;border-color:#f3c7cb}.secondary-button.danger-outline:hover{color:#a72f3a;background:#ffe5e8;border-color:#e8adb3}button:disabled,.btn:disabled,.primary-button:disabled,.secondary-button:disabled,.icon-button:disabled{opacity:.42}button:focus-visible,a:focus-visible,summary:focus-visible{outline:none;box-shadow:var(--focus-ring)}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:38px;padding:8px 11px;color:#1a1a1a;background:#f4f5f7;border:1px solid #ececf1;border-radius:12px;box-shadow:none}input:not([type=checkbox]):not([type=radio]):hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){color:#1a1a1a;background:#f0f1f5;border-color:#dfe3eb}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{color:#1a1a1a;background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f629}input::placeholder,textarea::placeholder{color:#b3b8c4}label,.field-stack,.modal-card label{color:#6f7580}.badge,.status-badge,.object-kind,.object-blockers span,.rendering-outlier-badge,.task-status>span{color:#667085;background:#f4f5f7;border:1px solid #ececf1;border-radius:999px;box-shadow:none}.badge-done,.badge-success,.object-clear{color:#178754;background:#e8f7ef;border-color:#ccebd9}.badge-half,.badge-warning{color:#a16207;background:#fff7df;border-color:#f4e3ad}.badge-text,.badge-danger,.rendering-outlier-badge{color:#c2414b;background:#fff0f1;border-color:#f3c7cb}.badge-chrome,.badge-info{color:#2563eb;background:#eef4ff;border-color:#d3e3ff}.badge-content{color:#178754;background:#e8f7ef;border-color:#ccebd9}.error-bar,.critical-banner{color:#b42332;background:#fff0f1;border:1px solid #f3c7cb}.success-bar{color:#147a4b;background:#e8f7ef;border:1px solid #ccebd9}.notice-bar,.notice-warning{color:#8a5a00;background:#fff7df;border:1px solid #f4e3ad}.notice-info{color:#245fbe;background:#eef4ff;border:1px solid #d3e3ff}.rendering-tabs,.object-view-switch{padding:4px;background:#f4f5f7;border:1px solid #ececf1;border-radius:12px}.rendering-tabs button,.object-view-switch button{color:#8a8f9c;border-radius:9px}.rendering-tabs button:hover,.object-view-switch button:hover{color:#1a1a1a;background:#fff}.rendering-tabs button.active,.object-view-switch button.active{color:#2563eb;background:#fff;box-shadow:0 1px 3px #11182714}.metric-card{min-height:112px;border:0}.metric-card:nth-child(6n+1){background:var(--pastel-1)}.metric-card:nth-child(6n+2){background:var(--pastel-2)}.metric-card:nth-child(6n+3){background:var(--pastel-3)}.metric-card:nth-child(6n+4){background:var(--pastel-4)}.metric-card:nth-child(6n+5){background:var(--pastel-5)}.metric-card:nth-child(6n){background:var(--pastel-6)}.metric-card span{color:#6f7580}.metric-card strong{color:#1a1a1a}.metric-card small{color:#8a8f9c}.metric-card.danger{background:#fff0f1;border-left:0}.project-card{overflow:hidden;background:#fff;border-radius:16px}.project-cover{color:#4c6b9a;background:var(--pastel-2);border-bottom:1px solid #ececf1}.project-card:nth-child(6n+2) .project-cover{background:var(--pastel-5)}.project-card:nth-child(6n+3) .project-cover{background:var(--pastel-3)}.project-card:nth-child(6n+4) .project-cover{background:var(--pastel-1)}.project-card-body code,.project-card footer{color:#8a8f9c}.project-card footer strong{color:#1a1a1a}.home-title{color:#1a1a1a}.home-title p,.home-title>span{color:#8a8f9c}.home-header{background:#ffffffeb}.login-card{color:#1a1a1a;background:#fff;border:1px solid #ececf1;border-radius:16px;box-shadow:0 18px 48px #1118271a}.checkerboard,.suite-card-image{background-color:#f4f5f7;background-image:linear-gradient(45deg,#e8eaf0 25%,transparent 25%),linear-gradient(-45deg,#e8eaf0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8eaf0 75%),linear-gradient(-45deg,transparent 75%,#e8eaf0 75%)}.thumb,.object-thumb,.project-cover,.shot-preview,.source-shot,.rendering-preview,.rendering-preview img,.suite-card-image,.cut-job-thumb,.resource-thumb-grid img{border-color:#dfe3eb}.object-toolbar,.suite-toolbar,.suite-filter,.toolbar,.asset-toolbar{color:#1a1a1a;background:#fff;border-color:#ececf1;border-radius:16px}.object-toolbar label{color:#8a8f9c}.object-toolbar>span{color:#6f7580;background:#f4f5f7}.object-funnel{background:#fff;border:1px solid #ececf1;border-radius:16px}.object-funnel>div{background:transparent;border-color:#f0f1f5}.object-funnel>div:nth-child(6n+1){background:var(--pastel-2)}.object-funnel>div:nth-child(6n+2){background:var(--pastel-5)}.object-funnel>div:nth-child(6n+3){background:var(--pastel-1)}.object-funnel>div:nth-child(6n+4){background:var(--pastel-3)}.object-funnel>div:nth-child(6n+5){background:var(--pastel-4)}.object-funnel>div:nth-child(6n){background:var(--pastel-6)}.object-funnel strong{color:#1a1a1a}.object-card-footer{border-top-color:#ececf1}.object-stage>span{color:#667085;background:#f8f9fb;border-color:#ececf1}.object-stage>span.done{color:#178754;background:#e8f7ef;border-color:#ccebd9}.object-stage>span.blocked{color:#a16207;background:#fff7df;border-color:#f4e3ad}.object-table,.shot-elements-table{color:#1a1a1a;background:#fff;border-color:#ececf1}.object-table th,.shot-elements-table th,table thead th{color:#8a8f9c;background:#f8f9fb;border-color:#ececf1}.object-table td,.shot-elements-table td,table td{color:#4b5563;background:#fff;border-color:#f0f1f5}.object-table tbody tr:hover td,.shot-elements-table tbody tr:hover td,table tbody tr:hover td{background:#f8f9fb}.capture-sidebar,.capture-workspace{color:#1a1a1a;background:#fff;border-color:#ececf1;border-radius:16px}.capture-list>button{color:#4b5563;background:transparent;border-radius:12px}.capture-list>button:hover{color:#1a1a1a;background:#f4f5f7}.capture-list>button.active{color:#1a1a1a;background:#eef4ff;border-color:#d3e3ff;box-shadow:inset 3px 0 #3b82f6}.capture-list span{color:#8a8f9c}.capture-toolbar{border-bottom-color:#ececf1}.shot-card{background:#fff}.shot-card>.shot-preview{background:#f4f5f7;border-bottom-color:#ececf1}.shot-card>.shot-meta{color:#4b5563;background:#fff}.shot-card>.shot-meta+.shot-meta{background:#f8f9fb;border-top-color:#ececf1}.shot-card .shot-name{color:#4b5563}.shot-card .shot-meta>span{color:#8a8f9c}.primary-star{color:#b3b8c4}.primary-star.active{color:#f5b342}.chat-sidebar,.chat-resource-panel,.chat-main{color:#1a1a1a;background:#fff;border-color:#ececf1;border-radius:16px;box-shadow:none}.resource-worldview-mini{color:#1a1a1a;background:var(--pastel-4);border-color:#e4dcfa}.chat-session-section{border-bottom-color:#ececf1}.project-resource-section{background:#fafbfc}.resource-section-heading{color:#8a8f9c;border-color:#ececf1}.chat-list>div{border-radius:12px}.chat-list>div:hover{background:#f4f5f7}.chat-list>div.active{background:#eef4ff;box-shadow:inset 3px 0 #3b82f6}.chat-list button{color:#4b5563}.resource-group{background:#fff;border-color:#ececf1;border-radius:12px}.resource-group>summary{color:#4b5563}.resource-thumb-grid button{color:#8a8f9c;background:#f4f5f7}.resource-thumb-grid button:hover:not(:disabled){color:#1a1a1a;background:#eef0f4;border-color:#dfe3eb}.resource-documents>button{color:#4b5563;background:#fff;border-color:#ececf1}.messages{color:#1a1a1a;background:#f7f8fb}.message{color:#1a1a1a;background:#fff;border-color:#ececf1;box-shadow:0 3px 12px #1118270d}.message.assistant{color:#1a1a1a;background:#fff}.message.user{color:#174ea6;background:#eaf2ff;border-color:#cfe0ff}.chat-markdown,.chat-markdown strong{color:#1a1a1a}.chat-markdown code{color:#344054;background:#f0f1f5}.chat-markdown pre,.chat-markdown table{color:#344054;background:#f8f9fb;border-color:#ececf1}.chat-composer{color:#1a1a1a;background:#fff;border-top-color:#ececf1;box-shadow:0 -8px 22px #1118270b}.chat-composer textarea{color:#1a1a1a;background:#f4f5f7}.rendering-message-card,.chat-rendering-card{color:#1a1a1a;background:#fff;border-color:#dfe3eb}.rendering-message-prompt pre{color:#4b5563;background:#f4f5f7}.rendering-header{color:#1a1a1a;background:linear-gradient(120deg,#f3f7ff,#f8f4ff)}.rendering-header .panel-heading span{color:#8a8f9c}.rendering-actions{border-top-color:#e8eaf0}.rendering-column-label{color:#8a8f9c}.source-shot,.rendering-roots,.rendering-card,.rendering-preview,.rendering-preview img{background:#f4f5f7}.rendering-card{border-color:#dfe3eb;border-radius:12px}.rendering-meta,.rendering-card-actions{color:#4b5563;background:#fff;border-color:#ececf1}.rendering-preview-state{color:#8a8f9c;background:linear-gradient(110deg,#f4f5f7 25%,#fff,#f4f5f7 65%)}.feedback-summary{color:#6f7580;background:#fff7df}.spec-render-prompt{color:#6f7580}.spec-render-card header{border-bottom-color:#ececf1}.suite-summary,.suite-card-copy{color:#4b5563;background:#fff;border-color:#ececf1}.suite-board-panel{color:#1a1a1a;background:#fff;border-color:#ececf1}.suite-board-controls{color:#8a8f9c}.suite-board-stage{background:#f4f5f7;border-color:#dfe3eb}.suite-board-no-elements{color:#6f7580;background:#ffffffc2}.suite-stale-mark{color:#8a5a00;background:#fff7df}.screen-card-main{color:#1a1a1a}.screen-card-main:hover{background:#f8f9fb}.screen-counts,.coverage-meta{color:#8a8f9c}.screen-detail{color:#1a1a1a;background:#f8f9fb;border-color:#ececf1}.asset-toolbar{top:8px;background:#fffffff5;box-shadow:0 4px 14px #1118270b}.asset-tile{color:#1a1a1a;background:#fff}.asset-tile-meta,.asset-tile code{color:#8a8f9c}.asset-drawer,.drawer-header,.drawer-content{color:#1a1a1a;background:#fff;border-color:#ececf1}.drawer-header{box-shadow:0 1px #11182708}.path-block,.definition-grid>span,.definition-grid>strong,.rule-grid label,.preview-metrics div{color:#4b5563;background:#f8f9fb}.definition-grid{background:#ececf1;border-color:#ececf1}.field-stack>span,.rule-grid span,.checkbox-row label{color:#6f7580}.preview-panel{background:#fff}.palette-head{color:#6f7580;background:#f4f5f7}.gate-screen-summary{color:#4b5563}.gate-screen-summary:hover{background:#f8f9fb}.violation-item{color:#4b5563;background:#f8f9fb}.violation-item p{color:#6f7580}.markdown-body{color:#344054;background:#fff;border-color:#ececf1}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body strong{color:#1a1a1a}.markdown-body blockquote{color:#6f7580;background:#f4f5f7;border-left-color:#3b82f6}.markdown-body code,.markdown-body pre{color:#344054;background:#f4f5f7;border-color:#ececf1}.design-doc-workspace,.numeric-plan-content{color:#344054;background:#fff;border-color:#ececf1}.empty-block,.empty-state{color:#1a1a1a;background:#fff;border-color:#dfe3eb}.empty-state{background:linear-gradient(180deg,#fff,#fafbfc)}.empty-state .empty-icon,.empty-block .empty-icon{color:#3b82f6;background:#eef4ff;border-color:#d3e3ff}.empty-state strong,.empty-block strong{color:#1a1a1a}.empty-state small,.empty-block small{color:#8a8f9c}.modal-backdrop,.drawer-backdrop,.lightbox{background:#1118276b;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-card,.password-modal,.resource-preview-modal{color:#1a1a1a;background:#fff;border:1px solid #ececf1;border-radius:16px;box-shadow:0 24px 64px #11182729}.modal-card>.panel-heading:first-child,.drawer-header{border-bottom-color:#ececf1}.modal-actions{border-top-color:#ececf1}.lightbox>strong{color:#fff}.cuts-panel,.cut-studio-toolbar,.cut-canvas-panel,.cut-node-drawer>.panel{color:#1a1a1a;background:#fff;border-color:#ececf1}.cut-job-row{color:#1a1a1a;border-bottom-color:#ececf1}.cut-job-row:hover{background:#f8f9fb}.cut-source-option{color:#1a1a1a;background:#f8f9fb;border-color:#ececf1}.cut-source-option:hover{background:#f4f5f7;border-color:#dfe3eb}.cut-source-option.selected{background:#eef4ff;border-color:#3b82f6}.cut-canvas-panel [data-box-canvas=true]{background:#070b10!important;border-color:#2a3d51!important}@media (max-width: 640px),(max-device-width: 640px){.panel,.page-header,.capture-sidebar,.capture-workspace,.chat-main,.chat-resource-panel{border-radius:14px}.home-header{background:#fff}}.section-tabs{display:flex;width:max-content;max-width:100%;align-items:center;gap:4px;margin:0 0 20px;padding:4px;overflow-x:auto;background:#fff;border:1px solid #ececf1;border-radius:12px;box-shadow:0 1px 2px #11182706;scrollbar-width:none}.section-tabs::-webkit-scrollbar{display:none}.section-tab{display:inline-flex;min-height:36px;flex:0 0 auto;align-items:center;justify-content:center;padding:0 14px;color:#8a8f9c;font-size:13px;font-weight:550;line-height:1;text-decoration:none;white-space:nowrap;border:0;border-radius:9px;transition:color .15s ease,background-color .15s ease}.section-tab:hover{color:#1a1a1a;background:#f4f5f7}.section-tab.active{color:#2563eb;background:#eef4ff}.section-tab.disabled{color:#b3b8c4;cursor:not-allowed;background:transparent}.project-primary-nav,.mobile-primary-nav{min-width:0}.primary-nav-link,.mobile-primary-link,.mobile-section-tab{text-decoration:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease}.primary-nav-link.disabled,.mobile-primary-link.disabled,.mobile-section-tab.disabled{cursor:not-allowed;opacity:.52}@media (min-width: 1101px){.desktop-nav-shell .project-primary-nav{display:grid;height:auto;min-height:0;align-content:start;gap:6px;margin:0;overflow-y:auto}.desktop-nav-shell .primary-nav-link{position:relative;display:flex;width:100%;height:40px;align-items:center;justify-content:flex-start;padding:0 12px 0 15px!important;color:#8a8f9c;font-size:13px;font-weight:550;border:0;border-radius:12px}.desktop-nav-shell .primary-nav-link:before{position:absolute;top:10px;bottom:10px;left:4px;width:3px;content:"";background:transparent;border-radius:3px}.desktop-nav-shell .primary-nav-link:hover{color:#1a1a1a;background:#f4f5f7}.desktop-nav-shell .primary-nav-link.active{color:#2563eb;font-weight:650;background:#eef4ff;border-bottom-color:transparent}.desktop-nav-shell .primary-nav-link.active:before{background:#3b82f6}.desktop-nav-shell .primary-nav-link.disabled:hover{color:#b3b8c4;background:transparent}}@media (min-width: 641px) and (max-width: 1100px){.desktop-nav-shell .project-primary-nav{display:flex;height:100%;align-items:center;gap:3px;margin-left:auto;overflow-x:auto;scrollbar-width:none}.desktop-nav-shell .project-primary-nav::-webkit-scrollbar{display:none}.desktop-nav-shell .primary-nav-link{display:inline-flex;height:38px;flex:0 0 auto;align-items:center;padding:0 10px!important;color:#8a8f9c;font-size:12px;border:0;border-radius:10px}.desktop-nav-shell .primary-nav-link:hover{color:#1a1a1a;background:#f4f5f7}.desktop-nav-shell .primary-nav-link.active{color:#2563eb;background:#eef4ff;border-bottom-color:transparent}}@media (max-width: 640px),(max-device-width: 640px){.section-tabs{width:100%;margin-bottom:12px;padding:4px}.section-tab{min-height:34px;padding-inline:12px;font-size:12px}.mobile-nav-drawer .mobile-primary-nav{display:grid;gap:6px}.mobile-nav-section{display:grid;min-width:0;gap:5px}.mobile-nav-drawer .mobile-primary-link,.mobile-nav-drawer .mobile-section-tab{display:flex;min-height:40px;align-items:center;justify-content:flex-start;padding:0 12px!important;color:#6f7580;font-size:13px;font-weight:550;background:#fff;border:1px solid #ececf1;border-radius:10px}.mobile-nav-drawer .mobile-primary-link:hover,.mobile-nav-drawer .mobile-section-tab:hover{color:#1a1a1a;background:#f4f5f7}.mobile-nav-drawer .mobile-primary-link.active{color:#2563eb;font-weight:650;background:#eef4ff;border-color:#d3e3ff}.mobile-section-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-left:10px;padding:2px 0 6px 10px;border-left:2px solid #d3e3ff}.mobile-nav-drawer .mobile-section-tab{min-width:0;min-height:36px;padding-inline:10px!important;font-size:12px}.mobile-nav-drawer .mobile-section-tab.active{color:#2563eb;background:#f3f7ff;border-color:#d3e3ff}.mobile-nav-drawer .mobile-primary-link.disabled:hover,.mobile-nav-drawer .mobile-section-tab.disabled:hover{color:#b3b8c4;background:#fff;border-color:#ececf1}}:root{--text-primary: #1a1a1a;--text-secondary: #8a8f9c;--text-tertiary: #b3b8c4;--text-disabled: #667085;--text-body: #344054;--text-supporting: #667085;--text-weak: #b3b8c4;--accent-primary: #3b82f6;--accent-hover: #2563eb;--accent-pressed: #1d4ed8;--accent-link: #2563eb;--font-weight-heading: 600;--font-weight-semibold: 600;--font-weight-medium: 500;--font-weight-regular: 400;--font-size-micro: 12px;--font-size-caption: 12px;--font-size-label: 13px;--font-size-body: 14px;--font-size-card-title: 16px;--font-size-section-title: 20px;--font-size-page-title: 24px;--line-height-micro: 18px;--line-height-caption: 18px;--line-height-body: 21px;--line-height-card-title: 24px;--line-height-section-title: 28px;--line-height-page-title: 32px}html{color-scheme:light;background:var(--bg-app)}body{color:var(--text-body);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);letter-spacing:0}body,button,input,select,textarea{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}h1,h2,h3,h4{color:var(--text-primary);font-weight:var(--font-weight-heading);letter-spacing:-.012em}h1{font-size:var(--font-size-page-title);line-height:var(--line-height-page-title)}h2{font-size:var(--font-size-card-title);line-height:var(--line-height-card-title)}h3,h4{font-size:var(--font-size-body);line-height:var(--line-height-body)}p,li,dd{color:var(--text-body);font-size:var(--font-size-body);line-height:var(--line-height-body)}small,.muted{color:var(--text-supporting);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.eyebrow,.nav-group>small{color:var(--text-secondary);font-size:var(--font-size-micro);line-height:var(--line-height-micro)}code{color:var(--text-body);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}a{color:var(--accent-link)}.metric-card strong,.object-funnel strong,.object-table td,.shot-elements-table td,.gate-metrics strong,.suite-summary strong,.preview-metrics strong,.project-card footer strong,.metric-text strong,.result-total,.screen-counts,.coverage-meta,.rendering-meta,.task-status,.numeric{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.metric-card strong,.object-funnel strong,.gate-metrics strong,.suite-summary strong,.preview-metrics strong,.metric-text strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}:root{--success: #147a4b;--warning: #8a5a00;--danger: #b42332;--info: #245fbe;--muted: var(--text-supporting);--green: var(--success);--orange: var(--warning);--red: var(--danger)}.page-header p,.object-board-heading p,.rendering-header p,.gate-header p,.suite-hero p,.panel-heading>span,.panel-heading small,.panel-heading .muted,.page-header>span,.object-board-heading>span,.rendering-header>span,.gate-header>span,.suite-hero>span{color:var(--text-supporting)}label,.field-stack,.modal-card label,.field-stack>span,.rule-grid span,.checkbox-row label,.palette-head{color:var(--text-body)}.btn,.primary-button,.secondary-button,.icon-button,.danger-button{min-height:var(--control-default);color:var(--text-body);font-size:var(--font-size-label);font-weight:var(--font-weight-medium)}.btn-primary,.primary-button{color:#fff;background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 3px 8px #2563eb29}.btn-primary:hover:not(:disabled),.primary-button:hover:not(:disabled){color:#fff;background:var(--accent-pressed);border-color:var(--accent-pressed);box-shadow:0 5px 12px #2563eb38}.btn-primary:active:not(:disabled),.primary-button:active:not(:disabled){background:#1e40af;border-color:#1e40af;box-shadow:none}.btn-secondary,.secondary-button{color:var(--text-body);background:var(--bg-surface);border-color:var(--border-strong);box-shadow:0 1px 2px #11182709}.btn-secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover);border-color:#aeb7c5}.btn-ghost,.icon-button{color:var(--text-supporting);background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled),.icon-button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.btn-danger,.danger-button{color:#fff;background:var(--danger);border-color:var(--danger)}.btn-danger:hover:not(:disabled),.danger-button:hover:not(:disabled){color:#fff;background:#951f2d;border-color:#951f2d}.secondary-button.danger-outline{color:var(--danger);background:var(--danger-subtle);border-color:#e7aeb5}.secondary-button.danger-outline:hover{color:#951f2d;background:#ffe5e8;border-color:#d98691}.btn:disabled,.primary-button:disabled,.secondary-button:disabled,.icon-button:disabled,.danger-button:disabled,.rendering-tabs button:disabled,.tab:disabled,button[aria-disabled=true],a[aria-disabled=true]{color:var(--text-disabled);cursor:not-allowed;opacity:1;transform:none;box-shadow:none}.btn-primary:disabled,.primary-button:disabled,.danger-button:disabled{color:var(--text-disabled);background:var(--border-default);border-color:var(--border-default)}.btn-secondary:disabled,.secondary-button:disabled{color:var(--text-disabled);background:var(--bg-inset);border-color:var(--border-default)}.icon-button:disabled,.btn-ghost:disabled{color:var(--text-disabled);background:transparent}.input,.select,input:not([type=checkbox]):not([type=radio]),select,textarea{color:var(--text-primary);background:var(--bg-inset);border-color:var(--border-strong)}.input:hover:not(:disabled),.select:hover:not(:disabled),input:not([type=checkbox]):not([type=radio]):hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){color:var(--text-primary);background:var(--bg-surface);border-color:#aeb7c5}.input:focus-visible,.select:focus-visible,input:not([type=checkbox]):not([type=radio]):focus-visible,select:focus-visible,textarea:focus-visible,input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{color:var(--text-primary);background:var(--bg-surface);border-color:var(--accent-primary);box-shadow:var(--focus-ring)}.input:disabled,.select:disabled,input:disabled,select:disabled,textarea:disabled{color:var(--text-disabled);background:var(--bg-inset);border-color:var(--border-default);opacity:1}input::placeholder,textarea::placeholder{color:var(--text-supporting);opacity:1}.badge,.status-badge,.object-kind,.object-blockers span,.rendering-outlier-badge,.task-status>span{min-height:22px;color:var(--text-body);background:var(--bg-inset);border:1px solid var(--border-default);border-radius:var(--radius-pill);box-shadow:none}.badge-done,.badge-success,.object-clear{color:var(--success);background:var(--success-subtle);border-color:#b9e2cb}.badge-half,.badge-warning{color:var(--warning);background:var(--warning-subtle);border-color:#ead28b}.badge-text,.badge-danger,.rendering-outlier-badge{color:var(--danger);background:var(--danger-subtle);border-color:#e7b0b7}.badge-chrome,.badge-info{color:var(--info);background:var(--info-subtle);border-color:#b9d1f7}.badge-carrier{color:#6941c6;background:#f2edff;border-color:#dfd3ff}.badge-content{color:var(--success);background:var(--success-subtle);border-color:#b9e2cb}.object-kind.kind-element{color:var(--info);background:var(--info-subtle);border-color:#b9d1f7}.object-kind.kind-character{color:#6941c6;background:#f2edff;border-color:#dfd3ff}.object-kind.kind-screen{color:var(--success);background:var(--success-subtle);border-color:#b9e2cb}.topbar nav a,.nav-more summary,.section-tab,.primary-nav-link,.mobile-primary-link,.mobile-section-tab,.object-view-switch button,.rendering-tabs button,.tab{color:var(--text-supporting);font-weight:var(--font-weight-medium)}.topbar nav a:hover,.nav-more summary:hover,.section-tab:hover,.primary-nav-link:hover,.mobile-primary-link:hover,.mobile-section-tab:hover,.object-view-switch button:hover,.rendering-tabs button:hover,.tab:hover{color:var(--text-primary);background:var(--bg-hover)}.topbar nav a.active,.nav-more.active>summary,.section-tab.active,.primary-nav-link.active,.mobile-primary-link.active,.mobile-section-tab.active,.object-view-switch button.active,.rendering-tabs button.active,.tab.active,.tab[aria-selected=true]{color:var(--accent-hover);font-weight:var(--font-weight-semibold);background:var(--accent-subtle)}.section-tab.active,.object-view-switch button.active,.rendering-tabs button.active,.tab.active,.tab[aria-selected=true]{box-shadow:inset 0 0 0 1px #cfe0ff}.section-tab.disabled,.primary-nav-link.disabled,.mobile-primary-link.disabled,.mobile-section-tab.disabled,.topbar nav a[aria-disabled=true]{color:var(--text-disabled);opacity:1;cursor:not-allowed;background:transparent}.desktop-nav-shell .primary-nav-link.disabled:hover,.mobile-nav-drawer .mobile-primary-link.disabled:hover,.mobile-nav-drawer .mobile-section-tab.disabled:hover{color:var(--text-disabled);background:transparent;border-color:transparent}.desktop-nav-shell .nav-group>small,.mobile-nav-drawer .nav-group>small,.nav-group>small{color:var(--text-secondary)}.page-header,.object-board-heading,.rendering-header,.gate-header,.suite-hero,.reskin-spec-toolbar{color:var(--text-primary);background:var(--bg-surface);border-color:var(--border-default)}.object-funnel>div{background:var(--bg-surface)}.object-funnel>div:nth-child(2n){background:#fbfcff}.object-toolbar label,.object-funnel small,.object-stage-chain>.object-stage>em,.object-card-footer,.relationship-source,.coverage-meta,.screen-counts,.detail-heading{color:var(--text-supporting)}.object-toolbar>span,.object-stage>span,.object-stage.stage-empty>span{color:var(--text-body);background:var(--bg-inset);border-color:var(--border-default)}.object-stage.stage-done>span{color:var(--success);background:var(--success-subtle);border-color:#b9e2cb}.object-stage.stage-warning>span{color:var(--warning);background:var(--warning-subtle);border-color:#ead28b}.object-stage.stage-empty>span{color:var(--text-supporting);background:#f8f9fb}.state-untouched{color:var(--text-supporting)}.state-half{color:var(--warning)}.state-done{color:var(--success)}.progress-untouched{background:var(--border-strong)}.progress-half{background:var(--warning)}.progress-done{background:var(--success)}.object-funnel strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.object-table-scroll,.shot-elements-table-wrap,.reskin-mapping-table,.palette-table{border-color:var(--border-default)}.object-table,.shot-elements-table,.reskin-mapping-table table,.palette-table table,table{color:var(--text-body);font-size:var(--font-size-label);line-height:20px}.object-table th,.object-table td,.shot-elements-table th,.shot-elements-table td,.reskin-mapping-table th,.reskin-mapping-table td,.palette-table th,.palette-table td,table thead th,table tbody td{vertical-align:middle}.object-table th,.shot-elements-table th,.reskin-mapping-table th,.palette-table th,table thead th{color:var(--text-supporting);font-weight:var(--font-weight-semibold);background:#f8f9fb;border-color:var(--border-subtle)}.object-table td,.shot-elements-table td,.reskin-mapping-table td,.palette-table td,table tbody td{color:var(--text-body);border-color:var(--border-divider)}.object-table td small,.shot-elements-table td small,table td small{color:var(--text-supporting)}.object-table tbody tr:hover td,.shot-elements-table tbody tr:hover td,table tbody tr:hover td{background:#f4f7ff}.home-title p,.home-title>span,.project-card-body code,.project-card footer,.metric-card small,.metric-card span,.capture-list span,.shot-card .shot-meta>span,.asset-tile-meta,.asset-tile code,.screen-counts,.coverage-meta,.detail-heading{color:var(--text-supporting)}.project-card footer strong,.metric-card strong,.card-title strong,.shot-card .shot-name,.asset-tile strong{color:var(--text-primary)}.screen-card-main,.shot-card>.shot-meta,.asset-tile{color:var(--text-body)}.screen-detail{color:var(--text-body);background:#f8f9fb}.primary-star{color:var(--text-weak)}.primary-star.active{color:#a16207}.rendering-column-label,.rendering-preview-state,.rendering-meta,.rendering-card-actions,.spec-render-prompt,.feedback-summary,.suite-board-controls,.suite-board-no-elements,.suite-stale-mark,.violation-item p{color:var(--text-supporting)}.rendering-meta,.rendering-card-actions{background:var(--bg-surface)}.rendering-preview-state{background:linear-gradient(110deg,#f4f5f7 25%,#fff,#f4f5f7 65%)}.feedback-summary,.suite-stale-mark{color:var(--warning);background:var(--warning-subtle)}.gate-screen-summary,.violation-item,.path-block,.definition-grid>span,.definition-grid>strong,.rule-grid label,.preview-metrics div{color:var(--text-body)}.gate-screen-summary small{color:var(--text-supporting)}.resource-section-heading,.resource-group>summary,.chat-list button,.resource-thumb-grid button,.rendering-message-prompt pre{color:var(--text-body)}.resource-section-heading{border-color:var(--border-subtle)}.messages{color:var(--text-body)}.message,.message.assistant{color:var(--text-primary)}.message.user{color:#174ea6}.chat-markdown,.chat-markdown strong,.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body strong{color:var(--text-primary)}.chat-markdown code,.chat-markdown pre,.chat-markdown table,.markdown-body blockquote,.markdown-body code,.markdown-body pre{color:var(--text-body)}.chat-composer,.chat-composer textarea{color:var(--text-primary)}.loading-block,.empty-block,.root-state,.empty-state{color:var(--text-body)}.empty-block strong,.empty-state strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.empty-block small,.empty-state small{color:var(--text-supporting)}.error-bar,.critical-banner{color:var(--danger);background:var(--danger-subtle);border-color:#e7b0b7}.success-bar{color:var(--success);background:var(--success-subtle);border-color:#b9e2cb}.notice-bar,.notice-warning{color:var(--warning);background:var(--warning-subtle);border-color:#ead28b}.notice-info{color:var(--info);background:var(--info-subtle);border-color:#b9d1f7}.modal-card,.password-modal,.resource-preview-modal,.shot-detail-panel,.asset-drawer,.drawer-content,.drawer-header{color:var(--text-primary);background:var(--bg-raised)}.drawer-header{border-bottom-color:var(--border-subtle)}.cut-job-row,.cut-source-option,.cut-source-group>strong,.cut-job-copy span{color:var(--text-body)}.cut-job-copy small,.cut-source-group>strong{color:var(--text-supporting)}.account-name:disabled,.account-logout:disabled{color:var(--text-disabled);background:var(--bg-inset);border-color:var(--border-default);opacity:1}.rendering-suite-entry{background:transparent;border:0}.page-header h1,.home-title h1,.capture-toolbar h1,.object-board-heading h1,.rendering-header h1,.gate-header h1,.suite-hero h1,.reskin-spec-toolbar h1,.design-doc-toolbar h1,.numeric-plan-page h1{font-size:var(--font-size-page-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-page-title)}.panel-heading h2,.panel-heading h3,.project-card-body h2,.empty-block strong,.empty-state strong{font-weight:var(--font-weight-semibold)}.project-card-body h2,.empty-block strong,.empty-state strong{font-size:var(--font-size-card-title);line-height:var(--line-height-card-title)}.metric-card span,.metric-card small,.object-funnel small{font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.platform-topbar .account-name:disabled{color:var(--text-disabled);background:var(--bg-inset);border-color:var(--border-default)}:root{--bg-app: #f5f6fa;--bg-surface: #ffffff;--bg-raised: #ffffff;--bg-hover: #f4f5f7;--bg-active: #eef4ff;--bg-inset: #f4f5f7;--border-divider: #f0f1f5;--border-subtle: #ececf1;--border-default: #dfe3eb;--border-strong: #cdd3df;--accent-primary: #3b82f6;--accent-hover: #2563eb;--accent-pressed: #1d4ed8;--accent-subtle: #eef4ff;--accent-muted: #dce9ff;--accent-focus: rgba(59, 130, 246, .2);--focus-ring: 0 0 0 3px var(--accent-focus)}.panel-heading>.badge.badge-success,.panel-heading>.badge.badge-done{color:var(--success);background:var(--success-subtle);border-color:#b9e2cb}.panel-heading>.badge.badge-warning,.panel-heading>.badge.badge-half{color:var(--warning);background:var(--warning-subtle);border-color:#ead28b}.panel-heading>.badge.badge-danger,.panel-heading>.badge.badge-text{color:var(--danger);background:var(--danger-subtle);border-color:#e7b0b7}.panel-heading>.badge.badge-info,.panel-heading>.badge.badge-chrome{color:var(--info);background:var(--info-subtle);border-color:#b9d1f7}.btn,.primary-button,.secondary-button,.icon-button,.danger-button,.section-tab,.primary-nav-link,.mobile-primary-link,.mobile-section-tab,.object-view-switch button,.rendering-tabs button,.tab{line-height:var(--line-height-body)}.icon-button{line-height:1}.badge,.status-badge,.object-kind,.object-blockers span,.rendering-outlier-badge,.task-status>span{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);line-height:16px}.empty-block small,.empty-state small{line-height:var(--line-height-caption)}.project-resource-section .resource-library-scroll{gap:var(--space-3);grid-auto-rows:max-content}.project-resource-section .resource-group>summary{min-height:var(--control-default);padding-block:var(--space-1)}.project-resource-section .resource-group[open]{min-height:max-content}.project-resource-section .resource-thumb-grid{gap:var(--space-2)}@media (max-width: 640px),(max-device-width: 640px){.section-tabs{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.section-tabs::-webkit-scrollbar{display:none;width:0;height:0}.section-tab{flex:0 0 auto;white-space:nowrap}.project-resource-section .resource-library-scroll{gap:var(--space-4);padding:var(--space-3)}.project-resource-section .resource-group>summary{min-height:44px;padding-block:var(--space-2)}}.chat-page .chat-session-section,.chat-page .project-resource-section{min-height:0;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.chat-page .project-resource-section{background:#fbfcfe}.chat-page .resource-section-heading{min-height:46px;padding:var(--space-2) var(--space-3);background:linear-gradient(180deg,#fff,#fbfcfe);border-bottom-color:var(--border-divider)}.chat-page .project-resource-section .resource-section-heading{background:#f8faff}.chat-page .resource-section-heading strong{color:var(--text-primary);font-size:var(--font-size-label);font-weight:var(--font-weight-semibold)}.chat-page .resource-section-heading small{display:inline-flex;min-height:22px;align-items:center;padding:0 var(--space-2);color:var(--text-supporting);font-size:var(--font-size-micro);font-variant-numeric:tabular-nums;background:var(--bg-inset);border:1px solid var(--border-divider);border-radius:var(--radius-pill)}.chat-page .chat-list{align-content:start;gap:var(--space-2);padding:var(--space-3);background:var(--bg-surface)}.chat-page .chat-list>div{min-height:58px;grid-template-columns:minmax(0,1fr) 30px;background:transparent;border:1px solid transparent;border-radius:var(--radius-control);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.chat-page .chat-list>div:hover{background:#f7f9fc;border-color:var(--border-subtle);box-shadow:0 2px 8px #1118270a}.chat-page .chat-list>div.active{background:var(--accent-subtle);border-color:#cfe0ff;box-shadow:inset 3px 0 0 var(--accent-primary),0 2px 8px #3b82f614}.chat-page .chat-list>div>button:first-child{display:grid;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:transparent}.chat-page .chat-list>div>button:first-child:hover{background:transparent}.chat-page .chat-list>div>button:first-child strong{color:var(--text-primary);font-size:var(--font-size-label);font-weight:var(--font-weight-semibold)}.chat-page .chat-list>div.active>button:first-child strong{color:#174ea6}.chat-page .chat-list>div>button:first-child small{color:var(--text-supporting);font-size:var(--font-size-micro);font-variant-numeric:tabular-nums}.chat-page .chat-list>div>button:last-child{align-self:stretch;width:30px;padding:0;color:#98a2b3;font-size:16px;border-radius:var(--radius-sm)}.chat-page .chat-list>div>button:last-child:hover{color:var(--danger);background:var(--danger-subtle)}.chat-page .resource-library-scroll{gap:var(--space-2);padding:var(--space-3);background:#fbfcfe}.chat-page .resource-group{background:var(--bg-surface);border-color:#e5eaf1;border-radius:var(--radius-control);box-shadow:0 1px 2px #11182706;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.chat-page .resource-group:hover{border-color:#d4dce9;box-shadow:0 3px 10px #1118270b}.chat-page .resource-group>summary{display:grid;min-height:44px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:0 var(--space-3);color:var(--text-body);font-size:var(--font-size-label);font-weight:var(--font-weight-semibold);background:var(--bg-surface);transition:background-color var(--transition-fast),color var(--transition-fast)}.chat-page .resource-group>summary:hover{background:#f7f9fc}.chat-page .resource-group>summary:before{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;margin:0;color:var(--text-secondary);font-size:18px;line-height:1}.chat-page .resource-group>summary>span{grid-column:2;margin-left:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-page .resource-group>summary small{display:inline-flex;min-width:28px;min-height:22px;grid-column:3;align-items:center;justify-content:center;padding:0 var(--space-2);color:var(--text-supporting);font-size:var(--font-size-micro);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;background:var(--bg-inset);border:1px solid var(--border-divider);border-radius:var(--radius-pill)}.chat-page .resource-group[open]{border-color:#d3e3ff}.chat-page .resource-group[open]>summary{color:#174ea6;background:#f5f8ff}.chat-page .resource-group[open]>summary:before{color:var(--accent-primary);transform:rotate(90deg)}.chat-page .resource-group[open]>summary small{color:#245fbe;background:#eef4ff;border-color:#cfe0ff}.chat-page .resource-group>select{width:calc(100% - 24px);min-height:34px;margin:var(--space-2) var(--space-3) var(--space-2);padding:0 var(--space-2);font-size:var(--font-size-caption);border-radius:var(--radius-sm)}.chat-page .resource-thumb-grid{gap:var(--space-2);padding:0 var(--space-3) var(--space-3)}.chat-page .resource-thumb-grid button{gap:var(--space-1);padding:var(--space-1);color:var(--text-supporting);background:#f8fafc;border:1px solid #e5eaf1;border-radius:var(--radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.chat-page .resource-thumb-grid button:hover:not(:disabled){color:var(--text-body);background:#fff;border-color:#cdd8e8;box-shadow:0 2px 7px #1118270f;transform:translateY(-1px)}.chat-page .resource-thumb-grid button.selected{color:#245fbe;background:var(--accent-subtle);border-color:#9ec4ff;box-shadow:0 2px 7px #3b82f614}.chat-page .resource-thumb-grid img{border:1px solid rgba(205,213,225,.72);border-radius:var(--radius-sm)}.chat-page .resource-thumb-grid span{color:inherit;font-size:10px;line-height:14px}.chat-page .resource-documents>button{min-height:40px;margin-inline:var(--space-3);padding:var(--space-1) var(--space-2);color:var(--text-body);background:#fff;border-color:#e5eaf1;border-radius:var(--radius-sm)}.chat-page .resource-documents>button:hover:not(:disabled){color:var(--text-primary);background:#f7f9fc;border-color:#cdd8e8}.chat-page .resource-documents>button small{color:var(--text-supporting);font-size:10px}.chat-page .resource-empty,.chat-page .resource-loading{color:var(--text-supporting)!important}.chat-page .chat-main{min-height:0;grid-template-rows:minmax(0,1fr) auto;padding:0;background:var(--bg-surface);border-color:var(--border-subtle);border-radius:var(--radius-card);overflow:hidden}.chat-page .messages{min-height:0;gap:var(--space-4);padding:var(--space-5);background:var(--bg-app);scrollbar-color:#cbd5e1 transparent}.chat-page .message:not(.rendering-message){max-width:min(760px,82%);padding:var(--space-3) var(--space-4);color:var(--text-body);background:var(--bg-surface);border:1px solid #e5eaf1;border-radius:var(--radius-card);box-shadow:0 2px 8px #1118270b;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.chat-page .message:not(.rendering-message):hover{border-color:#d6dfeb;box-shadow:0 4px 14px #11182711}.chat-page .message.user:not(.rendering-message){color:#174ea6;background:#eef5ff;border-color:#cfe0ff;box-shadow:0 2px 8px #3b82f614}.chat-page .message.assistant:not(.rendering-message){border-bottom-left-radius:8px}.chat-page .message.user:not(.rendering-message){border-bottom-right-radius:8px}.chat-page .message>small{margin-bottom:var(--space-2);color:var(--text-supporting);opacity:1;font-size:var(--font-size-micro);font-weight:var(--font-weight-semibold);letter-spacing:.01em}.chat-page .message.user>small{color:#3b6fae}.chat-page .message-plain,.chat-page .chat-markdown{color:inherit}.chat-page .message-plain{line-height:1.65}.chat-page .chat-markdown p{color:var(--text-body);line-height:1.65}.chat-page .chat-markdown h1,.chat-page .chat-markdown h2,.chat-page .chat-markdown h3{color:var(--text-primary)}.chat-page .message-attachments{gap:var(--space-2);margin-bottom:var(--space-2);padding-bottom:var(--space-1)}.chat-page .message-attachments img{border:1px solid #dfe6ef;border-radius:var(--radius-control);box-shadow:0 1px 4px #1118270f}.chat-page .chat-markdown img{border:1px solid #dfe6ef;border-radius:var(--radius-control)}.chat-page .chat-markdown code{color:#344054;background:#f0f3f7}.chat-page .chat-markdown pre,.chat-page .chat-markdown table{border-color:#e1e7ef}.chat-page .chat-rendering-card{gap:var(--space-3);padding:var(--space-3);background:linear-gradient(135deg,#f2f6ff,#fff 72%);border:1px solid #d5e2f5;border-radius:var(--radius-card);box-shadow:0 3px 12px #1118270d}.chat-page .chat-rendering-card>small,.chat-page .rendering-message-source,.chat-page .rendering-message-prompt summary{color:var(--text-supporting)}.chat-page .rendering-message-preview,.chat-page .rendering-message-preview img{border-radius:var(--radius-control)}.chat-page .rendering-message-preview img{border:1px solid #dfe6ef}.chat-page .rendering-message-source img{border:1px solid #dfe6ef;border-radius:var(--radius-control)}.chat-page .rendering-message-prompt pre{color:var(--text-body);background:#f7f9fc;border-color:#e1e7ef}.chat-page [data-suggest-generate=true]{color:var(--text-body)!important;background:linear-gradient(135deg,#f2f6ff,#faf7ff)!important;border-color:#d5e2f5!important;border-radius:var(--radius-control)!important;box-shadow:0 3px 12px #1118270d}.chat-page [data-suggest-generate=true]>strong{color:var(--text-primary)!important}.chat-page [data-suggest-generate=true]>span{color:var(--text-supporting)!important}.chat-page .chat-composer{min-width:0;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);background:var(--bg-surface);border-top-color:var(--border-divider);box-shadow:0 -6px 18px #1118270b}.chat-page .composer-row{min-width:0;grid-template-columns:auto auto auto minmax(0,1fr) auto;align-items:stretch;gap:var(--space-2)}.chat-page .composer-row>button,.chat-page .composer-row>label{min-height:var(--control-comfortable);padding-inline:var(--space-3);border-radius:var(--radius-control)}.chat-page .composer-row textarea{min-height:var(--control-comfortable);padding:var(--space-2) var(--space-3);color:var(--text-body);background:#f8fafc;border-color:var(--border-default);border-radius:var(--radius-control)}.chat-page .composer-row textarea::placeholder{color:var(--text-supporting);opacity:1}.chat-page .composer-row>.primary-button{min-width:72px}.chat-page .selected-shots{gap:var(--space-2);padding-inline:2px}.chat-page .selected-shots span{min-height:30px;padding:5px var(--space-2);color:#245fbe;font-size:var(--font-size-caption);background:var(--accent-subtle);border:1px solid #cfe0ff;border-radius:var(--radius-sm)}.chat-page .selected-shots button{color:inherit}@media (min-width: 641px){.workspace:has(>.chat-page){display:flex;height:100dvh;min-height:0;flex-direction:column;overflow:hidden}.workspace:has(>.chat-page)>.chat-page{height:auto;min-height:0;flex:1 1 auto}.chat-page .chat-resource-panel{display:grid;grid-template-rows:minmax(0,.92fr) minmax(0,1.08fr);gap:var(--space-3);padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}}@media (max-width: 640px),(max-device-width: 640px){.workspace:has(>.chat-page){display:flex;height:calc(100dvh - var(--header-height));min-height:0;flex-direction:column;overflow:hidden}.workspace:has(>.chat-page)>.chat-page{height:auto;min-height:0;flex:1 1 auto}.chat-page .chat-resource-toggle{min-height:var(--control-comfortable);background:#fff;border-color:var(--border-default);box-shadow:0 2px 8px #1118270a}.chat-page .chat-resource-shell.open>.chat-resource-panel{display:grid;grid-template-rows:minmax(0,.82fr) minmax(0,1.18fr);gap:var(--space-2);padding:var(--space-2);background:var(--bg-app);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-modal)}.chat-page .chat-main{grid-template-rows:minmax(0,1fr) auto;padding:0}.chat-page .messages{gap:var(--space-3);padding:var(--space-3)}.chat-page .message:not(.rendering-message){max-width:94%;padding:var(--space-3)}.chat-page .message-attachments img{width:76px;height:76px;flex-basis:76px}.chat-page .chat-composer{padding:var(--space-2)}.chat-page .composer-row{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto;gap:var(--space-2)}.chat-page .composer-row>textarea{grid-column:1 / -1;grid-row:1;min-height:64px}.chat-page .composer-row>button:first-child,.chat-page .composer-row>label:nth-child(2),.chat-page .composer-row>button:nth-child(3),.chat-page .composer-row>.primary-button{grid-row:2;min-width:0;min-height:40px;padding-inline:var(--space-1);overflow:hidden;font-size:var(--font-size-caption);text-overflow:ellipsis}.chat-page .composer-row>button:first-child{grid-column:1}.chat-page .composer-row>label:nth-child(2){grid-column:2}.chat-page .composer-row>button:nth-child(3){grid-column:3}.chat-page .composer-row>.primary-button{grid-column:4}}.workspace:has(>.chat-page)>.section-tabs{flex:0 0 auto}.rendering-page,.rendering-page .rendering-header,.rendering-page .rendering-list,.rendering-page .rendering-shot-card,.rendering-page .rendering-comparison,.rendering-page .rendering-column,.rendering-page .rendering-roots,.rendering-page .spec-render-grid,.rendering-page .spec-render-card,.rendering-page .version-node,.rendering-page .rendering-card{min-width:0;max-width:100%}.rendering-page .rendering-shot-card,.rendering-page .spec-render-card,.rendering-page .rendering-card{overflow:hidden}.rendering-page .rendering-shot-heading,.rendering-page .rendering-shot-heading>label,.rendering-page .rendering-result-head,.rendering-page .rendering-card-actions,.rendering-page .rendering-meta{min-width:0;max-width:100%}.rendering-page .rendering-shot-heading{flex-wrap:wrap}.rendering-page .rendering-shot-heading>.muted,.rendering-page .feedback-summary,.rendering-page .rendering-meta .muted{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.rendering-page .feedback-summary{white-space:normal;text-overflow:clip}.rendering-page .rendering-card-actions>*{min-width:0;max-width:100%;overflow-wrap:anywhere}@media (max-width: 640px),(max-device-width: 640px){.rendering-page .rendering-comparison,.rendering-page .rendering-roots{grid-template-columns:minmax(0,1fr)}.rendering-page .rendering-shot-heading>.muted{flex:1 1 100%}}
