:root{font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif;color:#2b2a26;background:#fdfbf4;font-synthesis:none;line-height:1.55;--green-900: #163f31;--green-700: #256b52;--green-100: #dff1e7;--ink-muted: #6e6a5f;--line: #ded8c9;--paper: #ffffff;--warning: #7a4b00;--focus: #0b67c2;--workshop-yellow: #ffc933;--workshop-yellow-strong: #f0b900;--workshop-cream: #f1ede0;--workshop-canvas: #fdfbf4;--workshop-ink: #2b2a26}*{box-sizing:border-box}html{min-width:320px}body{margin:0;min-width:320px;min-height:100vh}button,select,a.primary-link{min-height:44px;min-width:44px;font:inherit}button,select{border:1px solid var(--line);border-radius:.75rem}button{padding:.65rem 1rem;color:var(--workshop-ink);background:var(--workshop-yellow);border-color:#d9aa18;cursor:pointer;font-weight:800}button:hover{background:var(--workshop-yellow-strong)}button:disabled{cursor:not-allowed;color:#53615b;background:#e4e9e6}a{color:var(--green-900)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:fixed;z-index:100;top:.5rem;left:.5rem;padding:.75rem 1rem;background:#fff;border:2px solid var(--focus);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100vh}.topbar{min-height:68px;display:grid;grid-template-columns:minmax(12rem,auto) minmax(14rem,34rem) minmax(12rem,auto);align-items:center;gap:1rem;padding:.65rem clamp(1rem,3vw,2rem);background:var(--workshop-yellow);border-bottom:1px solid #d9aa18}.brand{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;font-size:1.1rem;font-weight:800;text-decoration:none}.brand-icon{flex:0 0 auto;width:2.6rem;height:2.6rem;object-fit:contain}.project-switcher{position:relative;min-width:0}.project-switcher summary{display:grid;grid-template-columns:auto minmax(8rem,1fr);align-items:center;gap:.75rem;min-height:44px;padding:.55rem .75rem;color:var(--workshop-ink);background:#ffffffb8;border:1px solid #cda325;border-radius:.75rem;cursor:pointer}.project-switcher summary span{font-weight:700}.project-switcher summary strong{min-width:0;overflow-wrap:anywhere}.project-switcher ul{position:absolute;z-index:20;top:calc(100% + .35rem);right:0;left:0;display:grid;gap:.2rem;margin:0;padding:.4rem;list-style:none;background:#fff;border:1px solid var(--line);border-radius:.75rem;box-shadow:0 .75rem 2rem #183a2c29}.project-switcher:not([open]) ul{display:none}.project-switcher a{display:flex;align-items:center;min-height:44px;padding:.55rem .7rem;border-radius:.5rem;overflow-wrap:anywhere;text-decoration:none}.project-switcher a:hover,.project-switcher a[aria-current=page]{background:var(--green-100)}.project-create-row{border-top:1px solid var(--line);padding:.55rem .4rem .2rem}.project-create-row form{display:grid;gap:.4rem}.project-create-row label{font-size:.85rem;font-weight:700}.project-create-row input{width:100%;min-height:44px;padding:.55rem .65rem;border:1px solid var(--line);border-radius:.5rem;font:inherit}.project-create-row button{min-height:44px}.account-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem}.account-name{overflow-wrap:anywhere}.quiet-button,.secondary-button{color:var(--workshop-ink);background:#fff;border-color:var(--line)}.quiet-button:hover,.secondary-button:hover{background:#fff8dc}.notice{margin:.75rem clamp(1rem,2vw,1.5rem) 0;padding:.75rem 1rem;color:var(--warning);background:#fff4d6;border:1px solid #d79d37;border-radius:.75rem;font-weight:700}.workspace-grid{display:grid;grid-template-columns:minmax(13.75rem,13.75rem) minmax(24rem,1fr) minmax(20rem,22.5rem);min-height:calc(100vh - 69px);background:var(--workshop-canvas)}.stage-panel,.work-panel,.assistant-panel{min-width:0;padding:clamp(1rem,2vw,1.5rem)}.stage-panel{position:sticky;top:0;align-self:start;max-height:calc(100vh - 69px);overflow-y:auto;background:var(--workshop-cream);border-right:1px solid var(--line)}.work-panel{background:var(--workshop-canvas)}.assistant-panel{position:sticky;top:0;align-self:start;display:flex;flex-direction:column;height:calc(100vh - 69px);min-height:32rem;overflow:hidden;padding:0;background:var(--paper);border-left:1px solid var(--line)}.eyebrow{margin:0 0 .35rem;color:#765900;font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.workshop-mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;margin-bottom:.75rem;color:var(--workshop-ink);background:var(--workshop-yellow);border-radius:.75rem;font-size:1.2rem}.stage-panel>h2{margin:0;font-size:1.05rem}.stage-list{display:grid;gap:.45rem;margin:1rem 0 0;padding:0;list-style:none}.stage-list button{position:relative;display:grid;width:100%;min-height:64px;padding:.75rem 1rem;text-align:left;color:var(--workshop-ink);background:transparent;border-color:transparent;border-radius:.75rem;font-weight:400}.stage-list button span{color:var(--ink-muted);font-size:.87rem}.stage-list button em{margin-top:.35rem;color:#765900;font-size:.78rem;font-style:normal;font-weight:900}.stage-list .is-current button{background:var(--paper);border-color:#d6cdb8;box-shadow:inset 4px 0 0 var(--workshop-yellow)}.stage-list button:not(:disabled):hover{background:#ffffffb3}.work-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}h1,h2,h3{line-height:1.25;overflow-wrap:anywhere}h1{margin:0;font-size:clamp(1.5rem,3vw,2.2rem)}h2{font-size:1.2rem}.status-label{display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.35rem .7rem;border:1px solid;border-radius:999px;white-space:nowrap;font-size:.87rem;font-weight:800}.status-saved{color:#1d6348;background:#e7f7ee;border-color:#69a88c}.status-working{color:#684900;background:#fff4cc;border-color:#c69a29}.canvas-card,.empty-card,.help-card{background:#fff;border:1px solid var(--line);border-radius:1rem;box-shadow:0 8px 24px #183a2c12}.backup-status-card{margin:1.25rem 0;padding:1rem;background:#f5faf7;border:1px solid #b8cec2;border-radius:1rem}.backup-status-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.backup-status-heading h3{margin:0;font-size:1rem}.backup-status-badge{display:inline-flex;align-items:center;min-height:30px;padding:.2rem .55rem;color:#4e5d56;background:#fff;border:1px solid var(--line);border-radius:999px;white-space:nowrap;font-size:.75rem;font-weight:800}.backup-status-contract-ready,.backup-status-verified{color:#15523b;background:#e3f5ea;border-color:#75ac91}.backup-status-attention,.backup-status-unavailable{color:#724600;background:#fff2cf;border-color:#d3a23b}.backup-status-summary{margin:.8rem 0;color:var(--ink-muted);font-size:.88rem}.backup-status-list{display:grid;gap:.45rem;margin:0}.backup-status-list div{display:grid;grid-template-columns:minmax(5rem,auto) 1fr;gap:.75rem;padding-top:.45rem;border-top:1px solid #d9e5de}.backup-status-list dt{color:var(--ink-muted);font-size:.8rem;font-weight:700}.backup-status-list dd{margin:0;text-align:right;overflow-wrap:anywhere;font-size:.82rem;font-weight:800}.backup-status-note{margin:.8rem 0 0;padding-top:.7rem;color:#53655b;border-top:1px dashed #b8cec2;font-size:.78rem}.canvas-card{padding:clamp(1rem,3vw,1.5rem)}.canvas-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.canvas-toolbar h2,.canvas-toolbar p{margin-top:0}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.comparison-grid article{min-width:0;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--line);border-radius:.9rem}.choice-label{display:inline-flex;padding:.25rem .6rem;color:#15523b;background:#dff4e8;border:1px solid #71ad91;border-radius:999px;font-size:.78rem;font-weight:800}.choice-label.neutral{color:#4e5660;background:#edf0f2;border-color:#aeb7bd}.project-info-drawer{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #d2c9b6}.project-info-drawer summary{min-height:44px;padding:.6rem .25rem;cursor:pointer;font-weight:800}.project-info-content{padding-top:.35rem}.info-list{margin:1rem 0 1.5rem}.info-list div{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.info-list dt{color:var(--ink-muted)}.info-list dd{margin:0;text-align:right;font-weight:700}.help-card{padding:1rem;background:#f4f8ff;border-color:#b9cce2;box-shadow:none}.help-card h3{margin-top:0}.assistant-panel-heading{display:flex;align-items:center;gap:.75rem;min-height:76px;padding:1rem 1.15rem;border-bottom:1px solid var(--line)}.assistant-panel-heading h2,.assistant-panel-heading p{margin-top:0;margin-bottom:0}.assistant-panel-heading h2{font-size:1.05rem}.assistant-avatar{display:grid;place-items:center;flex:0 0 auto;width:2.4rem;height:2.4rem;background:var(--workshop-yellow);border-radius:50%;font-weight:900}.assistant-avatar img{width:100%;height:100%;object-fit:contain}.assistant-placeholder{margin:1rem;padding:1rem;color:var(--ink-muted);background:#fff9e5;border:1px dashed #d2ad3c;border-radius:.8rem}.assistant-placeholder p{margin-bottom:0}.assistant-portal{flex:1;min-height:0;overflow:hidden}.assistant-portal>.conversation-panel{min-height:0}.conversation-portal-status{margin:0;padding:1rem;color:var(--ink-muted);background:#fff9e5;border:1px dashed #d2ad3c;border-radius:.8rem}.empty-card,.centered-message{text-align:center}.empty-card{padding:3rem 1rem}.empty-card [aria-hidden]{font-size:2.5rem}.centered-message{display:grid;place-items:center;align-content:center;min-height:100vh;padding:2rem max(1rem,5vw);background:#f4f7f4}.centered-message>*{max-width:42rem}.centered-message p{color:var(--ink-muted);font-size:1.05rem}.primary-link{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.25rem;color:#fff;background:var(--green-700);border-radius:.75rem;font-weight:800;text-decoration:none}.privacy-note{font-size:.9rem!important}.login-card{width:min(30rem,100%);padding:clamp(1.25rem,4vw,2rem);background:#fff;border:1px solid var(--line);border-radius:1rem;box-shadow:0 1rem 3rem #183a2c1f}.login-mark{display:block;width:min(11rem,45vw);height:auto;margin:0 auto .75rem;object-fit:contain}.local-login-form{display:grid;gap:.55rem;width:100%;margin-top:1.25rem;text-align:left}.local-login-form label{font-weight:800}.local-login-form input{width:100%;min-height:48px;padding:.7rem .8rem;color:#17251f;font:inherit;background:#fff;border:1px solid var(--line);border-radius:.75rem}.local-login-form input:disabled{background:#eef2ef}.login-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.55rem}.login-error{margin:.25rem 0 0;padding:.65rem .75rem;color:#7a1f1f!important;background:#fff0f0;border:1px solid #d98686;border-radius:.6rem;font-size:.9rem!important;font-weight:700}.state-icon{display:grid;place-items:center;width:3rem;height:3rem;color:var(--green-900);background:var(--green-100);border:1px solid #7eb59d;border-radius:50%;font-size:1.4rem;font-weight:900}.mobile-tabs{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.todo18-workspace{display:grid;gap:1rem}.todo18-heading,.section-heading,.scenario-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.todo18-heading h2,.section-heading h3{margin:0}.todo18-heading p,.section-heading p{margin-bottom:0;color:var(--ink-muted)}.dashboard-card,.profile-boundary,.brief-editor,.scenario-workspace,.revision-actions{padding:clamp(1rem,2.5vw,1.4rem);background:var(--paper);border:1px solid var(--line);border-radius:1rem}.dashboard-card{border-left:.4rem solid var(--green-700)}.dashboard-card h3,.profile-boundary h3,.brief-editor h3,.scenario-workspace h3,.revision-actions h4{margin-top:0}.profile-boundary{background:#f5f8fc;border-color:#b9cce2}.profile-boundary button{margin-top:.25rem}.brief-editor{display:grid;gap:.65rem}.brief-editor label{font-weight:800}.brief-editor textarea{width:100%;min-height:8rem;padding:.75rem;color:#17251f;font:inherit;line-height:1.5;resize:vertical;border:1px solid var(--line);border-radius:.75rem}.input-help,.workspace-boundary{margin:0;color:var(--ink-muted);font-size:.9rem}.workspace-recovery{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:1rem;color:#6a3f00;background:#fff4d6;border:2px solid #bc7b13;border-radius:.75rem}.workspace-recovery a{min-height:44px;display:inline-flex;align-items:center;font-weight:800}.scenario-workspace{display:grid;gap:1rem}.scenario-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.scenario-card{display:grid;gap:.85rem;min-width:0;padding:1rem;background:#fff;border:1px solid var(--line);border-radius:.85rem}.scenario-card h4,.scenario-card p{margin:0}.scenario-card dl{display:grid;gap:.45rem;margin:0}.scenario-card dl div{display:flex;justify-content:space-between;gap:.75rem;padding-top:.45rem;border-top:1px solid var(--line)}.scenario-card dd{margin:0;font-weight:700}.state-text{color:var(--green-900);text-decoration:underline;text-underline-offset:.2em}.scenario-actions{display:grid;grid-template-columns:1fr;gap:.5rem}.revision-actions{background:#f8faf8}.capability-note{color:var(--ink-muted);font-size:.9rem;font-weight:700}.workspace-boundary{padding:.75rem;border-left:3px solid var(--line)}.conversation-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:.8rem;height:100%;min-height:32rem;padding:1rem;border:0;border-radius:0;background:var(--paper)}.conversation-status{min-height:1.5rem;color:var(--ink-muted)}.conversation-turns{display:grid;align-content:start;gap:.7rem;min-height:0;margin:0;padding:.15rem .15rem .5rem;overflow-y:auto;list-style:none}.conversation-turn{display:grid;gap:.3rem;padding:.8rem;border-radius:.75rem;background:#f8f6ef}.conversation-turn-user{border-left:3px solid var(--green-700)}.conversation-turn-agent{border-left:3px solid var(--line)}.conversation-turn p,.conversation-turn time{margin:0}.conversation-turn time{color:var(--ink-muted);font-size:.85rem}.conversation-compose{display:grid;gap:.55rem;padding-top:.8rem;border-top:1px solid var(--line)}.conversation-compose textarea{width:100%;min-height:7rem;padding:.75rem;color:#17251f;font:inherit;line-height:1.5;resize:vertical;border:1px solid var(--line);border-radius:.75rem}.backup-operation-card{display:grid;gap:.8rem;padding:1rem;background:#f7fbf8;border:1px solid #8eb6a0;border-radius:.9rem}.backup-operation-card h3,.backup-operation-card p{margin:0}.backup-operation-list{display:grid;gap:.4rem;margin:0}.backup-operation-list div{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:.6rem;padding-top:.4rem;border-top:1px solid var(--line)}.backup-operation-list dd{min-width:0;margin:0;font-weight:700;overflow-wrap:anywhere}.backup-operation-list code{font-size:.8rem}.backup-operation-guide,.backup-operation-boundary{color:var(--ink-muted);font-size:.9rem}.backup-operation-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.backup-operation-actions button{min-height:44px}.todo19-workspace,.storyboard-content{display:grid;gap:1rem}.storyboard-heading,.shot-review>header,.candidate-state{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.storyboard-heading h2,.shot-review h3{margin:0}.storyboard-heading p{margin-bottom:0;color:var(--ink-muted)}.storyboard-boundary,.shot-review,.safe-history{padding:clamp(1rem,2.5vw,1.4rem);background:var(--paper);border:1px solid var(--line);border-radius:1rem}.storyboard-boundary{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#f5f8fc;border-color:#b9cce2}.storyboard-boundary p{margin:0}.canonical-storyboard-draft,.canonical-storyboard-boundary{display:grid;gap:.9rem;padding:clamp(1rem,2.5vw,1.4rem);background:var(--paper);border:1px solid var(--line);border-radius:1rem}.canonical-storyboard-draft>label,.canonical-storyboard-draft fieldset,.canonical-storyboard-draft fieldset>label{display:grid;gap:.35rem}.canonical-storyboard-draft fieldset{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));padding:.85rem;border:1px solid var(--line);border-radius:.75rem}.canonical-storyboard-draft fieldset legend{grid-column:1 / -1;font-weight:700}.canonical-storyboard-draft textarea{min-height:4.5rem;resize:vertical}.canonical-storyboard-boundary{background:#fff8ec;border-color:#e8c58d}.shot-list{display:grid;gap:1rem;margin:0;padding:0;list-style:none}.candidate-count{padding:.3rem .65rem;color:var(--green-900);background:var(--green-100);border:1px solid #7eb59d;border-radius:999px;font-weight:800;white-space:nowrap}.candidate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}.candidate-card{display:grid;align-content:start;gap:.75rem;min-width:0;padding:.8rem;border:1px solid var(--line);border-radius:.8rem}.image-candidate-review-board,.image-candidate-review-workspace{display:grid;gap:1rem}.candidate-preview{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;background:#edf3ef;border:1px solid var(--line);border-radius:.7rem}.candidate-preview-loading{animation:candidate-pulse 1.2s ease-in-out infinite alternate}@keyframes candidate-pulse{0%{opacity:.45}to{opacity:.9}}.candidate-state{flex-wrap:wrap;min-height:2rem;font-size:.82rem}.candidate-state strong{color:var(--green-900);text-decoration:underline;text-underline-offset:.2em}.safe-preview{position:relative;display:grid;place-items:end start;isolation:isolate;aspect-ratio:9 / 12;min-height:10rem;overflow:hidden;padding:.7rem;color:#17251f;background:#dceee5;border:2px solid #547667;border-radius:.7rem}.safe-preview span{position:absolute;z-index:-1;inset:12%;border:5px solid currentColor;border-radius:50%;opacity:.25}.safe-preview[data-tone=amber]{color:#533700;background:#f5dfad;border-color:#92702b}.safe-preview[data-tone=blue]{color:#123c66;background:#d7e8f8;border-color:#557b9e}.safe-preview[data-pattern=steps] span{inset:18% 12%;border-radius:.2rem;transform:rotate(12deg)}.safe-preview[data-pattern=window] span{inset:15%;border-radius:.2rem;box-shadow:inset 0 0 0 1rem #ffffff59}.safe-preview b{padding:.25rem .4rem;background:#ffffffd1;border-radius:.3rem}.candidate-card dl{display:grid;gap:.35rem;margin:0;font-size:.86rem}.candidate-card dl div{display:grid;grid-template-columns:auto 1fr;gap:.5rem}.candidate-card dt{color:var(--ink-muted)}.candidate-card dd{margin:0;text-align:right;font-weight:700}.candidate-actions{display:grid;gap:.45rem}.empty-candidates{padding:1rem;background:#f4f7f4;border:1px dashed var(--line);border-radius:.7rem}.safe-history ol{display:grid;gap:.35rem;padding-left:1.4rem}.preview-overlay{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:1rem;background:#0a1c15b3}.expanded-preview{width:min(32rem,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1rem;background:#fff;border:2px solid var(--green-900);border-radius:1rem;box-shadow:0 1rem 3rem #0000004d}.expanded-preview h3{margin-top:0}.safe-preview.is-enlarged{max-height:55vh}.scenario-version-workspace,.scenario-version-content{display:grid;gap:1rem}.scenario-version-content>header,.scenario-version-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.scenario-version-workspace h2,.scenario-version-workspace h3,.scenario-version-workspace p{margin-top:0}.scenario-version-content>header p:last-child{margin-bottom:0;color:var(--ink-muted)}.scenario-progress{min-height:1.5rem;padding:.7rem .85rem;color:var(--green-900);background:#f1f8f3;border-left:3px solid var(--green-700);font-weight:700}.scenario-empty-state{padding:1rem;text-align:center;background:#f7f8f7;border:1px dashed var(--line);border-radius:.8rem}.scenario-version-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.scenario-version-card{display:grid;align-content:start;gap:.7rem;min-width:0;padding:1rem;border:2px solid var(--line);border-radius:.9rem;background:#fff}.scenario-version-card.is-approved{border-color:var(--green-700);background:#f1f8f3}.scenario-version-card.is-draft{background:#fbfaf6}.scenario-version-tags{min-height:1.5rem;display:flex;flex-wrap:wrap;gap:.35rem}.scenario-version-tags strong{padding:.2rem .45rem;color:var(--green-900);background:#dceee5;border-radius:999px;font-size:.78rem}.scenario-version-actions,.scenario-version-footer>div{display:grid;gap:.45rem}.scenario-version-footer{padding:.9rem;background:#f7f8f7;border:1px solid var(--line);border-radius:.8rem}.scenario-version-footer p{margin-bottom:0}.scenario-structure-details{border-top:1px solid var(--line);padding-top:.65rem}.scenario-structure-details summary{cursor:pointer;color:var(--green-900);font-weight:800}.scenario-structure{display:grid;gap:.8rem;margin-top:.75rem}.scenario-structure h6{margin:0 0 .35rem;font-size:.9rem}.scenario-structure p{margin-bottom:0}.scenario-structure ul,.scenario-structure ol{display:grid;gap:.45rem;margin:0;padding-left:1.2rem}.scenario-structure li span{display:block;margin-top:.15rem;color:var(--ink-muted)}.scenario-metadata{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin:0}.scenario-metadata div{padding:.45rem;background:#f7f8f7;border-radius:.45rem}.scenario-metadata dt{color:var(--ink-muted);font-size:.78rem}.scenario-metadata dd{margin:.15rem 0 0;font-weight:800}.scenario-version-comparison{display:grid;gap:1rem;padding:1rem;border:2px solid var(--green-900);border-radius:1rem;background:#fff}.scenario-version-comparison h4{margin:0}.scenario-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.scenario-comparison-card{min-width:0;padding:1rem;border:1px solid var(--line);border-radius:.8rem;background:#fbfaf6}.scenario-comparison-card h5{margin:0 0 .5rem}.completion-progress-panel{display:grid;gap:1rem;min-width:0}.completion-progress-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.completion-project-heading{min-width:0}.completion-project-heading h2,.completion-progress-panel h3,.completion-progress-panel h4,.completion-progress-panel p{margin-top:0}.completion-project-heading h2,.completion-artifact h3,.completion-version-card h4,.completion-version-card p{overflow-wrap:anywhere}.completion-state-label{display:inline-flex;flex:0 0 auto;align-items:center;gap:.35rem;padding:.35rem .65rem;border:1px solid var(--line);border-radius:999px;font-weight:800}.completion-state-queued,.completion-state-running,.completion-state-recovering{color:var(--warning);background:#fff4d6;border-color:#d79d37}.completion-state-completed{color:var(--green-900);background:var(--green-100);border-color:var(--green-700)}.completion-state-failed{color:#76251f;background:#fff0ee;border-color:#b85b52}.completion-progress-notice{min-height:1.5rem;padding:.75rem .9rem;color:var(--green-900);background:#f1f8f3;border-left:3px solid var(--green-700);font-weight:700}.completion-progress-layout{display:grid;grid-template-columns:minmax(10rem,.7fr) minmax(20rem,2fr) minmax(12rem,1fr);gap:.8rem;align-items:start}.completion-navigation,.completion-artifact,.completion-ai-chat{min-width:0;padding:1rem;background:var(--paper);border:1px solid var(--line);border-radius:.9rem}.completion-navigation ol{display:grid;gap:.5rem;padding-left:1.25rem}.completion-navigation button{width:100%}.completion-version-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.completion-version-card{display:grid;align-content:start;gap:.65rem;min-width:0;padding:.85rem;background:#fbfaf6;border:2px solid var(--line);border-radius:.8rem}.completion-version-card.is-selected{border-style:dashed;border-color:var(--focus)}.completion-version-card.is-approved{background:#f1f8f3;border-style:solid;border-color:var(--green-700)}.completion-version-labels{display:flex;flex-wrap:wrap;gap:.35rem;min-height:1.5rem}.completion-version-labels strong,.completion-version-labels span{padding:.2rem .45rem;border-radius:999px;background:#e7ece9;font-size:.78rem}.completion-version-labels strong{color:var(--green-900);background:var(--green-100)}.completion-version-actions{display:grid;gap:.4rem}.completion-next-step-boundary{margin-bottom:0;padding:.7rem;color:var(--ink-muted);background:#f7f8f7;border-radius:.65rem}.completion-comparison-overlay{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:1rem;background:#0a1c15b3}.completion-comparison-dialog{width:min(32rem,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1rem;background:var(--paper);border:2px solid var(--green-900);border-radius:1rem;box-shadow:0 1rem 3rem #0000004d}@media(max-width:900px){.topbar{grid-template-columns:1fr auto}.project-switcher{grid-column:1 / -1;grid-row:2}.account-name{display:none}.mobile-tabs{position:sticky;z-index:5;top:0;display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;padding:.5rem;background:#fff;border-bottom:1px solid var(--line)}.mobile-tabs button{padding-inline:.4rem;color:var(--workshop-ink);background:#fff;font-size:.88rem}.mobile-tabs button[aria-pressed=true]{color:var(--workshop-ink);background:var(--workshop-yellow)}.workspace-grid{display:block;min-height:auto}.workspace-grid>*{display:none;min-height:calc(100vh - 190px)}.workspace-grid[data-mobile-screen=steps]>.stage-panel,.workspace-grid[data-mobile-screen=work]>.work-panel{display:block}.workspace-grid[data-mobile-screen=assistant]>.assistant-panel{display:flex}.stage-panel,.assistant-panel{position:static;max-height:none;overflow:visible}.assistant-panel{height:auto;min-height:calc(100vh - 190px)}.assistant-portal{overflow:visible}.conversation-panel{min-height:calc(100vh - 270px)}.candidate-grid,.scenario-version-grid,.scenario-comparison-grid,.scenario-metadata,.completion-progress-layout{grid-template-columns:1fr}.completion-navigation{order:1}.completion-artifact{order:2}.completion-ai-chat{order:3}.completion-version-list,.backup-operation-actions{grid-template-columns:1fr}}@media(max-width:560px){.brand span:last-child{font-size:.95rem}.project-switcher summary{grid-template-columns:1fr;gap:.2rem}.work-heading,.canvas-toolbar{display:grid}.comparison-grid,.scenario-grid{grid-template-columns:1fr}.todo18-heading,.section-heading,.workspace-recovery{display:grid}.storyboard-heading,.storyboard-boundary,.shot-review>header{display:grid}.scenario-version-content>header,.scenario-version-footer{display:grid}.completion-progress-header{display:grid}.completion-state-label{justify-self:start;white-space:normal}.completion-navigation,.completion-artifact,.completion-ai-chat{padding:.8rem}.status-label{white-space:normal}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(forced-colors:active){.stage-list .is-current button,.status-label,.choice-label,.candidate-count,.safe-preview,.completion-state-label,.completion-version-card.is-selected,.completion-version-card.is-approved{border:2px solid ButtonText}}.prototype-app-shell{height:100vh;overflow:hidden;color:#333;background:#fff}.prototype-workspace-grid{display:grid;grid-template-columns:220px minmax(0,1fr);height:100vh;background:#fff}.prototype-sidebar{position:static;display:flex;flex-direction:column;max-height:none;padding:20px 16px;overflow-y:auto;background:#f5f5f5;border-right:1px solid #e0e0e0}.prototype-brand{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:52px;margin-bottom:.75rem;padding:.45rem .6rem;color:#333;background:#fff;border:1px solid #dedede;border-radius:8px;font-size:.88rem;font-weight:800;line-height:1.25;text-decoration:none}.prototype-brand img{width:2.65rem;height:2.65rem;object-fit:contain}.prototype-sidebar .stage-list{gap:.28rem;margin-top:0}.prototype-sidebar .stage-list button{min-height:58px;padding:.65rem .75rem;border:0;border-radius:7px}.prototype-sidebar .stage-list button strong{font-size:.92rem}.prototype-sidebar .stage-list button span{font-size:.76rem}.prototype-sidebar .stage-list .is-current button{background:#d8d8d8;border:0;box-shadow:none}.prototype-sidebar .stage-list .is-current button span{color:#555}.prototype-sidebar .stage-list button:not(:disabled):hover{background:#e8e8e8}.prototype-sidebar .stage-list button:disabled{color:#8a8a8a;background:transparent;opacity:.7}.prototype-sidebar-spacer{flex:1 1 auto;min-height:1rem}.prototype-home-button{width:100%;min-height:44px;padding:.55rem .75rem;text-align:left;color:#444;background:transparent;border:0}.prototype-home-button:hover{background:#e8e8e8}.prototype-user-chip{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem;color:#666;border-top:1px solid #ddd;font-size:.78rem}.prototype-user-chip button{min-width:auto;min-height:auto;padding:0;color:#666;background:transparent;border:0;font-size:.72rem;font-weight:500;text-decoration:underline}.prototype-sidebar .project-info-drawer{margin-top:.35rem;padding-top:.35rem}.prototype-sidebar .project-info-drawer summary{color:#666;font-size:.78rem}.prototype-main{display:flex;min-width:0;min-height:0;flex-direction:column}.prototype-stepbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:62px;padding:.7rem 1.25rem;background:#fdfdfd;border-bottom:1px solid #e0e0e0}.prototype-stepper{display:flex;align-items:center;gap:.45rem;min-width:0;overflow-x:auto}.prototype-stepper span{flex:0 0 auto;padding:.36rem .7rem;color:#666;background:#ededed;border-radius:999px;font-size:.72rem;white-space:nowrap}.prototype-stepper .is-done{color:#555;background:#d5d5d5}.prototype-stepper .is-current{color:#fff;background:#4a4a4a;font-weight:800}.prototype-project-switcher{flex:0 0 min(18rem,34vw)}.prototype-project-switcher summary{color:#444;background:#fff;border-color:#d4d4d4}.prototype-project-switcher a:hover,.prototype-project-switcher a[aria-current=page]{background:#ededed}.prototype-main>.notice{margin:.7rem 1.25rem 0;color:#765300;background:#fff8df;border-color:#ddbf67}.prototype-content-row{display:grid;grid-template-columns:minmax(24rem,1fr) minmax(360px,440px);min-height:0;flex:1 1 auto;overflow:hidden}.prototype-chat-column{position:static;order:1;height:auto;max-height:none;min-height:0;background:#fff;border:0;border-right:1px solid #e0e0e0}.prototype-chat-column .assistant-panel-heading{min-height:64px;padding:.85rem 1.35rem;background:#fafafa}.prototype-chat-column .assistant-avatar{background:#fff;border:1px solid #d4d4d4}.prototype-chat-column .eyebrow,.prototype-artifact-panel .eyebrow,.prototype-home .eyebrow{color:#666}.prototype-artifact-panel{order:2;min-width:0;padding:1.15rem;overflow-y:auto;background:#fafafa}.prototype-artifact-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.prototype-artifact-heading h1{font-size:1.15rem}.prototype-artifact-panel .status-label{color:#555;background:#ededed;border-color:#ccc}.prototype-artifact-panel .todo18-workspace{min-height:calc(100% - 3.5rem)}.prototype-artifact-panel .scenario-version-workspace,.prototype-artifact-panel .canonical-storyboard-workspace,.prototype-artifact-panel .image-candidate-review-board{padding:0;background:transparent}.prototype-artifact-panel .scenario-version-workspace>header,.prototype-artifact-panel .canonical-storyboard-workspace>header{display:grid;gap:.5rem}.prototype-artifact-panel .scenario-version-grid,.prototype-artifact-panel .scenario-comparison-grid,.prototype-artifact-panel .candidate-grid,.prototype-artifact-panel .completion-progress-layout,.prototype-artifact-panel .completion-version-list{grid-template-columns:1fr}.prototype-artifact-panel .scenario-version-card,.prototype-artifact-panel .scenario-version-comparison,.prototype-artifact-panel .scenario-version-footer,.artifact-empty-state{background:#fff;border:1px solid #ddd;border-radius:8px}.artifact-empty-state{display:grid;min-height:18rem;place-content:center;padding:1.5rem;color:#5f5f5f;text-align:center}.artifact-empty-state h3{color:#555}.prototype-artifact-panel .workspace-boundary{margin-top:.8rem;padding:.65rem .75rem;color:#555;background:#f3f3f3;border:0;border-radius:6px;text-align:center}.prototype-chat-column .conversation-panel{grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0;padding:1rem 1.35rem}.prototype-chat-column .conversation-panel>.section-heading{display:none}.prototype-chat-column .conversation-status{font-size:.82rem}.prototype-chat-column .conversation-turns{gap:.8rem;padding:.3rem 0 .75rem}.prototype-chat-column .conversation-turn{width:fit-content;max-width:68%;padding:.75rem 1rem;border:0;border-radius:12px}.prototype-chat-column .conversation-turn-user{justify-self:end;background:#d9d9d9}.prototype-chat-column .conversation-turn-agent{justify-self:start;background:#f0f0f0}.prototype-chat-column .conversation-turn strong{font-size:.78rem}.prototype-chat-column .conversation-turn time{color:#555;font-size:.68rem}.prototype-chat-column .conversation-compose{display:block;padding-top:.75rem}.conversation-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem}.prototype-chat-column .conversation-input-row textarea{min-height:48px;max-height:8rem;padding:.72rem .85rem;resize:vertical;border-color:#d4d4d4;border-radius:8px}.prototype-chat-column .conversation-input-row button{min-width:78px;color:#fff;background:#4a4a4a;border-color:#4a4a4a;border-radius:8px}.prototype-chat-column .conversation-input-row button:hover{background:#333}.prototype-chat-column .conversation-input-row button:disabled{color:#777;background:#e3e3e3;border-color:#d4d4d4}.prototype-home{position:relative;display:flex;min-height:100vh;align-items:center;flex-direction:column;gap:1.15rem;padding:3.5rem 2rem;color:#333;background:#fff;overflow-y:auto;text-align:center}.prototype-home>img{width:8rem;height:8rem;object-fit:contain}.prototype-home h1{font-size:clamp(1.6rem,3vw,2rem)}.prototype-home h2{margin:1rem 0 0;color:#666;font-size:1rem}.prototype-home-account{position:absolute;top:1.1rem;right:1.4rem;display:flex;align-items:center;gap:.6rem;font-size:.82rem}.prototype-new-project{display:grid;grid-template-columns:minmax(14rem,24rem) auto;gap:.65rem}.prototype-new-project label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.prototype-new-project input{min-height:52px;padding:.75rem .9rem;border:1px solid #d4d4d4;border-radius:8px;font:inherit}.prototype-new-project button{color:#fff;background:#4a4a4a;border-color:#4a4a4a}.prototype-home-notice{margin:0;color:#765300}.prototype-project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,260px));justify-content:center;gap:1.2rem;width:min(900px,100%)}.prototype-project-grid article{display:grid;gap:.55rem;padding:.8rem;text-align:left;background:#fff;border:1px solid #e0e0e0;border-radius:12px}.prototype-project-grid h3,.prototype-project-grid p{margin:0}.prototype-project-grid p{color:#999;font-size:.78rem}.prototype-project-thumb{display:grid;height:120px;place-items:center;background:#ededed;border-radius:8px}.prototype-project-thumb img{width:6rem;height:6rem;object-fit:contain}.prototype-project-grid button{color:#444;background:#ededed;border-color:#dedede}@media(max-width:980px){.prototype-content-row{grid-template-columns:minmax(20rem,1fr) minmax(320px,40%)}.prototype-stepbar{align-items:stretch;flex-direction:column}.prototype-project-switcher{flex-basis:auto}}@media(max-width:760px){.prototype-app-shell{height:auto;min-height:100vh;overflow:visible}.prototype-app-shell .mobile-tabs{position:sticky;z-index:40;top:0;display:grid;grid-template-columns:repeat(3,1fr)}.prototype-workspace-grid{display:block;height:auto}.prototype-workspace-grid>*,.prototype-content-row>*{display:none}.prototype-workspace-grid[data-mobile-screen=steps]>.prototype-sidebar{display:flex;min-height:calc(100vh - 57px)}.prototype-workspace-grid[data-mobile-screen=assistant]>.prototype-main,.prototype-workspace-grid[data-mobile-screen=work]>.prototype-main{display:flex}.prototype-workspace-grid[data-mobile-screen=assistant] .prototype-chat-column,.prototype-workspace-grid[data-mobile-screen=work] .prototype-artifact-panel{display:flex;min-height:calc(100vh - 150px)}.prototype-workspace-grid[data-mobile-screen=work] .prototype-artifact-panel{display:block}.prototype-content-row{display:block;overflow:visible}.prototype-stepbar{min-height:0;padding:.6rem}.prototype-sidebar{border-right:0}.prototype-new-project{grid-template-columns:1fr;width:min(28rem,100%)}.prototype-home{padding-top:5rem}}
