:root{--bg:#f5f7fa;--surface:#fff;--surface-subtle:#f8fafc;--surface-strong:#eef3f8;--text:#1f2937;--text-h:#111827;--muted:#5b6676;--soft:#7b8796;--border:#d8e0ea;--border-strong:#b8c4d4;--control-bg:#eef3f8;--button-bg:#0f766e;--button-hover:#0b5d57;--button-text:#fff;--status-bg:#d9f2ee;--status-border:#addbd4;--shadow:0 12px 32px #0f172a14;--radius:8px;color:var(--text);background:var(--bg);font-synthesis:none;letter-spacing:0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.45}body{background:linear-gradient(180deg, #eef3f8 0, #f5f7fa 260px), var(--bg);min-width:320px;min-height:100svh;margin:0}*{box-sizing:border-box}#root{min-height:100svh}h1,h2,h3,p{margin:0}a{color:var(--button-hover);text-decoration:none}a:hover{color:var(--button-bg)}button,input,select{font:inherit;letter-spacing:0}button{border:1px solid var(--button-hover);min-height:40px;color:var(--button-text);background:var(--button-bg);cursor:pointer;border-radius:6px;font-weight:700;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s}button:hover{background:var(--button-hover)}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #2563eb47}input,select{min-height:42px;color:var(--text-h);border:1px solid var(--border-strong);background:#fff;border-radius:6px}input::placeholder{color:var(--soft)}h2,h3{color:var(--text-h);letter-spacing:0}h2{font-size:22px;font-weight:800;line-height:1.2}h3{margin:0 0 10px;font-size:24px;font-weight:800;line-height:1.2}p{color:var(--muted)}#root>div{width:min(1180px,100% - 40px);min-height:100svh;padding:28px 0 56px!important}header{border-radius:var(--radius);min-height:72px;box-shadow:var(--shadow);background:#fffffff0;justify-content:space-between;align-items:center;border:1px solid var(--border)!important;margin-bottom:28px!important;padding:18px 22px!important}header h2{white-space:nowrap;padding-left:14px;position:relative}header h2:before{content:"";background:var(--button-bg);border-radius:2px;width:4px;position:absolute;top:3px;bottom:3px;left:0}nav{justify-content:flex-end}nav a{min-height:36px;color:var(--muted);border:1px solid #0000;border-radius:6px;align-items:center;padding:7px 10px;font-size:14px;font-weight:700;line-height:1;display:inline-flex}nav a:hover{color:var(--text-h);background:var(--surface-strong);border-color:var(--border)}main{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;display:block}main>div,main>section{text-align:left}main>div{min-height:280px;padding:10px 0 0}main>div p{max-width:680px;padding-top:4px;font-size:17px}section{gap:20px;display:grid}section>h3{margin-bottom:0}section>p[aria-live]{color:var(--button-hover);background:var(--status-bg);border:1px solid var(--status-border);border-radius:6px;padding:12px 14px;font-weight:700}section label{color:var(--text-h);font-size:13px;font-weight:800;line-height:1.25}section input,section select{width:100%;padding:9px 10px!important}section button{min-width:156px;width:fit-content!important;padding:9px 16px!important}section>div:first-of-type{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius);width:min(760px,100%);padding:18px;margin-bottom:0!important}section>div:last-of-type{gap:12px!important}section>div:last-of-type>div{background:#fff;grid-template-columns:minmax(220px,.7fr) minmax(260px,1fr) minmax(180px,auto);align-items:center;gap:14px;display:grid;border:1px solid var(--border)!important;border-radius:var(--radius)!important;padding:16px!important}section>div:last-of-type label{overflow-wrap:anywhere;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;margin-bottom:0!important}section>div:last-of-type p{font-size:14px;color:var(--muted)!important;margin:0!important}section>div:last-of-type select{min-width:180px!important}select:disabled{color:var(--soft);cursor:not-allowed;background:#f1f5f9}@media (width<=860px){#root>div{width:min(100% - 24px,1180px);padding-top:14px!important}header{flex-direction:column;align-items:flex-start;gap:16px!important}header h2{white-space:normal}nav{justify-content:flex-start;width:100%;gap:8px!important}nav a{flex:auto;justify-content:center}main{padding:20px}section>div:last-of-type>div{grid-template-columns:1fr;align-items:stretch}}@media (width<=520px){#root>div{width:100%;padding:0!important}header,main{box-shadow:none;border-radius:0;border-left:0!important;border-right:0!important}header{margin-bottom:0!important}main{min-height:calc(100svh - 156px)}nav a{flex-basis:calc(50% - 8px)}section>div:first-of-type{padding:14px}section button{width:100%!important}}.app-shell{max-width:1180px;margin:0 auto;padding:24px}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;padding-bottom:18px;display:flex}.operator-session{grid-template-columns:1fr auto;align-items:center;gap:2px 10px;min-width:220px;display:grid}.operator-session span{color:var(--text-h);overflow-wrap:anywhere;font-size:13px;font-weight:800}.operator-session strong{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.operator-session button{grid-area:1/2/span 2;min-width:92px}.login-shell{align-items:center;min-height:100svh;padding:24px;display:grid}.login-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);text-align:left;border-radius:8px;justify-self:center;gap:16px;width:100%;max-width:420px;padding:32px;display:grid}.login-panel h1{color:var(--text-h);margin:0;font-size:28px;line-height:1.15}.login-panel button{width:100%}.app-header h2{margin:0}.brand-lockup{color:var(--text-h);gap:2px;min-width:180px;text-decoration:none;display:grid}.brand-lockup span{font-size:18px;font-weight:900}.brand-lockup small{color:var(--muted);font-size:12px;font-weight:700}.app-nav{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.app-nav a{color:var(--text);border-radius:6px;padding:8px 10px;text-decoration:none}.app-nav a:hover,.app-nav a:focus-visible,.app-nav a.active{background:var(--control-bg);color:var(--text-h);outline:none}.dashboard-grid,.gate-workspace{gap:18px;display:grid}.page-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.page-heading h1{color:var(--text-h);margin:0 0 6px;font-size:28px;line-height:1.15}.page-heading p,.muted-copy{color:var(--muted);margin:0}.action-row{flex-wrap:wrap;gap:10px;display:flex}.metric-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;display:grid}.metric-tile{border:1px solid var(--border);border-radius:8px;gap:6px;min-height:86px;padding:14px;display:grid}.metric-tile span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.metric-tile strong{color:var(--text-h);font-size:30px;line-height:1}.kanban-board{scroll-snap-type:x proximity;gap:14px;padding:4px 2px 16px;display:flex;overflow-x:auto}.kanban-column{border:1px solid var(--border);scroll-snap-align:start;border-radius:8px;flex:0 0 286px;grid-template-rows:auto minmax(420px,1fr);gap:12px;padding:12px;display:grid}.kanban-column header{justify-content:space-between;align-items:center;display:flex}.kanban-column header span{color:var(--text-h);text-transform:uppercase;font-size:13px;font-weight:900}.kanban-column header strong{background:var(--control-bg);color:var(--text-h);border-radius:999px;padding:3px 8px;font-size:13px}.tone-blue{border-top:4px solid #2563eb}.tone-amber{border-top:4px solid #d97706}.tone-cyan{border-top:4px solid #0891b2}.tone-green{border-top:4px solid #15803d}.tone-red{border-top:4px solid #dc2626}.tone-slate{border-top:4px solid #64748b}.tone-violet{border-top:4px solid #7c3aed}.kanban-stack{align-content:start;gap:10px;display:grid}.empty-column{color:var(--muted);text-align:center;padding:34px 8px}.job-card{background:var(--surface);border:1px solid var(--border);color:var(--text);text-align:left;border-radius:8px;gap:8px;width:100%;padding:12px;display:grid}.job-card:hover,.job-card:focus-visible{border-color:var(--border-strong);transform:translateY(-1px)}.job-card strong{color:var(--text-h);font-size:15px;line-height:1.25}.job-card small,.job-card-meta{color:var(--muted);font-size:12px}.job-card-meta{gap:3px;display:grid}.split-panel{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.detail-item{border:1px solid var(--border);border-radius:8px;gap:4px;padding:12px;display:grid}.detail-item span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.detail-item strong,.detail-item code{color:var(--text-h);overflow-wrap:anywhere}.notes-box{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:6px;padding:12px;display:grid}.notes-box p{margin:0}.command-list{gap:8px;display:grid}.command-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 12px;display:grid}.command-row span,.command-row small{overflow-wrap:anywhere}.command-row span{color:var(--text-h);font-weight:800}.command-row strong{color:var(--muted);text-transform:uppercase;font-size:12px}.command-row small{color:var(--muted);grid-column:1/-1}.gate-list{border:1px solid var(--border);border-radius:8px;gap:8px;max-height:70vh;padding:12px;display:grid;overflow:auto}.gate-list-item{background:var(--surface);border:1px solid var(--border);color:var(--text);text-align:left;border-radius:8px;gap:5px;padding:12px;display:grid}.gate-list-item.selected{border-color:var(--border-strong);box-shadow:inset 3px 0 0 var(--button-bg)}.gate-list-item strong{color:var(--text-h)}.gate-list-item span,.gate-list-item small{color:var(--muted)}.compact-json{background:var(--surface);border:1px solid var(--border);border-radius:8px;max-height:280px;margin:0;padding:12px;overflow:auto}.media-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.media-strip img{aspect-ratio:16/10;border:1px solid var(--border);object-fit:cover;border-radius:8px;width:100%}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-card{border:1px solid var(--border);border-radius:8px;gap:12px;padding:16px;display:grid}.admin-card h3{margin:0}.page-panel{text-align:left;gap:16px;display:grid}.page-panel h3{color:var(--text-h);margin:0;font-size:22px;line-height:1.2}.token-row{grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:10px;max-width:760px;display:grid}.job-form{grid-template-columns:minmax(180px,240px) minmax(280px,1fr);gap:10px 14px;max-width:860px;display:grid}.review-loader{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:end;gap:10px 14px;max-width:980px;display:grid;width:min(980px,100%)!important}.page-panel>.review-loader>.review-field{background:0 0;grid-template-columns:1fr;gap:8px;min-width:0;display:grid;border:0!important;padding:0!important}.review-field label{color:var(--text-h);font-weight:700}.review-field input{width:100%;min-width:0}.review-loader button{white-space:nowrap}.review-workspace{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:18px;display:grid}.review-main,.review-side,.script-panel{gap:14px;min-width:0;display:grid}.review-video,.review-missing-media{aspect-ratio:16/9;background:var(--surface);border:1px solid var(--border);border-radius:8px;width:100%}.review-missing-media{color:var(--muted);align-content:center;gap:8px;padding:18px;display:grid}.review-missing-media strong,.job-summary h4,.scene-list h4,.script-panel h4{color:var(--text-h);margin:0}.artifact-grid,.job-summary,.scene-list{border:1px solid var(--border);border-radius:8px;gap:12px;padding:14px;display:grid}.artifact-grid div{gap:4px;display:grid}.artifact-grid span,.job-summary dt{color:var(--muted);font-size:13px}.artifact-grid code{overflow-wrap:anywhere}.job-summary{align-content:start}.status-pill{background:var(--control-bg);border:1px solid var(--border);color:var(--text-h);border-radius:999px;justify-self:start;padding:4px 9px;font-size:13px}.job-summary dl{gap:8px;margin:0;display:grid}.job-summary dl div{gap:2px;display:grid}.job-summary dd{color:var(--text-h);overflow-wrap:anywhere;margin:0}textarea{background:var(--surface);border:1px solid var(--border-strong);box-sizing:border-box;color:var(--text-h);font:inherit;resize:vertical;border-radius:6px;padding:10px}.decision-row{flex-wrap:wrap;gap:10px;display:flex}.secondary-button{color:var(--text-h);background:0 0}button:disabled{cursor:not-allowed;opacity:.55}.scene-row{border-top:1px solid var(--border);gap:2px;padding-top:10px;display:grid}.scene-row span,.scene-row small{color:var(--muted)}.script-panel{grid-column:1/-1}.script-panel pre{background:var(--surface);border:1px solid var(--border);border-radius:8px;max-height:360px;margin:0;padding:14px;overflow:auto}.job-form label{color:var(--text-h);align-self:center;font-weight:700}.job-form button{grid-column:2;justify-self:start}.token-row label{grid-column:1/-1}input,select,button{border:1px solid var(--border-strong);box-sizing:border-box;font:inherit;border-radius:6px;min-height:42px;padding:9px 10px}input,select{background:var(--surface);color:var(--text-h)}button{background:var(--button-bg);color:var(--button-text);cursor:pointer;font-weight:700}button:hover,button:focus-visible{background:var(--button-hover);outline:none}select:disabled{cursor:wait;opacity:.65}.status-line{color:var(--muted);min-height:24px}.health-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.health-card{border:1px solid var(--border);border-radius:8px;align-content:start;gap:6px;min-height:112px;padding:14px;display:grid}.health-card span,.health-card small{color:var(--muted)}.health-card strong{color:var(--text-h);font-size:20px;line-height:1.2}.health-card code{overflow-wrap:anywhere}.config-list{gap:12px;display:grid}.config-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(220px,1fr) minmax(220px,300px);align-items:center;gap:8px 18px;padding:16px;display:grid}.config-row label{color:var(--text-h);font-weight:700}.config-row p{color:var(--muted);grid-column:1}.config-row select{grid-area:1/2/span 2}@media (width<=760px){.app-shell{padding:18px}.app-header,.token-row,.review-loader,.review-workspace,.job-form,.config-row,.page-heading,.split-panel,.detail-grid,.admin-grid,.metric-grid{grid-template-columns:1fr;align-items:stretch}.app-header{display:grid}.config-row select{grid-area:auto/1}.job-form button{grid-column:1}.page-heading{display:grid}.kanban-column{flex-basis:82vw}.media-strip{grid-template-columns:1fr}}
