:root{--gray-000:#000;--gray-131:#131313;--gray-1d:#1d1d1d;--gray-25:#252525;--gray-2c:#2c2c2c;--gray-34:#343434;--gray-38:#383838;--gray-4b:#4b4b4b;--gray-58:#585858;--gray-75:#757575;--gray-90:#909090;--gray-aa:#aaa;--gray-c0:silver;--gray-d9:#d9d9d9;--gray-e2:#e2e2e2;--white:#fff;--white-a05:#ffffff0d;--white-a10:#ffffff1a;--white-a15:#ffffff26;--white-a25:#ffffff40;--teal:#008484;--teal-bright:#25cbcb;--teal-dark:#005151;--teal-a10:#0084841a;--teal-a15:#00848426;--teal-a25:#00848440;--teal-a50:#00848480;--teal-a13:#00848421;--blue:#2e84e6;--blue-a25:#2e84e640;--approved:#3cb371;--approved-a15:#3cb37126;--contender:#a6884e;--contender-a15:#a6884e26;--candidate:silver;--rejected:#d53939;--rejected-a12:#d539391f;--rejected-chip:#c28686;--rejected-ink:#3a1010;--danger:#d53939;--danger-bright:#ff5b58;--aether-handle:#25cbcb;--dept-sets:oklch(72% .1 195);--dept-characters:oklch(76% .09 80);--dept-props:oklch(74% .09 310);--dept-vehicles:oklch(73% .1 45);--st-review:oklch(75% .09 240);--st-revision:oklch(78% .11 75);--st-approved:oklch(76% .12 155);--bg-app:var(--gray-131);--bg-base:var(--gray-1d);--bg-raised:var(--white-a05);--bg-raised-hover:var(--white-a10);--bg-focus:var(--gray-38);--bg-float:var(--gray-25);--bg-selected:var(--teal-a10);--border-hair:var(--white-a10);--border-strong:var(--gray-34);--bg-lane:var(--white-a05);--bg-active:var(--teal-a15);--fg1:var(--gray-e2);--fg2:var(--gray-d9);--fg3:var(--gray-aa);--fg-muted:var(--gray-75);--fg-faint:var(--gray-4b);--fg-hover:var(--gray-c0);--icon:var(--gray-aa);--icon-hover:var(--gray-c0);--on-brand:var(--white);--font-ui:"Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--fw-regular:400;--fw-semibold:600;--fw-bold:700;--fs-h1:60px;--fs-h2:32px;--fs-h3:18px;--fs-pane:16px;--fs-h4:14px;--fs-body:14px;--fs-body-sm:12.5px;--fs-meta:12px;--fs-small:11px;--fs-label:11px;--fs-micro:10px;--lh-tight:1;--lh-snug:1.2;--lh-normal:1.45;--ls-label:.1em;--ls-tc:1.2px;--ls-lane:.42px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:32px;--sp-gutter:28px;--r-xs:2px;--r-sm:4px;--r-md:10px;--r-full:9999px;--dur-fast:.14s;--dur-med:.24s;--ease:ease;--icon-inline:16px;--icon-nav:20px;--icon-transport:32px;--icon-play:40px;--shadow-float:0 8px 24px #00000080, 0 2px 6px #00000040}.aether-h1{font:var(--fw-bold) var(--fs-h1)/var(--lh-tight) var(--font-ui);color:var(--fg1);letter-spacing:-.5px}.aether-h2{font:var(--fw-semibold) var(--fs-h2)/var(--lh-snug) var(--font-ui);color:var(--fg1)}.aether-h3{font:var(--fw-semibold) var(--fs-h3)/var(--lh-snug) var(--font-ui);color:var(--fg1)}.aether-pane-title{font:var(--fw-semibold) var(--fs-pane)/var(--lh-snug) var(--font-ui);color:var(--fg1);letter-spacing:-.01em}.aether-h4{font:var(--fw-semibold) var(--fs-h4)/var(--lh-snug) var(--font-ui);color:var(--fg1)}.aether-body{font:var(--fw-regular) var(--fs-body)/var(--lh-normal) var(--font-ui);color:var(--fg1)}.aether-meta{font:var(--fw-regular) var(--fs-meta)/var(--lh-snug) var(--font-ui);color:var(--fg-muted)}.aether-small{font:var(--fw-regular) var(--fs-small)/var(--lh-snug) var(--font-ui);color:var(--fg3)}.aether-micro{font:var(--fw-regular) var(--fs-micro)/var(--lh-snug) var(--font-ui);color:var(--fg-muted)}.aether-label{font:var(--fw-semibold) var(--fs-label)/var(--lh-snug) var(--font-ui);text-transform:uppercase;letter-spacing:var(--ls-label);color:var(--fg-muted)}.aether-mono{font-family:var(--font-mono);font-size:var(--fs-meta);color:var(--fg2);letter-spacing:.02em;font-variant-numeric:tabular-nums}.aether-timecode{font:var(--fw-regular) var(--fs-meta)/var(--lh-tight) var(--font-ui);letter-spacing:var(--ls-tc);color:var(--fg-muted);font-variant-numeric:tabular-nums}.aether-pane{border-right:1px solid var(--border-hair)}.aether-pane-head{min-height:48px;padding:8px var(--sp-gutter);border-bottom:1px solid var(--border-hair);align-items:center;gap:12px;display:flex}.aether-card{background:var(--bg-raised);border-radius:var(--r-md);cursor:pointer;transition:background var(--dur-fast) var(--ease)}.aether-card:hover{background:var(--bg-raised-hover)}.aether-card.sel,.aether-row.sel{background:var(--bg-selected);box-shadow:inset 2px 0 0 var(--teal)}.aether-chip{font-size:var(--fs-small);color:var(--fg-muted);border:1px solid var(--white-a10);border-radius:var(--r-full);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;padding:3px 11px}.aether-chip:hover{color:var(--fg-hover);border-color:var(--white-a25)}.aether-chip.sel{color:var(--teal-bright);border-color:var(--teal-a50);background:var(--teal-a10)}.aether-scroll *{scrollbar-width:thin;scrollbar-color:transparent transparent}.aether-scroll :hover,.aether-scroll :focus-within{scrollbar-color:var(--white-a10) transparent}.aether-scroll ::-webkit-scrollbar{width:10px;height:10px}.aether-scroll ::-webkit-scrollbar-track{background:0 0}.aether-scroll ::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:5px}.aether-scroll :hover::-webkit-scrollbar-thumb{background:var(--white-a10);background-clip:padding-box}a{color:var(--teal-bright);text-decoration:none}a:hover{color:var(--fg1)}*{box-sizing:border-box}html,body,#app{background:var(--bg-app);min-width:1180px;min-height:100%;color:var(--fg1);font:var(--fw-regular) var(--fs-body-sm)/var(--lh-normal) var(--font-ui);margin:0}button,input,textarea,select{font:inherit}button{color:inherit}.app-header{border-bottom:1px solid var(--border-hair);grid-template-columns:1fr auto auto;align-items:center;gap:24px;height:56px;padding:0 20px;display:grid}.brand{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:18px;font-size:11px;display:flex}.brand img{width:79px;height:auto}.provider-state,.budget{font:11px/1.2 var(--font-mono);color:var(--fg3);align-items:center;gap:8px;display:flex}.budget{border-left:1px solid var(--border-hair);padding-left:24px}.status-dot{background:var(--danger);border-radius:50%;width:7px;height:7px}.status-dot.ready{background:var(--approved)}.workspace{grid-template-columns:320px minmax(540px,1fr) 370px;height:calc(100vh - 56px);display:grid;overflow:hidden}.source-pane,.finish-pane{overflow-y:auto}.source-pane{padding:22px 18px 80px}.finish-pane{border-left:1px solid var(--border-hair)}.stage-pane{grid-template-rows:auto auto minmax(300px,1fr) auto auto;min-width:0;display:grid;overflow:hidden}.stage-head,.pane-heading,.section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.stage-head{border-bottom:1px solid var(--border-hair);min-height:72px;padding:12px 20px}.pane-heading{margin-bottom:18px}h1{font-size:16px;font-weight:var(--fw-semibold);letter-spacing:-.01em;margin:4px 0 0}.eyebrow,.section-head>span:first-child{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.11em;font-size:10px;font-weight:var(--fw-semibold)}.counter,.origin{color:var(--fg-muted);font:10px/1.2 var(--font-mono);text-transform:uppercase}.notice{border:1px solid var(--border-hair);color:var(--fg3);background:var(--white-a05);border-radius:var(--r-sm);padding:12px}.notice.compact{margin-bottom:18px;font-size:11px}.concept{border-top:1px solid var(--border-hair);padding:18px 0}.concept-head{justify-content:space-between;align-items:start;margin-bottom:12px;display:flex}.concept-head strong,.concept-head span{display:block}.concept-head strong{font-size:13px}.concept-head div span{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.1em;margin-top:3px;font-size:10px}label{color:var(--fg3);margin:10px 0;font-size:11px;display:block}textarea,input,select{border:1px solid var(--border-hair);background:var(--white-a05);width:100%;color:var(--fg1);border-radius:var(--r-sm);outline:none}textarea{resize:vertical;font:11px/1.45 var(--font-mono);margin-top:5px;padding:9px 10px}input,select{font:11px/1.2 var(--font-mono);margin-top:5px;padding:7px 8px}textarea:focus,input:focus,select:focus{border-color:var(--teal-a50);background:var(--bg-focus)}.source-thumb,.source-placeholder{aspect-ratio:4/3;object-fit:cover;background:var(--bg-base);border-radius:var(--r-sm);width:100%;margin:8px 0 10px}.reference-inputs{flex-wrap:wrap;gap:6px;margin:0 0 8px;display:flex}.file-button{border:1px solid var(--border-hair);border-radius:var(--r-sm);color:var(--fg3);font:600 10px/1 var(--font-ui);cursor:pointer;padding:7px 9px;position:relative;overflow:hidden}.file-button:hover{color:var(--fg1);border-color:var(--border-strong)}.file-button:has(input:disabled){opacity:.42;cursor:not-allowed}.file-button input{opacity:0;block-size:1px;inline-size:1px;position:absolute}.reference-proof{color:var(--fg-muted);font:9px/1.4 var(--font-mono);margin:0 0 8px;display:block}.source-placeholder{color:var(--fg-faint);text-transform:uppercase;letter-spacing:.08em;border:1px dashed var(--white-a15);place-items:center;font-size:10px;display:grid}.button-row,.stage-actions{align-items:center;gap:8px;display:flex}.button-row.wrap{flex-wrap:wrap}.button{border:1px solid var(--border-hair);border-radius:var(--r-sm);background:var(--white-a05);cursor:pointer;min-height:31px;font-size:11px;font-weight:var(--fw-semibold);transition:background var(--dur-fast) var(--ease);padding:6px 10px}.button:hover:not(:disabled){background:var(--white-a10)}.button.primary{background:var(--teal);border-color:var(--teal);color:var(--white)}.button.primary:hover:not(:disabled){background:var(--teal-bright)}.button:disabled{opacity:.35;cursor:not-allowed}.button.wide{width:100%;margin-top:8px}.text-button{color:var(--teal-bright);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px}.section-head{border-top:1px solid var(--border-hair);min-height:43px;margin-top:12px}.catalog-row{border-top:1px solid var(--border-hair);grid-template-columns:6px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 4px;display:grid}.catalog-row strong,.catalog-row code{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.catalog-row strong{font-size:11px}.catalog-row code{color:var(--fg-muted);margin-top:3px;font-size:9px}.catalog-row small{color:var(--fg-muted);margin-top:3px;font-size:9px;display:block}.role-mark{background:var(--fg-muted);width:4px;height:26px}.role-mark.character{background:var(--dept-characters)}.role-mark.prop{background:var(--dept-props)}.role-mark.environment{background:var(--dept-sets)}.origin.generated{color:var(--approved)}.direction-row{border-bottom:1px solid var(--border-hair);padding:10px 20px}.direction-row textarea{margin:0}.canvas-shell{background:var(--bg-base);min-height:0;position:relative;overflow:hidden}#stage-canvas{touch-action:none;width:100%;height:100%;display:block}.canvas-hud{color:var(--fg3);font:10px/1.2 var(--font-mono);pointer-events:none;border-radius:var(--r-sm);background:#131313b8;gap:10px;padding:7px 9px;display:flex;position:absolute}.canvas-hud.top-left{top:12px;left:12px}.canvas-hud.bottom-left{bottom:12px;left:12px}.entity-strip{border-top:1px solid var(--border-hair);gap:7px;min-height:52px;padding:9px 16px;display:flex;overflow-x:auto}.entity-chip{text-align:left;border:1px solid var(--border-hair);border-radius:var(--r-sm);background:var(--white-a05);cursor:pointer;min-width:120px;padding:7px 9px}.entity-chip span,.entity-chip small{display:block}.entity-chip span{font:10px/1.2 var(--font-mono)}.entity-chip small{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:2px;font-size:9px}.entity-chip.selected{border-color:var(--teal-a50);background:var(--bg-selected);box-shadow:inset 2px 0 0 var(--teal)}.json-drawer,.event-drawer{border-top:1px solid var(--border-hair)}.json-drawer summary,.event-drawer summary{cursor:pointer;color:var(--fg-muted);padding:9px 16px;font-size:11px}.json-drawer pre{background:var(--bg-base);max-height:220px;color:var(--fg3);font:10px/1.45 var(--font-mono);margin:0;padding:12px 20px;overflow:auto}.pane-section{border-bottom:1px solid var(--border-hair);padding:20px}.pane-section.output-section{padding-top:8px}.inspector-title{margin-bottom:14px}.inspector-title strong,.inspector-title code{display:block}.inspector-title code{color:var(--fg-muted);margin-top:3px;font-size:9px}fieldset{border:0;margin:12px 0;padding:0}legend{color:var(--fg3);font-size:11px}.vector{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.vector label{grid-template-columns:12px 1fr;align-items:center;gap:3px;margin:3px 0;display:grid}.vector input{margin:0}.vector label span{color:var(--fg-muted);font:9px var(--font-mono)}.inline-input{grid-template-columns:1fr auto;align-items:center;gap:6px;display:grid}.inline-input em{color:var(--fg-muted);font-style:normal}.inspector-divider{background:var(--border-hair);height:1px;margin:18px 0}.light-editor{border-top:1px solid var(--border-hair);margin-top:12px;padding-top:10px}.light-editor>strong{font:10px/1.2 var(--font-mono);color:var(--fg2)}.light-editor input[type=color]{min-height:31px;padding:3px}.control-grid{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px;display:grid}.control-grid figure{background:var(--bg-base);margin:0}.control-grid img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.control-grid figcaption{color:var(--fg3);font:9px/1.2 var(--font-mono);text-transform:uppercase;justify-content:space-between;padding:5px;display:flex}.control-grid figcaption span{border:1px solid var(--border-hair);text-align:center;border-radius:50%;width:13px;height:13px}.caveat,.empty-copy{color:var(--fg-muted);font-size:10px}.result-list{margin:12px 0}.result-card{border:1px solid var(--border-hair);margin-top:8px}.result-card.approved{border-color:var(--approved)}.result-card img{width:100%;display:block}.result-card>div{grid-template-columns:1fr auto;gap:3px 8px;padding:8px;display:grid}.result-card code{color:var(--fg-muted);text-overflow:ellipsis;font-size:8px;overflow:hidden}.result-card button{grid-area:1/2/3}.video-result{margin-top:10px}.video-result video{background:var(--bg-base);width:100%}.video-result div{justify-content:space-between;padding-top:6px;display:flex}.video-result code{color:var(--fg-muted);font-size:8px}.candidate-evidence{border-top:1px solid var(--border-hair);color:var(--fg-muted);font:9px/1.35 var(--font-mono);flex-wrap:wrap;gap:5px 9px!important;padding:8px!important;display:flex!important}.candidate-evidence small{overflow-wrap:anywhere;flex-basis:100%}.candidate-evidence .gate.pass{color:var(--approved)}.candidate-evidence .gate.fail{color:var(--danger)}.review-form{border-top:1px solid var(--border-hair);padding:8px}.review-form summary{color:var(--fg3);cursor:pointer;font-size:10px}.review-grid{grid-template-columns:1fr 1fr!important;gap:0 8px!important;padding:0!important;display:grid!important}.review-form .button-row{justify-content:flex-start!important;padding:0!important;display:flex!important}.review-form button{grid-area:auto}.review-form .danger{color:var(--danger)}.check-row{align-items:center;gap:7px;display:flex}.check-row input{width:auto;margin:0}.candidate-actions{border-top:1px solid var(--border-hair);align-items:center;justify-content:flex-end!important;gap:10px!important;padding:8px!important;display:flex!important}.candidate-actions button{grid-area:auto}.candidate-actions .danger{color:var(--danger)}.video-result .candidate-evidence,.video-result .review-grid,.video-result .button-row{justify-content:flex-start}.video-result .review-form{margin-top:8px}.event-actions{padding:0 16px 8px}.event-drawer ol{margin:0;padding:0 16px 24px;list-style:none}.event-drawer li{border-top:1px solid var(--border-hair);grid-template-columns:55px 105px 1fr;gap:5px;padding:6px 0;font-size:9px;display:grid}.event-drawer time,.event-drawer code{color:var(--fg-muted)}.event-drawer span{overflow-wrap:anywhere}.busy{z-index:10;text-align:center;background:#131313e6;place-content:center;display:grid;position:fixed;inset:0}.busy[hidden]{display:none}.busy span{border:2px solid var(--white-a15);border-top-color:var(--teal-bright);border-radius:50%;width:28px;height:28px;margin:0 auto 16px;animation:.8s linear infinite spin}.busy strong{font-size:15px}.busy small{max-width:380px;color:var(--fg-muted);margin-top:8px}.toast{z-index:20;border:1px solid var(--border-hair);background:var(--bg-float);max-width:420px;box-shadow:var(--shadow-float);border-radius:var(--r-sm);padding:12px 15px;position:fixed;bottom:20px;right:20px}.toast[data-kind=error]{border-color:var(--danger)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1280px){.workspace{grid-template-columns:285px minmax(500px,1fr) 340px}.source-pane{padding-inline:14px}}
