:root{--bg:#f6f5f1;--surface:#fff;--sunken:#eceae4;--border:#e2dfd7;--border-strong:#cfcbc0;--text:#14130f;--text-2:#5e5b53;--text-3:#8f8b80;--accent:#e8a33d;--accent-hover:#f0b252;--accent-edge:#a86a12;--on-accent:#1a1206;--accent-text:#8a5a0f;--success:#1f9d55;--success-bg:#e6f6ec;--warning:#c27a00;--warning-bg:#fff3dc;--error:#d93a2b;--error-bg:#fde8e6;--info:#2f6feb;--info-bg:#e8f0fe;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif;--font-ui:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", monospace;--fs-12:12px;--fs-13:13px;--fs-14:14px;--fs-16:16px;--fs-20:20px;--fs-24:24px;--fs-32:32px;--fs-48:48px;--fs-72:72px;--r-media:4px;--r-chip:8px;--r-card:12px;--r-panel:20px;--r-pill:999px;--shadow-sm:0 1px 2px #14130f0f;--shadow-md:0 4px 12px #14130f14;--shadow-lg:0 12px 32px #14130f1f, 0 2px 6px #14130f0f;--shadow-key:inset 0 -3px 0 var(--accent-edge), 0 4px 10px #a86a1247;--shadow-key-pressed:inset 0 -1px 0 var(--accent-edge), 0 2px 4px #a86a1238;--ease:cubic-bezier(.4, 0, .2, 1);--t-fast:.15s var(--ease);--t-lift:.2s var(--ease);--scrim:linear-gradient(180deg, #14130f00 40%, #14130fc7 100%);--topbar-h:60px;--gutter:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (width<=640px){:root{--gutter:16px}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:400 var(--fs-14)/1.5 var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}img,video{max-width:100%;display:block}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--info);outline-offset:2px}h1,h2,h3,.display{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-.04em;margin:0;font-weight:700;line-height:1.05}h1{font-size:var(--fs-48)}h2{font-size:var(--fs-20)}h3{font-size:var(--fs-16)}.mono{font-family:var(--font-mono);font-size:var(--fs-12)}.label{font-size:var(--fs-12);letter-spacing:.02em;color:var(--text-2);font-weight:600}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.notice{color:var(--text-2);font-size:var(--fs-13);margin:0}small{color:var(--text-3);font-weight:400;font-size:var(--fs-12)}.page{width:100%;padding:24px var(--gutter) 48px}.side-nav{top:calc(var(--topbar-h) + 24px);flex-direction:column;gap:20px;display:flex;position:sticky}.side-nav h1{font-size:var(--fs-32);overflow-wrap:anywhere}.side-nav nav{flex-direction:column;gap:2px;display:flex}.side-nav-link{border-radius:var(--r-chip);color:var(--text-2);font:inherit;font-size:var(--fs-14);text-align:left;cursor:pointer;transition:background var(--t-fast), color var(--t-fast);background:0 0;border:0;padding:8px 12px}.side-nav-link:hover{background:var(--sunken);color:var(--text)}.side-nav-link.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.page-head{flex-direction:column;gap:6px;margin-bottom:24px;display:flex}.section-title{font-size:var(--fs-24);margin:40px 0 16px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-sm)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:var(--shadow-sm)}.skeleton{background:linear-gradient(90deg, var(--sunken) 0%, #f3f1ec 50%, var(--sunken) 100%);background-size:200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@keyframes pulse-ring{50%{box-shadow:0 0 0 4px #2f6feb2e}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=640px){h1{font-size:var(--fs-32)}}.btn{border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);min-height:40px;color:var(--text);font-size:var(--fs-14);white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-sm);transition:background var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast), color var(--t-fast);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--border-strong);background:#fbfaf7}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.btn svg{flex:none;width:16px;height:16px}.btn-key{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-key);border-color:#0000;padding-bottom:3px}.btn-key:hover:not(:disabled){background:var(--accent-hover);border-color:#0000}.btn-key:active:not(:disabled){box-shadow:var(--shadow-key-pressed);padding-bottom:1px;transform:translateY(1px)}.btn-key:disabled{background:var(--sunken);color:var(--text-3);opacity:1;box-shadow:inset 0 -3px 0 var(--border-strong)}.btn-ghost{box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--sunken);border-color:#0000}.btn-danger{color:var(--error)}.btn-sm{min-height:32px;font-size:var(--fs-13);border-radius:var(--r-chip);padding:0 12px}.btn-lg{min-height:48px;font-size:var(--fs-16);padding:0 24px}.btn-lg.btn-key{padding-bottom:3px}.chip{border-radius:var(--r-chip);background:var(--sunken);height:32px;color:var(--text);font-size:var(--fs-12);letter-spacing:.02em;white-space:nowrap;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast);border:1px solid #0000;align-items:center;gap:6px;padding:0 12px;font-weight:600;text-decoration:none;display:inline-flex}button.chip{cursor:pointer}button.chip:hover:not(:disabled),a.chip:hover{background:#e3e0d8}button.chip:disabled{opacity:.5;cursor:not-allowed}.chip svg{flex:none;width:14px;height:14px}.chip-sm{height:24px;padding:0 8px;font-size:11px}.chip-outline{background:var(--surface);border-color:var(--border)}.chip-warning{background:var(--warning-bg);color:var(--warning)}.chip-error{background:var(--error-bg);color:var(--error)}.chip-success{background:var(--success-bg);color:var(--success)}.chip-info{background:var(--info-bg);color:var(--info)}.chip-wrap{white-space:normal;height:auto;min-height:32px;padding:6px 12px;line-height:1.4}.dot{border-radius:var(--r-pill);background:var(--text-3);flex:none;width:8px;height:8px}.dot.on{background:var(--success);box-shadow:0 0 0 3px var(--success-bg)}.dot.warn{background:var(--warning)}.dot.bad{background:var(--error)}.pill{border-radius:var(--r-pill);background:var(--sunken);color:var(--text-2);font-size:var(--fs-12);white-space:nowrap;align-items:center;gap:6px;padding:2px 10px;font-weight:600;display:inline-flex}.pill-success{background:var(--success-bg);color:var(--success)}.pill-warning{background:var(--warning-bg);color:var(--warning)}.pill-error{background:var(--error-bg);color:var(--error)}.pill-info{background:var(--info-bg);color:var(--info)}.pill-accent{background:var(--accent);color:var(--on-accent)}.pill-live{animation:pulse-ring 1.6s var(--ease) infinite}.segmented{background:var(--sunken);border-radius:10px;gap:2px;padding:2px;display:inline-flex}.segmented button{border-radius:var(--r-chip);height:28px;color:var(--text-2);font-size:var(--fs-12);letter-spacing:.02em;cursor:pointer;white-space:nowrap;transition:background var(--t-fast), color var(--t-fast), box-shadow var(--t-fast);background:0 0;border:0;padding:0 12px;font-weight:600}.segmented button:hover:not(:disabled){color:var(--text)}.segmented button[aria-checked=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.segmented button:disabled{cursor:not-allowed;opacity:.5}.segmented-group{align-items:center;gap:8px;display:inline-flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span{font-size:var(--fs-12);letter-spacing:.02em;color:var(--text-2);font-weight:600}.input,.textarea,.select{border:1px solid var(--border);border-radius:var(--r-chip);background:var(--surface);width:100%;min-height:40px;color:var(--text);transition:border-color var(--t-fast), box-shadow var(--t-fast);outline:none;padding:8px 12px}.textarea{resize:vertical;line-height:1.5}.select{cursor:pointer;width:auto}.input:hover,.textarea:hover,.select:hover{border-color:var(--border-strong)}.input:focus,.textarea:focus,.select:focus{border-color:var(--text);box-shadow:0 0 0 3px #14130f14}.input:disabled,.textarea:disabled,.select:disabled{background:var(--sunken);color:var(--text-3)}.check{cursor:pointer;font-size:var(--fs-13);align-items:center;gap:8px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--text)}.alert{border-radius:var(--r-card);font-size:var(--fs-13);align-items:flex-start;gap:8px;padding:10px 12px;line-height:1.45;display:flex}.alert svg{flex:none;width:16px;height:16px;margin-top:1px}.alert-error{background:var(--error-bg);color:var(--error)}.alert-warning{background:var(--warning-bg);color:#8a5600}.alert-info{background:var(--info-bg);color:var(--info)}.alert-success{background:var(--success-bg);color:var(--success)}.bar{border-radius:var(--r-pill);background:var(--sunken);height:8px;position:relative;overflow:hidden}.bar-fill{border-radius:inherit;background:var(--text);height:100%;transition:width .6s var(--ease)}.bar-fill.accent{background:var(--accent-edge)}.bar-fill.warm{background:var(--warning)}.bar-fill.hot{background:var(--error)}.bar-fill.cool{background:var(--success)}.field>.segmented{align-self:flex-start}.topbar{z-index:30;min-height:var(--topbar-h);padding:10px var(--gutter);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--border);background:#f6f5f1e0;align-items:center;gap:16px;display:flex;position:sticky;top:0}.brand{font-size:var(--fs-20);color:var(--text);flex:none;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.brand:before{content:"";background:var(--accent);width:14px;height:14px;box-shadow:inset 0 -2px 0 var(--accent-edge);border-radius:4px}.topnav{order:2;gap:4px;min-width:0;display:flex}.topnav a{border-radius:var(--r-chip);color:var(--text-2);white-space:nowrap;transition:background var(--t-fast), color var(--t-fast);align-items:center;gap:6px;padding:6px 12px;font-weight:600;text-decoration:none;display:inline-flex}.topnav a:hover{color:var(--text);background:var(--sunken)}.topnav a[aria-current=page]{color:var(--text);background:var(--surface);box-shadow:var(--shadow-sm)}.nav-badge{border-radius:var(--r-pill);background:var(--accent);min-width:18px;height:18px;color:var(--on-accent);place-items:center;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-grid}.topbar-status{order:3;align-items:center;gap:8px;min-width:0;margin-left:auto;display:flex}.running-chip{min-width:0;max-width:420px}.running-chip b,.running-detail{text-overflow:ellipsis;overflow:hidden}.running-chip b{flex:none;max-width:140px}.running-detail{font-weight:500}.running-dot{background:var(--info);animation:pulse-ring 1.6s var(--ease) infinite}.user-menu{flex:none;order:4;align-items:center;gap:4px;min-width:0;display:flex}.user-name{border-radius:var(--r-chip);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:var(--fs-13);color:var(--text-2);padding:6px 8px;font-weight:600;text-decoration:none;overflow:hidden}.user-name:hover,.user-name[aria-current=page]{color:var(--text);background:var(--sunken)}@media (width<=1180px){.topbar{flex-wrap:wrap;gap:8px 12px}.user-menu{order:1;margin-left:auto}.topnav,.topbar-status{scrollbar-width:none;flex-basis:100%;margin-left:0;padding-bottom:2px;overflow-x:auto}.topnav::-webkit-scrollbar{display:none}.topbar-status::-webkit-scrollbar{display:none}.topnav>*,.topbar-status>*{flex:none}.topbar-status:empty{display:none}.running-chip{max-width:300px}}@media (width<=480px){.brand{font-size:var(--fs-16)}.topnav{gap:0}.topnav a{padding:6px 10px}.user-name{max-width:120px}.running-detail{display:none}}.home{padding-bottom:32px}.hero{isolation:isolate;color:#fff;background:#14130f;height:min(72vh,620px);min-height:420px;position:relative;overflow:hidden}.hero.skeleton{background-color:var(--sunken)}.hero-backdrop{object-fit:cover;filter:blur(28px)saturate(1.15)brightness(.7);z-index:-2;width:calc(100% + 80px);max-width:none;height:calc(100% + 80px);position:absolute;inset:-40px}.hero-scrim{z-index:-1;background:linear-gradient(90deg,#14130fd1 0%,#14130f59 55%,#14130f1a 100%),linear-gradient(#14130f00 60%,#14130f99 100%);position:absolute;inset:0}.hero-inner{height:100%;padding:40px var(--gutter) 112px;justify-content:space-between;align-items:flex-end;gap:32px;display:flex;position:relative}.hero-copy{flex-direction:column;align-items:flex-start;gap:16px;min-width:0;max-width:760px;display:flex}.hero-copy .label{color:var(--text-2)}.hero-copy.on-media .label{color:#ffffffb8}.hero-title{font-size:var(--fs-72);overflow-wrap:anywhere}.hero-media{aspect-ratio:9/16;object-fit:cover;border-radius:var(--r-media);height:100%;animation:hero-in .4s var(--ease);flex:none;box-shadow:0 24px 64px #00000073}@keyframes hero-in{0%{opacity:0;transform:translateY(8px)}}.hero-empty{background:var(--surface);color:var(--text);border-bottom:1px solid var(--border);height:auto;min-height:0}.hero-empty .hero-copy{padding:72px var(--gutter) 80px}.hero-empty .hero-copy p{max-width:520px;font-size:var(--fs-16);margin:0}.hero-progress{padding:0 var(--gutter);gap:6px;display:flex;position:absolute;bottom:60px;left:0;right:0}.hero-segment{cursor:pointer;background:0 0;border:0;flex:1;max-width:120px;height:20px;padding:0;position:relative}.hero-segment:before{content:"";border-radius:var(--r-pill);background:#ffffff47;position:absolute;inset:8px 0}.hero-segment.past:before{background:#ffffffe6}.hero-segment-fill{border-radius:var(--r-pill);background:var(--accent);animation:segment-fill var(--slide-ms) linear forwards;position:absolute;top:8px;bottom:8px;left:0}.hero-segment-fill.paused{animation-play-state:paused}@keyframes segment-fill{0%{width:0}to{width:100%}}.home-body{padding-top:0}.dock{z-index:2;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);max-width:880px;box-shadow:var(--shadow-lg);flex-direction:column;gap:14px;margin:-40px auto 0;padding:20px;display:flex;position:relative}.dock-title{font-size:var(--fs-24)}.dock-row{gap:8px;display:flex}.dock-input{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg);min-width:0;height:48px;font-size:var(--fs-16);transition:border-color var(--t-fast), background var(--t-fast);outline:none;flex:1;padding:0 16px}.dock-input:focus{border-color:var(--text);background:var(--surface)}.dock-chips{flex-wrap:wrap;gap:8px;display:flex}.grid-head{align-items:baseline;gap:10px;display:flex}.grid-head .faint{font-family:var(--font-mono)}.tiles{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.tile{aspect-ratio:9/16;border-radius:var(--r-media);background:var(--sunken);color:#fff;transition:transform var(--t-lift), box-shadow var(--t-lift);text-decoration:none;display:block;position:relative;overflow:hidden}.tile:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.tile-media{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.tile-empty{color:var(--text-3);background:linear-gradient(160deg,#e9e6dd,#d9d5c9);place-items:center;display:grid}.tile-empty .display{font-size:var(--fs-72)}.tile-scrim{background:var(--scrim);pointer-events:none;position:absolute;inset:0}.tile-stage{color:var(--text);background:#ffffffeb;position:absolute;top:8px;left:8px}.tile-stage.pill-info{background:var(--info-bg);color:var(--info)}.tile-stage.pill-success{background:var(--success-bg);color:var(--success)}.tile-stage.pill-warning{background:var(--warning-bg);color:var(--warning)}.tile-stage.pill-error{background:var(--error-bg);color:var(--error)}.tile-stage.pill-accent{background:var(--accent);color:var(--on-accent)}.tile-info{flex-direction:column;gap:2px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.tile-title{font-family:var(--font-display);font-size:var(--fs-16);text-transform:uppercase;letter-spacing:-.02em;overflow-wrap:anywhere;line-height:1.1}.tile-meta{font-size:var(--fs-12);color:#ffffffb8}.tile-skeleton:hover{box-shadow:none;transform:none}@media (width<=900px){.hero-title{font-size:var(--fs-48)}}@media (width<=640px){.hero{height:78vh;min-height:480px}.hero-backdrop{display:none}.hero-inner{position:static}.hero-media{z-index:-2;width:100%;height:100%;box-shadow:none;border-radius:0;position:absolute;inset:0}.hero-scrim{background:linear-gradient(#14130f1a 30%,#14130fd9 100%)}.hero-title{font-size:var(--fs-32)}.dock{margin-top:-24px;padding:16px}.dock-row{flex-direction:column}.dock-input{flex:none}.dock-title{font-size:var(--fs-20)}}.editor{width:100%;padding:0 var(--gutter) 32px}.editor-loading{min-height:60vh}.editor-skeleton{border-radius:var(--r-panel);height:60vh}.editor-header{flex-wrap:wrap;align-items:center;gap:12px 16px;padding:20px 0 16px;display:flex}.title-input{border-radius:var(--r-chip);min-width:0;font-size:var(--fs-32);transition:border-color var(--t-fast), background var(--t-fast);background:0 0;border:1px solid #0000;outline:none;flex:320px;margin-left:-8px;padding:4px 8px}.title-input:hover{border-color:var(--border)}.title-input:focus{border-color:var(--text);background:var(--surface)}.save-state{font-size:var(--fs-12);color:var(--text-3)}.save-state.saved:before{content:"● ";color:var(--success)}.provider-bar{flex-wrap:wrap;gap:8px 16px;display:flex}.provider-bar .label{align-items:center;gap:4px;display:inline-flex}.provider-bar .label svg{width:14px;height:14px}.editor-body{grid-template-columns:clamp(320px,30vw,460px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.chat{top:calc(var(--topbar-h) + 16px);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);height:80dvh;min-height:420px;box-shadow:var(--shadow-sm);flex-direction:column;display:flex;position:sticky;overflow:hidden}.chat-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.messages{overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.chat-empty{flex-direction:column;gap:8px;display:flex}.chat-empty p{margin:0 0 4px}.suggestion{text-align:left;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg);cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast);padding:10px 12px}.suggestion:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface)}.suggestion:disabled{opacity:.5;cursor:not-allowed}.bubble-row{flex-direction:column;gap:4px;max-width:92%;display:flex}.bubble-row.user{align-self:flex-end;align-items:flex-end}.bubble-row.assistant{align-self:flex-start;align-items:flex-start}.chat-convert{align-self:flex-start}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px;padding:10px 14px;line-height:1.55}.bubble.user{background:var(--text);color:#fff;border-bottom-right-radius:4px}.bubble.assistant{background:var(--bg);border:1px solid var(--border);border-bottom-left-radius:4px}.bubble-tag{letter-spacing:.02em;color:var(--text-3);padding-left:4px;font-size:11px;font-weight:600}.typing{color:var(--text-3);font-style:italic}.composer{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:var(--shadow-md);flex-direction:column;gap:10px;margin:0 12px 12px;padding:12px;display:flex}.composer-input{resize:none;background:0 0;border:0;outline:none;min-height:60px;padding:4px;line-height:1.5}.composer-input:disabled{color:var(--text-3)}.composer-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.workspace{flex-direction:column;gap:12px;min-width:0;display:flex}.workspace-empty{text-align:center;color:var(--text-2);flex-direction:column;align-items:center;gap:8px;padding:48px 24px;display:flex}.workspace-empty svg{width:28px;height:28px;color:var(--text-3)}.workspace-empty p{max-width:360px;margin:0}.narration{width:100%;height:40px}.progress{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.progress-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.progress-cancel{margin-left:auto}.steps{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.steps li{border-radius:var(--r-chip);background:var(--sunken);height:28px;color:var(--text-3);font-size:var(--fs-12);align-items:center;gap:4px;padding:0 10px;font-weight:600;display:inline-flex}.steps li svg{width:12px;height:12px}.steps li.done{background:var(--success-bg);color:var(--success)}.steps li.current{background:var(--accent);color:var(--on-accent);box-shadow:inset 0 -2px 0 var(--accent-edge)}.progress-bars{flex-direction:column;gap:8px;display:flex}.progress-line{grid-template-columns:96px 1fr 44px;align-items:center;gap:12px;display:grid}.progress-line .mono{text-align:right;color:var(--text-2)}.progress-detail{font-size:var(--fs-13);color:var(--text-2);margin:0}.job-notice{max-width:100%}.final{align-items:flex-start;gap:20px;padding:16px;display:flex}.final video{aspect-ratio:9/16;border-radius:var(--r-media);object-fit:cover;background:#000;flex:none;width:200px}.final-copy{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.final-copy h2{font-size:var(--fs-24)}.final-copy p{margin:0}.busy-overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:progress;background:#14130f59;place-items:center;display:grid;position:fixed;inset:0}.busy-card{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:380px;padding:24px 28px;display:flex}.busy-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite busy-spin}@keyframes busy-spin{to{transform:rotate(360deg)}}.workspace-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 16px;display:flex}.workspace-estimate{font-size:var(--fs-13);margin:0}.workspace-estimate .mono{color:var(--text)}.stages{flex-direction:column;gap:10px;display:flex}.stage{transition:border-color var(--t-fast), box-shadow var(--t-lift);overflow:hidden}.stage.open{box-shadow:var(--shadow-md)}.stage.running,.stage.queued{border-color:var(--info)}.stage-head{align-items:center;gap:12px;padding:12px 16px 12px 12px;display:flex}.stage-head>.btn{flex:none}.stage-toggle{border-radius:var(--r-chip);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;min-width:0;padding:4px;display:flex}.stage-toggle:hover .stage-name{text-underline-offset:3px;text-decoration:underline}.stage-heading{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.stage-title{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.stage-name{font-family:var(--font-display);font-weight:700;font-size:var(--fs-16);text-transform:uppercase;letter-spacing:-.02em}.stage-model{color:var(--text-2)}.stage-swap{font-size:var(--fs-12);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stage-chevron{border-right:2px solid var(--text-3);border-bottom:2px solid var(--text-3);width:8px;height:8px;transition:transform var(--t-fast);flex:none;margin:0 6px;transform:rotate(45deg)translate(-2px,-2px)}.stage.open .stage-chevron{transform:rotate(-135deg)translate(-2px,-2px)}.step-index{border-radius:var(--r-chip);background:var(--sunken);width:28px;height:28px;color:var(--text-2);font-family:var(--font-mono);font-size:var(--fs-12);flex:none;place-items:center;display:inline-grid}.step-index svg{width:14px;height:14px}.stage.done .step-index{background:var(--success-bg);color:var(--success)}.stage.running .step-index,.stage.queued .step-index{background:var(--info-bg);color:var(--info)}.stage>.progress,.stage>.alert{box-shadow:none;margin:0 16px 12px}.stage-body{border-top:1px solid var(--border);background:var(--bg);flex-direction:column;gap:14px;padding:16px;display:flex}.stage-body[hidden]{display:none}.stage-meta{font-size:var(--fs-13);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.stage-note{font-size:var(--fs-13);margin:0}.stage-resolution{align-self:flex-start}.stage-scenes{grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:12px;display:grid}.stage-scene{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:12px}.stage-scene.working{border-color:var(--info);box-shadow:0 0 0 3px var(--info-bg)}.stage-media-row{grid-template-columns:112px minmax(0,1fr);align-items:start;gap:12px;display:grid}.stage-scene-fields{flex-direction:column;align-items:flex-start;gap:10px;min-width:0;display:flex}.stage-scene-fields .field{align-self:stretch}.stage-frame{aspect-ratio:9/16;border-radius:var(--r-media);background:var(--sunken);position:relative;overflow:hidden}.stage-frame img,.stage-frame video{object-fit:cover;width:100%;height:100%}.stage-frame-empty{color:var(--text-3);font-size:var(--fs-12);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.stage-frame img+.stage-frame-empty{background:var(--surface);color:var(--text-2);flex-direction:row;padding:4px;inset:auto 0 0}.stage-frame-empty svg{width:20px;height:20px}.stage-frame-sound{justify-content:center;width:28px;padding:0;position:absolute;top:6px;right:6px}.timing-table{border-collapse:collapse;width:100%;font-size:var(--fs-13);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}.timing-table th,.timing-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 12px}.timing-table thead th{font-size:var(--fs-12);color:var(--text-2);background:var(--sunken);font-weight:600}.timing-table tfoot th,.timing-table tfoot td{border-bottom:0;font-weight:600}.timing-table .timing-seconds{text-align:right;white-space:nowrap}.timing-text{white-space:nowrap;text-overflow:ellipsis;width:100%;max-width:0;overflow:hidden}@media (width<=640px){.stage-head{flex-wrap:wrap;padding:10px 12px}.stage-head>.btn{margin-left:44px}.stage-swap{white-space:normal}.stage-body{padding:12px}.stage>.progress,.stage>.alert{margin:0 12px 10px}.stage-media-row{grid-template-columns:88px minmax(0,1fr)}.workspace-toolbar{justify-content:space-between}}.stage-frame-open{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.stage-frame-open img{object-fit:cover;width:100%;height:100%;display:block}.lightbox{z-index:110;cursor:zoom-out;background:#14130fdb;place-items:center;display:grid;position:fixed;inset:0}.lightbox-figure{cursor:default;align-items:flex-end;gap:24px;max-width:92vw;margin:0;display:flex}.lightbox-figure img{aspect-ratio:9/16;object-fit:contain;border-radius:var(--r-media);background:#000;width:auto;height:90vh}.lightbox-figure figcaption{color:#fff;max-width:420px;font-size:var(--fs-13);flex-direction:column;gap:8px;line-height:1.5;display:flex}.lightbox-figure figcaption span{color:#ffffffbf}.lightbox-nav{color:#fff;cursor:pointer;background:#ffffff24;border:0;border-radius:50%;width:44px;height:44px;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:#ffffff42}.lightbox-nav.prev{left:24px}.lightbox-nav.prev svg{transform:rotate(180deg)}.lightbox-nav.next{right:24px}.lightbox-close{position:absolute;top:20px;right:24px}.shutdown-toggle{font-size:var(--fs-13);cursor:pointer;align-items:center;gap:6px;margin-right:auto;display:inline-flex}.social{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:48px;display:grid}.social-content{flex-direction:column;min-width:0;display:flex}.social-content>.section-title:first-of-type,.social-content .grid-head .section-title{margin-top:32px}.social-intro{flex-direction:column;gap:6px;display:flex}.social-intro h2{font-size:var(--fs-32)}.network-link{flex-direction:column;align-items:stretch;gap:2px;display:flex}.network-link:first-child{flex-direction:row;justify-content:space-between}.network-link-name{align-items:center;gap:8px;display:flex}.network-link-account{font-size:var(--fs-12);text-overflow:ellipsis;white-space:nowrap;padding-left:16px;overflow:hidden}.network-account{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px 24px;padding:20px 24px;display:grid}.network-account-main{flex-direction:column;gap:6px;min-width:0;display:flex}.network-account-title{align-items:center;gap:12px;display:flex}.network-account-title h2{font-size:var(--fs-32)}.network-account .setup{grid-column:1/-1}.setup{font-size:var(--fs-13);color:var(--text-2);flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.setup code{color:var(--text);word-break:break-all;background:var(--sunken);border-radius:4px;padding:1px 6px}.publications-card{padding:4px 16px}.publications{margin:0;padding:0;list-style:none}.publication{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:12px 0;display:grid}.publication:first-child{border-top:0}.publication-platform{text-transform:capitalize}.publication-main{flex-direction:column;gap:2px;min-width:0;display:flex}.publication-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.publication-main a{text-decoration:none}.publication-main a:hover{color:var(--text);text-decoration:underline}.publication-detail{font-size:var(--fs-12);color:var(--text-2);overflow-wrap:anywhere}.publication-date{font-size:var(--fs-12);white-space:nowrap}.publication-actions{justify-content:flex-end;gap:6px;display:flex}.publish{flex-direction:column;gap:14px;padding:20px;display:flex}.publish .publications{margin-top:4px}.publish-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.publish-head h2{font-size:var(--fs-24)}.publish-row{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.publish-row .field{flex:0 240px}.platforms{flex-wrap:wrap;gap:8px;display:flex}.platform-chip{cursor:pointer;border-color:var(--border);background:var(--surface)}.platform-chip.selected{background:var(--text);color:#fff;border-color:var(--text)}.platform-chip.selected .faint{color:#fff9}button.platform-chip.selected:hover{background:#2b2a25}.publish-submit{align-self:flex-start}@media (width<=760px){.publication{grid-template-columns:auto minmax(0,1fr)}.publication>.pill,.publication-date{grid-column:2;justify-self:start}.publication-actions{grid-column:1/-1;justify-content:flex-start}.publication-actions:empty{display:none}}.publication-platform{justify-content:center;min-width:88px}@media (width<=760px){.publication{align-items:start}}.settings{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:48px;max-width:none;display:grid}.settings-content{flex-direction:column;min-width:0;display:flex}.settings-skeleton{border-radius:var(--r-panel);height:320px}.settings-block{border-top:1px solid var(--border);scroll-margin-top:calc(var(--topbar-h) + 16px);padding:32px 0}.settings-block:first-of-type{border-top:0;padding-top:4px}.settings-block-head{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:16px;display:flex}.settings-block-head h2{font-size:var(--fs-24)}.settings-card{flex-direction:column;gap:16px;min-width:0;padding:20px;display:flex}.settings-card-head{flex-direction:column;gap:4px;display:flex}.settings-card-head h3{font-size:var(--fs-20)}.settings-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-save{flex-direction:column;align-items:flex-end;gap:12px;padding-top:20px;display:flex}.pc-layout{grid-template-columns:minmax(280px,1fr) minmax(0,2.4fr);align-items:start;gap:16px;display:grid}.spec-card{flex-direction:column;gap:20px;padding:20px;display:flex}.spec-skeleton{min-height:280px}.spec-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;display:flex}.spec-gpu{font-size:var(--fs-24);margin-top:4px}.spec-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.spec-group{flex-direction:column;gap:10px;min-width:0;display:flex}.spec-group dl{flex-direction:column;gap:10px;margin:0;display:flex}.spec-row{flex-direction:column;gap:2px;min-width:0;display:flex}.spec-row dt{color:var(--text-3);font-size:var(--fs-12)}.spec-row dd{font-size:var(--fs-14);overflow-wrap:anywhere;margin:0}.spec-disk{flex-direction:column;gap:6px;display:flex}.spec-disk-bar{border-radius:var(--r-pill);background:var(--sunken);height:6px;overflow:hidden}.spec-disk-bar span{background:var(--accent);height:100%;display:block}.key-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.key-card{flex-direction:column;align-items:flex-start;gap:14px;min-width:0;padding:20px;display:flex}.key-head{align-items:flex-start;gap:12px;display:flex}.key-icon{border-radius:var(--r-card);background:var(--sunken);flex:none;place-items:center;width:36px;height:36px;display:grid}.key-icon svg{width:18px;height:18px}.key-title{flex-direction:column;gap:2px;display:flex}.key-title h3{font-size:var(--fs-20)}.key-error{white-space:normal;overflow-wrap:anywhere;max-width:100%}.key-form{gap:8px;width:100%;display:flex}.key-form .input{flex:1;min-width:0}.key-actions{flex-wrap:wrap;gap:8px;display:flex}.key-card .alert{overflow-wrap:anywhere;width:100%}.settings-action,.settings-card>.pill{align-self:flex-start}@media (width<=1280px){.spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-layout{grid-template-columns:1fr}}.auth{min-height:100dvh;padding:32px var(--gutter);flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex}.auth .brand{font-size:var(--fs-24)}.auth-loading{border-radius:var(--r-panel);width:min(400px,100%);height:320px}.auth-card{flex-direction:column;align-items:flex-start;gap:14px;width:min(480px,100%);padding:28px;display:flex}.auth-card h1{font-size:var(--fs-24)}.auth-card p{margin:0}.auth-card .field{align-self:stretch}.turnstile{min-height:65px}.auth-submit{align-self:stretch}.account-card{max-width:560px}.account-card h2{font-size:var(--fs-20)}.account-signout{margin-top:16px}.page-skeleton{border-radius:var(--r-panel);height:60vh}.ideas-layout{grid-template-columns:minmax(300px,420px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.idea-new{top:calc(var(--topbar-h) + 16px);flex-direction:column;gap:14px;padding:20px;display:flex;position:sticky}.idea-form{flex-direction:column;gap:14px;display:flex}.idea-body-input{min-height:180px}.idea-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ideas-list{flex-direction:column;gap:12px;min-width:0;display:flex}.ideas-toolbar{scrollbar-width:none;padding-bottom:2px;overflow-x:auto}.ideas-toolbar::-webkit-scrollbar{display:none}.idea-skeleton{border-radius:var(--r-card);height:240px}.idea{flex-direction:column;gap:10px;min-width:0;padding:18px 20px;display:flex}.idea-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.idea-meta{font-size:var(--fs-12)}.idea-title{font-size:var(--fs-20);overflow-wrap:anywhere}.idea-reason{border-radius:var(--r-chip);background:var(--sunken);color:var(--text-2);font-size:var(--fs-13);margin:0;padding:8px 12px}.idea-text{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.idea-text p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}.idea-text p.clamped{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.idea-text .btn{margin-left:-12px}.idea-notes{font-size:var(--fs-13);color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.idea-links{font-size:var(--fs-13);flex-direction:column;gap:2px;margin:0;padding-left:18px;display:flex}.idea-links a{color:var(--info);overflow-wrap:anywhere}.idea-actions{flex-wrap:wrap;align-items:center;gap:8px;padding-top:4px;display:flex}.idea-discard{flex-wrap:wrap;flex:100%;gap:8px;display:flex}.idea-discard .input{flex:220px;min-height:32px}@media (width<=900px){.ideas-layout{grid-template-columns:1fr}.idea-new{position:static}}.history-grid{grid-template-columns:repeat(auto-fill,minmax(min(460px,100%),1fr));gap:12px;display:grid}.history-skeleton{border-radius:var(--r-card);height:360px}.history-item{min-width:0;scroll-margin-top:calc(var(--topbar-h) + 16px);gap:16px;padding:14px;display:flex}.history-item.focused{border-color:var(--accent-edge);box-shadow:0 0 0 3px #e8a33d40}.history-item video{aspect-ratio:9/16;border-radius:var(--r-media);object-fit:cover;background:#000;flex:none;width:180px}.history-copy{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.history-copy h3{font-size:var(--fs-20);overflow-wrap:anywhere}.history-publications{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.history-open{margin-top:auto}@media (width<=520px){.history-item{flex-direction:column}.history-item video{align-self:center;width:100%;max-width:320px}}.queue-skeleton{border-radius:var(--r-card);height:280px}.queue-section .section-title{margin:32px 0 12px}.workers-line{font-size:var(--fs-13);flex-wrap:wrap;align-items:center;gap:8px 24px;padding:14px 16px;display:flex}.workers-item{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.workers-error{color:var(--error);overflow-wrap:anywhere;flex-basis:100%}.jobs{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.job{flex-direction:column;align-items:flex-start;gap:10px;min-width:0;padding:14px 16px;display:flex}.job-head{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.job-title{font-size:var(--fs-14);overflow-wrap:anywhere}.job-title a{text-decoration:none}.job-title a:hover{text-decoration:underline}.job-kind{font-size:var(--fs-12)}.job-cancel{margin-left:auto}.job-progress{width:100%;font-size:var(--fs-13);flex-direction:column;gap:6px;display:flex}.job .alert{overflow-wrap:anywhere;width:100%}.job-times{font-size:var(--fs-12);color:var(--text-2);flex-wrap:wrap;gap:4px 16px;margin:0;display:flex}.job-times dt{font-weight:600}.job-times div{gap:4px;display:flex}.job-times dt:after{content:":"}.job-times dd{font-variant-numeric:tabular-nums;margin:0}.pc-card{font-size:var(--fs-13);flex-direction:column;gap:12px;padding:14px 16px;display:flex}.pc-status{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pc-status li{flex-wrap:wrap;align-items:center;gap:4px 6px;display:flex}.pc-actions{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.pc-pipeline summary{cursor:pointer;font-weight:600}.pc-pipeline ol{flex-direction:column;gap:4px;margin:8px 0 0;padding-left:20px;display:flex}.metrics-skeleton{border-radius:var(--r-card);height:320px}.metrics-empty{text-align:center;color:var(--text-2);flex-direction:column;align-items:center;gap:10px;padding:56px 24px;display:flex}.metrics-empty svg{width:28px;height:28px;color:var(--accent-edge)}.metrics-empty p{max-width:420px;font-size:var(--fs-16);margin:0}.kpis{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:12px;margin-top:16px;display:grid}.kpi{flex-direction:column;gap:10px;min-width:0;padding:18px;display:flex}.kpi-total{background:var(--text);color:#fff;border-color:var(--text)}.kpi-total .faint,.kpi-total .muted{color:#ffffffb3}.kpi-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.kpi-head h3{font-size:var(--fs-16)}.kpi-main{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.kpi-value{font-size:var(--fs-32);letter-spacing:-.03em}.kpi-row{font-size:var(--fs-13);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trend{width:100%;height:40px}.trend path{fill:none;stroke:var(--accent-edge);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.trend-empty{font-size:var(--fs-12);margin:0}.table-scroll{overflow-x:auto}.video-table{border-collapse:collapse;width:100%;font-size:var(--fs-13)}.video-table th,.video-table td{text-align:left;border-top:1px solid var(--border);white-space:nowrap;padding:10px 12px}.video-table thead th{border-top:0;padding:0}.video-table th.numeric,.video-table td.numeric{text-align:right;font-variant-numeric:tabular-nums}.video-table thead button{width:100%;color:var(--text-2);font-size:var(--fs-12);letter-spacing:.02em;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:12px;font-weight:600;display:inline-flex}.video-table th.numeric button{justify-content:flex-end}.video-table thead button:hover{color:var(--text)}.sort-mark{min-width:9px;font-size:9px}.video-table tbody th{text-overflow:ellipsis;max-width:320px;font-weight:600;overflow:hidden}.video-table tbody th a{text-decoration:none}.video-table tbody th a:hover{text-decoration:underline}.characters-page{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:48px;display:grid}.characters-content{flex-direction:column;gap:16px;min-width:0;display:flex}.characters-intro{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.characters-intro h2{font-size:var(--fs-32)}.character-new{justify-content:center}.character-nav nav{max-height:calc(100vh - var(--topbar-h) - 200px);overflow-y:auto}.character-nav-skeleton{border-radius:var(--r-chip);height:160px}.character-link{justify-content:space-between;align-items:center;gap:8px;text-decoration:none;display:flex}.character-link-name{align-items:center;gap:10px;min-width:0;display:flex}.character-link-name>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.character-avatar{object-fit:cover;background:var(--sunken);border-radius:50%;flex:none;width:28px;height:28px}.character-avatar-empty{color:var(--text-2);font-family:var(--font-display);font-size:var(--fs-13);text-transform:uppercase;place-items:center;display:grid}.character-sheet{flex-direction:column;min-width:0;display:flex}.character-skeleton{border-radius:var(--r-panel);height:60vh}.character-head{align-items:flex-end;gap:24px;padding-bottom:32px;display:flex}.character-portrait{aspect-ratio:3/4;border-radius:var(--r-card);object-fit:cover;width:136px;box-shadow:var(--shadow-md);flex:none;overflow:hidden}.character-portrait.tile-empty .display{font-size:var(--fs-48)}.character-head-text{flex-direction:column;gap:8px;min-width:0;display:flex}.character-head-text h2{font-size:var(--fs-48);overflow-wrap:anywhere;line-height:1}.character-head-text p{margin:0}.character-excerpt{max-width:72ch;color:var(--text-2);font-size:var(--fs-14);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.character-block{border-top:1px solid var(--border);scroll-margin-top:calc(var(--topbar-h) + 16px);padding:32px 0}.character-block-head{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:16px;display:flex}.character-block-title{flex:none;align-items:baseline;gap:10px;display:flex}.character-block-title h2{font-size:var(--fs-24)}.character-block-title .faint{font-family:var(--font-mono);font-size:var(--fs-12)}.character-block-head .notice{text-align:right}.character-card{padding:20px}.character-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.character-form-wide{grid-column:1/-1}.character-form-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.references-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.task-status{gap:6px}.references{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.references>li{aspect-ratio:3/4}.dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--r-card);background:var(--surface);height:100%;color:var(--text-2);font-size:var(--fs-13);text-align:center;cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:16px;display:flex;position:relative}.dropzone svg{width:24px;height:24px}.dropzone:hover,.dropzone.is-dragging{border-color:var(--accent-edge);background:var(--warning-bg)}.dropzone:focus-within{outline:2px solid var(--text);outline-offset:2px}.dropzone input{opacity:0;cursor:pointer;position:absolute;inset:0}.reference{border-radius:var(--r-card);background:var(--sunken);outline-offset:-2px;transition:outline-color var(--t-fast);outline:2px solid #0000;position:relative;overflow:hidden}.reference.is-active{outline-color:var(--accent)}.reference[aria-busy=true]{opacity:.6}.reference img{object-fit:cover;width:100%;height:100%;display:block}.reference-badges{gap:4px;display:flex;position:absolute;top:8px;left:8px}.reference-actions{background:var(--scrim);opacity:0;transition:opacity var(--t-fast);justify-content:flex-end;gap:4px;padding:24px 8px 8px;display:flex;position:absolute;bottom:0;left:0;right:0}.reference:hover .reference-actions,.reference:focus-within .reference-actions{opacity:1}.reference-actions .btn{background:var(--surface)}.voice-card{flex-direction:column;gap:16px;padding:20px;display:flex}.voice-current{align-items:center;gap:14px;display:flex}.voice-choice{gap:8px;margin-left:auto;display:flex}.voice-sample{width:100%;max-width:520px}.voice-options{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:24px;display:grid}.voice-design{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.voice-design .field{align-self:stretch}.voice-clone{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.file-button{position:relative}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.file-button:focus-within{outline:2px solid var(--text);outline-offset:2px}.file-button.is-disabled{opacity:.5;pointer-events:none}.voice-icon{border-radius:var(--r-card);background:var(--sunken);flex:none;place-items:center;width:36px;height:36px;display:grid}.voice-icon svg{width:18px;height:18px}.voice-text{flex-direction:column;gap:2px;display:flex}.situation-new{gap:8px;margin-bottom:16px;display:flex}.situation-new .input{flex:0 480px}.character-block .alert{margin-bottom:16px}.character-danger{border-top:1px solid var(--border);font-size:var(--fs-13);align-items:center;gap:12px;padding-top:24px;display:flex}.character-welcome{flex-direction:column;align-items:flex-start;gap:12px;padding:32px;display:flex}.character-welcome h2{font-size:var(--fs-24)}.character-welcome-icon{border-radius:var(--r-card);background:var(--sunken);width:44px;height:44px;color:var(--text-2);place-items:center;display:grid}.character-welcome-icon svg{width:22px;height:22px}.editor-character img{object-fit:cover;border-radius:50%;width:20px;height:20px}.voice-tempo{align-items:flex-end;gap:16px;max-width:520px;display:flex}.voice-tempo .field{flex:1}.voice-tempo-control{align-items:center;gap:12px;display:flex}.voice-tempo-control input{accent-color:var(--accent);flex:1}.voice-tempo-value{font-variant-numeric:tabular-nums;min-width:52px}.voice-tempo-actions{gap:8px;display:flex}
