:root{color-scheme:light;--bg: #f3f5f8;--panel: #ffffff;--panel-soft: #f8fafc;--ink: #111827;--ink-soft: #344054;--muted: #667085;--line: #d7dee8;--line-soft: #ebeff5;--accent: #0f766e;--accent-strong: #115e59;--accent-2: #1d4ed8;--danger: #b42318;--ok: #157347;--warn: #a16207;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 10px 26px rgba(16, 24, 40, .08);--radius: 8px;--radius-sm: 6px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a{color:inherit}button{border:1px solid var(--line);background:#fff;border-radius:var(--radius-sm);min-height:36px;padding:7px 10px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:var(--ink-soft);font-weight:650;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease}button:hover:not(:disabled){border-color:#b9c4d4;background:#f8fafc}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.55}.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700;box-shadow:0 1px 2px #0f766e3d}.primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);padding:9px 10px;min-height:38px;outline:none;transition:border-color .14s ease,box-shadow .14s ease}input:focus,select:focus,textarea:focus{border-color:#5aa7a0;box-shadow:0 0 0 3px #0f766e1f}textarea{min-height:220px;resize:vertical;line-height:1.45}label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:700}table{width:100%;border-collapse:collapse;font-size:13px;background:#fff}.panel table{border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden}th,td{padding:10px 8px;border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top}th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:0;background:#fbfcfe;position:sticky;top:0;z-index:1}tbody tr:hover{background:#fbfcfe}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{background:#fff;color:var(--ink);border-right:1px solid var(--line);padding:16px;display:flex;flex-direction:column;gap:14px;position:sticky;top:0;height:100vh;z-index:30}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius);background:var(--accent);color:#fff;font-weight:900;box-shadow:0 8px 18px #0f766e33}.brand strong,.brand span{display:block}.auth-brand h1{margin:0;font-size:16px}.brand span{color:var(--muted);font-size:12px}.project-select{background:var(--panel-soft);color:var(--ink);border-color:var(--line)}.sidebar nav{display:grid;gap:6px;min-height:0;overflow-y:auto;padding-right:3px}.nav-section-label{color:#98a2b3;font-size:11px;font-weight:900;letter-spacing:0;margin:10px 0 2px;text-transform:uppercase}.nav-section-label:first-child{margin-top:0}.nav{justify-content:flex-start;width:100%;border-color:transparent;background:transparent;color:#475467;min-height:34px}.nav svg{width:18px}.nav.active,.nav:hover{background:#ecfdf5;color:var(--accent-strong);border-color:#bbf7d0}.sidebar-logout{margin-top:auto;background:#fff;border-color:var(--line);color:var(--muted)}.workspace{min-width:0;padding:24px 28px 32px;max-width:1540px;width:100%}.mobile-nav-toggle,.nav-backdrop{display:none}.fatal-error{width:min(560px,calc(100% - 32px));margin:12vh auto;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-md)}.fatal-error h1{margin:12px 0 6px;font-size:20px}.fatal-error p{color:var(--muted)}.fatal-error pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}.topbar h1{margin:0;font-size:22px;line-height:1.15}.topbar-kicker{display:block;margin-bottom:3px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.topbar p{margin:4px 0 0;color:var(--muted)}.role-pill,.status{border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;white-space:nowrap}.role-pill{background:#e0f2fe;color:#075985}.status.completed{background:#dcfce7;color:var(--ok)}.status.failed,.status.cancelled{background:#fee4e2;color:var(--danger)}.status.running,.status.queued{background:#fef3c7;color:var(--warn)}.status.pending{background:#eef2f7;color:#475467}.page{display:grid;gap:18px}.advanced-options,.advanced-section{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--panel-soft)}.advanced-options{padding:10px 12px;margin-top:10px}.advanced-options>summary,.advanced-section>summary{cursor:pointer;color:var(--ink-soft);font-weight:750}.advanced-options[open]>summary{margin-bottom:12px}.advanced-section>summary{padding:14px 16px}.advanced-section[open]>summary{border-bottom:1px solid var(--line-soft)}.advanced-section>.panel{border:0;box-shadow:none}.segmented-control{display:flex;gap:4px;align-items:center;overflow-x:auto;padding:4px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft)}.segmented-control button{flex:0 0 auto;border-color:transparent;background:transparent;min-height:32px}.segmented-control button.active{color:var(--accent-strong);border-color:var(--line);background:var(--panel);box-shadow:var(--shadow-sm)}.settings-tabs{position:sticky;top:0;z-index:5}.pagination-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:12px;color:var(--muted);font-size:13px}.bulk-action-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px;margin:10px 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft)}.bulk-action-bar>span{margin-right:auto;color:var(--muted);font-size:13px}.finding-selector{display:inline-flex;grid-auto-flow:column;align-items:center;justify-content:start;gap:6px;color:var(--accent-strong)}.finding-selector input{width:16px;min-height:16px}.inline-action{min-height:26px;padding:2px 7px;font-size:12px}.invite-link,.invite-summary,.job-list{display:grid;gap:8px}.job-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,.8fr) 48px;align-items:center;gap:12px;padding:10px;border:1px solid var(--line-soft);border-radius:var(--radius)}.job-row>div:first-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px 10px}.job-row small{grid-column:2;color:var(--muted)}.job-progress{height:8px;overflow:hidden;border-radius:999px;background:#e5e7eb}.job-progress i{display:block;height:100%;background:var(--accent)}.job-row>p{grid-column:1 / -1}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px;min-width:0;box-shadow:var(--shadow-sm)}.panel:has(table){overflow-x:auto}.panel>header{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line-soft)}.panel h2{margin:0;font-size:15px;line-height:1.2;color:var(--ink)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.compact-metrics .metric strong{font-size:20px}.workflow-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;counter-reset:workflow}.dashboard-command{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:10px;margin-bottom:12px}.dashboard-command button{display:grid;align-items:start;gap:4px;min-height:78px;padding:12px;text-align:left;background:#fbfcfe;border-color:var(--line)}.dashboard-command button:first-child{background:#ecfdf5;border-color:#99dfd5}.dashboard-command span,.dashboard-command em{color:var(--muted);font-size:12px;font-style:normal}.dashboard-command strong{color:var(--ink);font-size:18px;line-height:1.15;overflow-wrap:anywhere}.workflow-step{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;min-height:76px;padding:10px;text-align:left;border-color:var(--line);background:#fff;position:relative;overflow:hidden}.workflow-step:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#d0d5dd}.workflow-step.done{background:#fbfefd;border-color:#c6eee9}.workflow-step-index,.workflow-step-icon{display:grid;place-items:center;border-radius:var(--radius-sm)}.workflow-step-index{width:24px;height:24px;background:#eef2f7;color:#475467;font-size:12px;font-weight:900}.workflow-step.done .workflow-step-index{background:#dff7ef;color:var(--accent-strong)}.workflow-step.done:before{background:var(--accent)}.workflow-step-icon{width:32px;height:32px;background:#eff6ff;color:var(--accent-2)}.workflow-step strong,.workflow-step em{display:block}.workflow-step strong{overflow-wrap:anywhere;font-size:13px}.workflow-step em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.35}.metric{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 10px;box-shadow:var(--shadow-sm)}.metric svg{color:var(--accent-2);grid-row:span 2}.metric span{color:var(--muted);font-size:12px;font-weight:750}.metric strong{font-size:23px;line-height:1.05;overflow-wrap:anywhere}.stack{display:grid;gap:12px}.form-grid,.run-form,.toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.form-grid.wide{grid-template-columns:repeat(4,minmax(0,1fr))}.extraction-plan{display:grid;grid-template-columns:1.4fr repeat(3,minmax(130px,.7fr));gap:10px;margin-bottom:14px}.extraction-plan div{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);padding:11px;min-width:0}.extraction-plan span,.extraction-plan strong{display:block}.extraction-plan span{color:var(--muted);font-size:12px;margin-bottom:4px}.extraction-plan strong{overflow-wrap:anywhere;font-size:14px}.span-2{grid-column:span 2}.file-input input{padding-top:7px}.list-row,.member-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.list-row{justify-content:flex-start}.list-row span,.member-row span{display:block;color:var(--muted);font-size:12px}.context-grid{display:grid;gap:12px}.editor-block{border-top:1px solid var(--line);padding-top:12px}.editor-block:first-child{border-top:0;padding-top:0}.editor-head{display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto;gap:10px;align-items:center;margin-bottom:8px}.inline-check{display:inline-flex;align-items:center;gap:6px}.inline-check input,.type-chip input{width:auto;min-height:auto}.prompt-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px}.prompt-list{display:grid;align-content:start;gap:6px;max-height:70vh;overflow:auto}.prompt-item{justify-content:flex-start;align-items:flex-start;display:grid;text-align:left}.prompt-item span{color:var(--muted);font-size:12px}.prompt-item.active{border-color:var(--accent);background:#ecfdf5}.prompt-editor{display:grid;gap:10px}.prompt-editor textarea{min-height:64vh;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px}.type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.type-chip{display:flex;align-items:center;gap:8px;color:var(--ink);background:var(--panel-soft);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px;min-height:38px}.type-chip:has(input:checked){background:#ecfdf5;border-color:#99dfd5;color:var(--accent-strong)}.inline-check{width:fit-content;margin-top:10px}.run-log{display:grid;gap:4px;max-height:180px;overflow:auto;background:#101828;color:#d1fadf;border-radius:var(--radius);padding:10px;font-size:12px}.run-log span{white-space:pre-wrap}.preview-layout,.quality-report{display:grid;gap:12px}.quality-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.quality-summary span,.quality-summary strong,.quality-summary em{background:#eef2f7;border-radius:999px;padding:5px 9px;color:#475467;font-size:12px;font-style:normal}.quality-summary em{background:#fef3c7;color:var(--warn)}.book-map{display:grid;gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}.book-map-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.book-map-head strong{font-size:14px}.book-map-head span,.book-map-row span,.book-map-alerts{color:var(--muted);font-size:12px}.book-map-rows{display:grid;gap:8px}.book-map-row{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(160px,1fr);gap:12px;align-items:center}.book-map-row strong,.book-map-row span{display:block}.book-map-row strong{overflow-wrap:anywhere}.book-map-bar{height:9px;border-radius:999px;background:#eef2f7;overflow:hidden}.book-map-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.book-map-alerts{color:var(--warn)}.division-audit{border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;padding:10px}.division-audit.ok{background:#f0fdf4;border-color:#bbf7d0}.division-audit.review{background:#fffbeb;border-color:#fde68a}.division-audit.risk{background:#fef2f2;border-color:#fecaca}.audit-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.audit-head span,.compact-warning-list span{font-size:12px}.compact-warning-list{gap:4px}.text-preview{max-height:260px;overflow:auto;white-space:pre-wrap;background:#101828;color:#edf6ff;border-radius:8px;padding:12px;font-size:12px;line-height:1.5}.chunk-preview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:420px;overflow:auto}.chunk-preview-item{align-items:start;display:grid;gap:5px;text-align:left}.chunk-preview-item span,.chunk-preview-item p,.quality-row em{color:var(--muted);font-size:12px;font-style:normal}.chunk-preview-item p{margin:0;line-height:1.4}.quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.quality-grid h3{margin:0 0 8px;font-size:14px}.quality-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:9px 0;border-bottom:1px solid var(--line-soft);align-items:center}.quality-row strong{color:var(--ink-soft)}.quality-row span{overflow-wrap:anywhere}.warning-list{display:grid;gap:6px}.warning-list span{background:#fffbeb;border:1px solid #fde68a;color:var(--warn);border-radius:var(--radius-sm);padding:8px;font-size:13px}.credential-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.credential-status>span:not(.status),.inline-note,.muted-note{color:var(--muted);font-size:13px}.muted-note{margin:0}.queue-load{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);display:grid;gap:8px;margin-top:12px;padding:12px}.queue-load div:first-child{align-items:center;display:flex;gap:10px;justify-content:space-between}.queue-load span{color:var(--muted);font-size:13px}.queue-load-bar{background:#e5e7eb;border-radius:999px;height:8px;overflow:hidden}.queue-load-bar i{background:var(--accent);display:block;height:100%}.queue-status-grid{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:12px}.queue-status-card,.batch-row{align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#fff;display:grid;gap:6px;min-width:0;padding:10px}.queue-status-card strong{font-size:22px}.batch-list{display:grid;gap:8px;margin-top:12px}.batch-row{grid-template-columns:max-content minmax(0,1fr) minmax(160px,.8fr)}.batch-row strong,.batch-row em{overflow-wrap:anywhere}.batch-row em{color:var(--muted);font-style:normal;font-size:13px}.research-list,.headline-grid,.script-beats,.script-detail{display:grid;gap:10px}.headline-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px;display:grid;gap:8px;box-shadow:var(--shadow-sm)}.audience-card.finding-risk{border-color:#fecaca;background:snow}.audience-card.finding-warning{border-color:#fde68a;background:#fffdf7}.audience-card.finding-info{border-color:#bfdbfe;background:#f8fbff}.audience-card p,.script-detail p{margin:0;color:var(--muted);line-height:1.45}.audit-queue-toolbar,.audit-actions{grid-template-columns:repeat(6,max-content)}.audit-version{border:1px dashed var(--line);border-radius:var(--radius);padding:10px;display:grid;gap:8px;background:#f8fafc}.audit-inline-config{margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc}.audit-patch-grid{display:grid;gap:8px}.audit-patch-grid div{display:grid;gap:4px}.audit-patch-grid strong{color:#344054;font-size:12px}.audit-patch-grid p{overflow-wrap:anywhere}.compact-toolbar{grid-template-columns:repeat(2,max-content);align-items:center}.type-actions{grid-template-columns:repeat(3,max-content)}.headline-form{grid-template-columns:minmax(260px,1.5fr) minmax(220px,1fr) minmax(220px,1fr) 130px 130px auto}.script-detail h3{margin:0;font-size:18px}.script-footer{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:8px}.icon-row{display:inline-flex;align-items:center;gap:8px}.icon-row a{display:inline-flex;align-items:center;color:var(--accent-2)}.ingredient-list{display:grid;gap:6px;max-height:72vh;overflow:auto}.ingredient-list.compact{max-height:430px}.ingredient-item{display:grid;text-align:left;gap:8px;padding:10px;min-height:auto;border-radius:var(--radius);background:#fff}.ingredient-item:hover:not(:disabled){background:#fbfcfe;border-color:#b9c4d4}.ingredient-top{display:grid;grid-template-columns:70px 1fr;gap:8px;align-items:start}.ingredient-top span{color:var(--accent-strong);font-weight:900;font-size:12px}.ingredient-item p{margin:0;color:var(--muted)}.score-row{display:flex;gap:6px;flex-wrap:wrap}.score-row span{background:#eef2f7;border-radius:999px;padding:3px 7px;font-size:12px;color:#475467;border:1px solid transparent}.library-split{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr)}.library-page .library-split>.panel:last-child{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto}.context-workbench{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr)}.context-list{display:grid;gap:8px;align-content:start;max-height:70vh;overflow:auto}.context-card{display:grid;gap:5px;text-align:left;padding:12px}.context-card span,.context-card small{color:var(--muted)}.context-card p{margin:2px 0 0;color:var(--ink-soft);font-weight:400;line-height:1.4}.context-card.active{border-color:#5aa7a0;background:#ecfdf5}.context-editor{align-content:start}.empty{display:grid;justify-items:start;gap:10px}.editor-section{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}.editor-section:first-child{border-top:0;padding-top:0}.editor-section h3{margin:0;font-size:13px;color:#344054}.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.readonly-field{border:1px solid var(--line);border-radius:8px;padding:8px;display:grid;gap:3px;min-width:0}.readonly-field span{color:var(--muted);font-size:12px}.readonly-field strong{font-size:13px;overflow-wrap:anywhere}.filters{grid-template-columns:1fr 180px 180px auto}.empty{min-height:80px;display:grid;place-items:center;color:var(--muted);border:1px dashed var(--line);border-radius:8px}.auth-screen{min-height:100vh;display:grid;place-items:center;background:#eef3f8;padding:24px}.auth-panel{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px;display:grid;gap:14px}.auth-brand{margin-bottom:4px}.form-error{color:var(--danger);margin:0;font-weight:700}.toast{position:fixed;right:18px;bottom:18px;background:#111827;color:#fff;border-radius:8px;padding:10px 14px;box-shadow:0 18px 50px #0f172a38}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,calc(100vw - 48px));height:100dvh;transform:translate(-104%);transition:transform .18s ease;box-shadow:var(--shadow-md)}.sidebar.open{transform:translate(0)}.sidebar nav{grid-template-columns:1fr}.nav-section-label{margin-top:6px}.mobile-nav-toggle{display:grid;place-items:center;position:fixed;top:12px;left:12px;z-index:25;width:40px;height:40px;padding:0;background:var(--panel);box-shadow:var(--shadow-sm)}.nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:29;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#1118276b}.split,.dashboard-command,.metrics,.workflow-overview,.extraction-plan,.form-grid,.form-grid.wide,.run-form,.toolbar,.prompt-layout,.type-grid,.library-split,.filters,.chunk-preview-list,.quality-grid,.headline-grid,.headline-form,.book-map-row,.queue-status-grid,.batch-row{grid-template-columns:1fr}.workspace{padding:66px 16px 24px}.topbar{align-items:flex-start}.span-2{grid-column:auto}.job-row{grid-template-columns:1fr 44px}.job-progress{grid-column:1}.library-page .library-split>.panel:last-child,.settings-tabs{position:static;max-height:none}}
