:root{color-scheme:dark;--bg-base:#0b0f17;--bg-panel:#131b2a;--bg-raised:#1c2638;--bg-deep:#080b10;--border:#2a364f;--border-soft:rgba(255,255,255,0.06);--primary:#5ed6c2;--primary-strong:#00e5a3;--primary-dim:rgba(94,214,194,0.12);--accent:#f0b35b;--accent-dim:rgba(240,179,91,0.14);--danger:#ff8a7a;--text:#f3f4f6;--muted:#a6afbd;--dim:#6b7280}*{box-sizing:border-box}body{margin:0;background:var(--bg-base);color:var(--text);font-family:Arial,Noto Sans TC,PingFang TC,sans-serif;font-size:12px;line-height:1.42}.judge-login-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 50% 0,rgba(94,214,194,.14),transparent 34%),linear-gradient(180deg,#111827,#070b12)}.judge-login-panel{width:min(100%,460px);border:1px solid rgba(94,214,194,.28);border-radius:14px;background:rgba(19,27,42,.94);box-shadow:0 24px 80px rgba(0,0,0,.36);padding:32px}.judge-login-brand{width:48px;height:48px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#06100e;font-size:24px;font-weight:900}.judge-login-kicker{margin:22px 0 8px;color:var(--primary);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.judge-login-panel h1{margin:0;font-size:34px;line-height:1.1;letter-spacing:0}.judge-login-copy{margin:14px 0 24px;color:var(--muted);font-size:15px;line-height:1.65}.judge-login-form{display:grid;grid-gap:14px;gap:14px}.judge-login-form label{display:grid;grid-gap:8px;gap:8px;color:var(--muted);font-size:13px;font-weight:800}.judge-login-form input{width:100%;border:1px solid var(--border);border-radius:10px;background:var(--bg-deep);color:var(--text);padding:13px 14px;font-size:16px;outline:none}.judge-login-form input:focus{border-color:rgba(94,214,194,.7);box-shadow:0 0 0 3px rgba(94,214,194,.14)}.judge-login-error{margin:0;border:1px solid rgba(255,138,122,.4);border-radius:10px;background:rgba(255,138,122,.12);color:#ffd2cc;padding:10px 12px;font-weight:800}.judge-login-submit{border:0;border-radius:10px;background:var(--primary);color:#06100e;cursor:pointer;padding:14px 16px;font-size:16px;font-weight:900}.judge-login-submit:hover{background:#77e6d4}.judge-login-boundary{margin-top:22px;border-top:1px solid rgba(255,255,255,.08);padding-top:16px;display:grid;grid-gap:4px;gap:4px;color:var(--muted)}.judge-login-boundary strong{color:var(--accent)}button,input,select{font:inherit}button:disabled{cursor:not-allowed;opacity:.5}.demo-console{min-height:100vh;display:flex;flex-direction:column}.topbar{min-height:44px;flex-shrink:0;justify-content:flex-start;gap:18px;padding:0 28px;background:#070b12;border-bottom:1px solid var(--border)}.brand-block,.topbar{display:flex;align-items:center}.brand-block{gap:0;min-width:0}.brand-logo{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#06100e;font-weight:800}.brand-title{font-size:20px;font-weight:500;letter-spacing:0;white-space:nowrap}.brand-subtitle{color:var(--muted);font-size:12px}.disclaimer-badge{border:1px solid rgba(240,179,91,.35);border-radius:6px;padding:5px 9px;color:var(--accent);background:var(--accent-dim);max-width:260px;line-height:1.35;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.control-dock{position:static;z-index:auto;display:flex;align-items:center;justify-content:flex-start;gap:7px;width:auto;max-width:none;min-height:36px;overflow:visible;border:1px solid rgba(42,54,79,.72);border-radius:0;background:#101722;padding:5px 8px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.topbar-module{display:inline-flex;align-items:center;gap:6px;border-right:1px solid rgba(255,255,255,.08);padding-right:6px}.topbar-module.compact{border-right:0;padding-right:0}.utility-button{border:1px solid var(--border);border-radius:8px;background:rgba(255,255,255,.04);color:var(--text);cursor:pointer;padding:5px 8px;font-size:12px;font-weight:800;white-space:nowrap}.utility-button:hover{border-color:rgba(94,214,194,.44);color:var(--primary)}.utility-button.subtle{color:var(--muted)}.model-mode-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:8px;background:var(--bg-deep);padding:3px;white-space:nowrap}.model-mode-toggle span{padding-left:6px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.model-mode-toggle button{border:0;border-radius:6px;padding:5px 8px;cursor:pointer;font-weight:800}.model-mode-toggle button.dry{background:var(--primary-dim);color:var(--primary)}.model-mode-toggle button.live{background:var(--accent);color:#181008}.busy-control{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,138,122,.38);border-radius:8px;background:rgba(255,138,122,.12);padding:3px;white-space:nowrap}.busy-control span{padding-left:6px;color:var(--danger);font-size:11px;font-weight:800}.busy-control button{border:0;border-radius:6px;padding:5px 8px;background:var(--danger);color:#190705;cursor:pointer;font-weight:800}.language-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--bg-deep)}.language-toggle button{border:0;background:transparent;color:var(--muted);padding:6px 9px;cursor:pointer;font-weight:800}.language-toggle button.active{background:var(--primary);color:#06100e}.ebook-shelf{width:100%;max-width:1480px;margin:6px auto 0;padding:0 12px;display:grid;grid-gap:6px;gap:6px}.ebook-shelf-boundary,.ebook-shelf-group,.ebook-shelf-panel,.ebook-shelf-toggle{border:1px solid var(--border-soft);border-radius:8px;background:rgba(255,255,255,.026);min-width:0}.ebook-shelf-toggle{width:100%;display:grid;grid-template-columns:auto auto auto minmax(0,1fr) auto auto;grid-gap:8px;gap:8px;align-items:center;padding:7px 10px;color:inherit;cursor:pointer;text-align:left}.ebook-shelf-toggle:hover{border-color:rgba(94,214,194,.3)}.ebook-shelf.empty-selection .ebook-shelf-toggle{border-color:rgba(94,214,194,.38);background:linear-gradient(90deg,rgba(94,214,194,.105),rgba(255,255,255,.024));padding:10px 12px}.ebook-shelf.empty-selection .ebook-shelf-toggle strong{font-size:15px}.ebook-shelf.empty-selection .ebook-shelf-toggle-label{border-color:rgba(94,214,194,.35);background:var(--primary-dim);color:var(--primary)}.ebook-shelf-boundary>span,.ebook-shelf-toggle span:first-child{color:var(--primary);font-size:11px;font-weight:900;letter-spacing:0}.ebook-shelf-boundary strong,.ebook-shelf-toggle strong{color:var(--text);font-size:13px;font-weight:900;overflow-wrap:anywhere}.ebook-shelf-toggle em{border:1px solid rgba(94,214,194,.35);border-radius:999px;padding:3px 7px;color:var(--primary);font-size:12px;font-style:normal;font-weight:900}.ebook-shelf-toggle p{margin:0;color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.ebook-shelf-boundary-pill{border:1px solid rgba(255,190,92,.25);border-radius:999px;color:var(--accent);font-size:11px;font-weight:800;padding:4px 8px;white-space:nowrap}.ebook-shelf-toggle-label{border:1px solid var(--border-soft);border-radius:6px;color:var(--text);font-size:11px;font-weight:900;padding:4px 8px;white-space:nowrap}.ebook-shelf-panel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.5fr);grid-gap:10px;gap:10px;padding:10px}.ebook-shelf-panel.source-lock-panel{grid-template-columns:minmax(0,1fr) minmax(260px,.38fr);padding:10px}.ebook-shelf-panel.source-lock-panel .ebook-shelf-boundary{display:grid}.ebook-shelf-groups{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));grid-gap:10px;gap:10px;min-width:0}.ebook-shelf-panel.source-lock-panel .ebook-shelf-groups{grid-template-columns:1fr}.ebook-source-lock-card{display:grid;align-content:center;grid-gap:8px;gap:8px;min-height:180px;border:1px solid rgba(94,214,194,.28);border-radius:8px;background:rgba(94,214,194,.055);padding:16px}.ebook-source-lock-card.compact{grid-template-columns:minmax(0,1fr);align-content:start;align-items:start;gap:5px;min-height:0;padding:12px}.ebook-source-lock-card span{color:var(--primary);font-size:12px;font-weight:900}.ebook-source-lock-card strong{color:var(--text);font-size:16px}.ebook-source-lock-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.ebook-source-lock-card.compact p{grid-column:auto}.ebook-shelf-group{display:grid;grid-template-rows:auto 1fr;grid-gap:8px;gap:8px;padding:9px;white-space:normal;align-content:start}.ebook-shelf-group.active-book{border-color:rgba(94,214,194,.42);background:rgba(94,214,194,.055)}.ebook-book-card{display:grid;grid-gap:6px;gap:6px;min-width:0}.ebook-book-card>div,.ebook-book-progress,.ebook-current-source,.episode-meta-row,.episode-status-row{display:flex;align-items:center;flex-wrap:wrap;gap:5px;min-width:0}.ebook-book-card strong{color:var(--text);font-size:13px;font-weight:900}.ebook-book-card p,.ebook-shelf-boundary p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.ebook-book-card em,.ebook-book-progress span,.ebook-current-source em,.episode-meta-row small,.episode-status-row em{border:1px solid var(--border-soft);border-radius:999px;background:rgba(255,255,255,.03);color:var(--muted);font-size:10px;font-style:normal;font-weight:900;padding:3px 7px}.whole-book-status-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:7px 9px;gap:7px 9px;align-items:start;border:1px solid rgba(255,190,92,.24);border-radius:8px;background:rgba(255,190,92,.07);padding:9px 10px;min-width:0}.whole-book-status-card.ready{border-color:rgba(94,214,194,.42);background:rgba(94,214,194,.08)}.whole-book-status-light{width:10px;height:10px;border-radius:999px;margin-top:4px;background:rgba(255,190,92,.92);box-shadow:0 0 10px rgba(255,190,92,.32)}.whole-book-status-light.ready{background:var(--primary);box-shadow:0 0 12px rgba(94,214,194,.45)}.whole-book-status-card>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.whole-book-status-card strong{color:var(--text);font-size:12px;font-weight:900}.whole-book-status-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.whole-book-status-card em,.whole-book-status-card small{border:1px solid var(--border-soft);border-radius:999px;color:var(--muted);font-size:10px;font-style:normal;font-weight:900;padding:3px 7px}.whole-book-status-card em{grid-column:2;justify-self:start;background:rgba(255,255,255,.035)}.whole-book-status-card small{grid-column:2;justify-self:start;border-color:rgba(94,214,194,.32);color:var(--primary)}.ebook-book-card>div>span{color:var(--primary);font-size:11px;font-weight:900}.ebook-episode-list{display:grid;grid-gap:6px;gap:6px;min-width:0}.ebook-shelf-group button{border:1px solid var(--border-soft);border-radius:6px;background:rgba(255,255,255,.025);color:var(--text);display:grid;grid-gap:4px;gap:4px;padding:7px 8px;cursor:pointer;font-size:12px;font-weight:900;min-width:0;text-align:left}.ebook-shelf-group button:hover{border-color:rgba(94,214,194,.45)}.ebook-shelf-group button.locked,.ebook-shelf-group button:disabled{cursor:not-allowed;opacity:.5;filter:grayscale(.65)}.ebook-shelf-group button.locked:hover{border-color:var(--border-soft)}.ebook-shelf-group button.active{position:relative;border-color:rgba(255,204,38,.88);background:linear-gradient(90deg,rgba(255,204,38,.18),rgba(255,204,38,.06));box-shadow:inset 3px 0 0 rgba(255,204,38,.95),0 0 0 1px rgba(255,204,38,.18);color:var(--text)}.ebook-shelf-group button.active:hover{border-color:rgba(255,204,38,.95)}.ebook-shelf-group button.active .episode-status-row i,.episode-status-row i.selected{background:var(--warning);box-shadow:0 0 12px rgba(255,204,38,.58)}.episode-status-row em.selected-label{border:1px solid rgba(255,204,38,.45);border-radius:999px;padding:2px 7px;color:var(--warning);background:rgba(255,204,38,.12);font-size:10px;font-weight:900;white-space:nowrap}.ebook-shelf-group button.marked{box-shadow:inset 0 -2px 0 rgba(94,214,194,.8)}.ebook-shelf-group button.bookmarked{border-color:rgba(255,190,92,.58)}.episode-status-row{justify-content:space-between}.episode-status-row i{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.2);flex:0 0 auto}.episode-status-row i.opened{background:rgba(255,190,92,.86)}.episode-status-row i.ready{background:var(--primary);box-shadow:0 0 10px rgba(94,214,194,.45)}.episode-status-row i.locked{background:#596273;box-shadow:inset 0 0 0 2px rgba(11,15,23,.7)}.episode-goal-row,.episode-status-row strong{min-width:0;overflow-wrap:anywhere}.episode-status-row strong{flex:1 1 140px;font-size:12px}.episode-goal-row{color:var(--muted);font-size:11px;font-weight:700;line-height:1.35}.ebook-shelf-boundary{display:grid;grid-gap:7px;gap:7px;padding:10px 12px;align-content:start}.ebook-shelf-marks,.ebook-shelf-progress{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.ebook-shelf-marks button,.ebook-shelf-marks span,.ebook-shelf-progress em{border:1px solid var(--border-soft);border-radius:999px;background:rgba(255,255,255,.03);color:var(--muted);font-size:11px;font-style:normal;font-weight:900;padding:4px 8px}.ebook-shelf-marks button{cursor:pointer}.ebook-shelf-marks .marked,.ebook-shelf-marks button.marked{border-color:rgba(94,214,194,.58);background:rgba(94,214,194,.12);color:var(--primary)}.run-evidence-dashboard{grid-column:1/-1;display:grid;grid-gap:10px;gap:10px;margin-top:4px;border-top:1px solid var(--border-soft);padding-top:10px}.run-evidence-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.run-evidence-header div{display:grid;grid-gap:2px;gap:2px}.run-evidence-header strong{color:var(--text);font-size:13px}.run-evidence-header span{color:var(--muted);font-size:11px;line-height:1.4}.run-evidence-header em{border:1px solid rgba(94,214,194,.34);border-radius:999px;background:var(--primary-dim);color:var(--primary);padding:4px 8px;font-size:11px;font-style:normal;font-weight:900;white-space:nowrap}.run-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.run-evidence-item{display:grid;grid-gap:6px;gap:6px;border:1px solid var(--border-soft);border-left:3px solid var(--primary);border-radius:8px;background:rgba(255,255,255,.025);padding:8px}.run-evidence-item.pass_with_warnings{border-left-color:var(--accent)}.run-evidence-item.blocked,.run-evidence-item.no_go{border-left-color:var(--danger)}.run-evidence-item div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.run-evidence-item strong{color:var(--text);font-size:12px;line-height:1.35}.run-evidence-item span{flex-shrink:0;border:1px solid var(--border-soft);border-radius:999px;color:var(--primary);background:rgba(94,214,194,.08);padding:2px 6px;font-size:10px;font-weight:900;white-space:nowrap}.run-evidence-item.pass_with_warnings span{color:var(--accent);background:var(--accent-dim)}.run-evidence-item.blocked span,.run-evidence-item.no_go span{color:var(--danger);background:rgba(255,138,122,.1)}.run-evidence-item p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.workspace{width:100%;max-width:1480px;margin:0 auto;padding:8px 12px 12px;flex:1 1;display:grid;grid-template-columns:144px minmax(0,1fr) minmax(260px,292px);grid-gap:12px;gap:12px;align-items:start}.workspace.reflection-hidden{grid-template-columns:144px minmax(0,1fr);max-width:1280px}.workspace.source-empty .compact-later-panel,.workspace.source-empty .guide-work-panel,.workspace.source-empty .reflection-column{display:none}.workspace.source-empty .focus-grid{grid-template-columns:minmax(0,1fr)}.flow-column,.flow-nav,.reflection-column{display:flex;flex-direction:column;gap:8px;min-width:0}.flow-nav{align-self:start;top:12px;border:1px solid var(--border-soft);border-right:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0d1520;padding:8px;width:100%}.flow-nav,.reflection-column{position:-webkit-sticky;position:sticky}.reflection-column{top:16px;max-height:calc(100vh - 92px);overflow:auto}.reflection-column.quiet{opacity:.72}.active-step-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(250,204,21,.34);border-left:4px solid #facc15;border-radius:8px;background:linear-gradient(90deg,rgba(250,204,21,.13),rgba(19,27,42,.9));padding:8px 10px}.active-step-banner div{min-width:0;display:grid;grid-gap:2px;gap:2px}.active-step-banner span{color:#facc15;font-size:11px;font-weight:800;text-transform:uppercase}.active-step-banner strong{color:var(--text);font-size:14px;overflow-wrap:anywhere}.active-step-banner em{flex-shrink:0;border:1px solid rgba(250,204,21,.42);border-radius:999px;background:rgba(250,204,21,.14);color:#facc15;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800;white-space:nowrap}.flow-step{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 9px;background:rgba(255,255,255,.02);transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.flow-step:before{content:"";position:absolute;inset:10px auto 10px 0;width:3px;border-radius:0 3px 3px 0;background:transparent}.flow-step:hover{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.045);transform:translateX(1px)}.flow-step-main{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:9px;gap:9px}.status-light{width:12px;height:12px;margin-top:0;border-radius:50%;border:2px solid #596273;background:#2c3442;box-shadow:0 0 0 2px rgba(89,98,115,.12)}.status-light.done{border-color:#2dd4bf;background:#2dd4bf;box-shadow:0 0 0 2px rgba(45,212,191,.12)}.status-light.active{border-color:#facc15;background:#facc15;box-shadow:0 0 0 0 rgba(250,204,21,.68);animation:statusPulse 1.6s cubic-bezier(.66,0,0,1) infinite}.status-light.ready{opacity:.55}.flow-step strong{display:block;margin-bottom:3px;font-size:12px}.flow-step em,.flow-step-main>div{display:block}.flow-step span{display:block;color:var(--muted);font-size:10.5px}.flow-step em{display:none}.flow-step.active{border-color:rgba(250,204,21,.42);background:rgba(250,204,21,.08);box-shadow:0 0 22px rgba(250,204,21,.08)}.flow-step.active:before{background:#facc15;box-shadow:0 0 12px rgba(250,204,21,.5)}.flow-step.done{border-color:rgba(94,214,194,.16);background:rgba(94,214,194,.045)}.flow-step.ready{opacity:.54;filter:grayscale(.4)}.flow-step.ready span:not(.status-light){display:block;color:var(--dim)}.flow-step.done em{border-color:rgba(45,212,191,.38);background:rgba(20,184,166,.16);color:#2dd4bf}.flow-step.active em{border-color:rgba(250,204,21,.42);background:rgba(250,204,21,.14);color:#facc15;box-shadow:0 0 12px rgba(250,204,21,.16)}@keyframes statusPulse{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(250,204,21,.68)}70%{transform:scale(1);box-shadow:0 0 0 8px rgba(250,204,21,0)}to{transform:scale(.95);box-shadow:0 0 0 0 rgba(250,204,21,0)}}.panel{border:1px solid rgba(255,255,255,.075);border-radius:8px;background:rgba(19,27,42,.84);padding:10px 12px}.panel-header{justify-content:space-between;gap:10px;margin-bottom:9px}.panel-header,.panel-title{display:flex;align-items:center}.panel-title{gap:8px;color:var(--primary);font-size:13px;font-weight:800;text-transform:none;letter-spacing:0}.step-number{width:9px;height:9px;display:grid;place-items:center;border-radius:50%;background:var(--primary);color:transparent;font-size:0;box-shadow:0 0 0 4px var(--primary-dim)}.btn{border:1px solid var(--border);border-radius:8px;background:var(--bg-raised);color:var(--text);padding:7px 10px;cursor:pointer;font-weight:700}.btn-primary,.btn:hover{border-color:var(--primary)}.btn-primary{background:var(--primary);color:#06100e}.btn:disabled,.btn[aria-disabled=true]{border-color:var(--border-soft);background:rgba(255,255,255,.08);color:var(--muted);cursor:not-allowed;opacity:.62}.btn.ghost{background:rgba(255,255,255,.04);color:var(--muted)}.button-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.source-fields{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));grid-gap:8px;gap:8px;margin-bottom:9px}.input-field{min-width:0;display:grid;grid-gap:5px;gap:5px}.input-field span{color:var(--muted);font-size:11px;font-weight:800}.source-import-controls{display:grid;grid-template-columns:minmax(180px,.22fr) minmax(0,1fr);grid-gap:8px;gap:8px;margin-bottom:9px}.source-import-controls>div{border:1px solid var(--border-soft);border-radius:8px;background:rgba(255,255,255,.025);display:grid;grid-gap:4px;gap:4px;padding:8px 9px;min-width:0}.source-type-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.source-type-tabs button{border:1px solid var(--border-soft);border-radius:7px;background:rgba(255,255,255,.04);color:var(--muted);cursor:pointer;font-weight:800;padding:8px 10px}.source-type-tabs button.active{border-color:rgba(94,214,194,.72);background:rgba(94,214,194,.17);color:var(--primary)}.source-import-controls span{color:var(--muted);font-size:12px;line-height:1.4}.source-import-controls strong{color:var(--text);font-size:13px}.source-import-controls select{width:100%;border:1px solid var(--border);border-radius:7px;background:var(--bg-deep);color:var(--text);padding:7px 9px;font-weight:800}.file-dropzone{display:flex;justify-content:space-between;border:1px dashed var(--border);border-radius:8px;padding:8px 10px;background:var(--bg-deep)}.file-dropzone,.file-picker{align-items:center;gap:10px;min-width:0}.file-picker{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;max-width:100%;cursor:pointer}.file-picker input{position:absolute;width:1px;height:1px;opacity:0}.file-icon{border-radius:5px;padding:4px 6px;background:var(--accent-dim);color:var(--accent);font-weight:800;font-size:11px}.file-name{min-width:0;max-width:72ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.status-tag{border:1px solid var(--border);border-radius:5px;padding:4px 7px;color:var(--dim);white-space:nowrap;font-size:11px}.status-tag.active{border-color:rgba(94,214,194,.45);color:var(--primary);background:var(--primary-dim)}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--dim);box-shadow:0 0 0 3px rgba(255,255,255,.04)}.status-dot.done{background:var(--primary);box-shadow:0 0 0 3px rgba(94,214,194,.12),0 0 12px rgba(94,214,194,.45)}.status-dot.active{background:var(--warning);box-shadow:0 0 0 3px rgba(248,191,87,.12),0 0 12px rgba(248,191,87,.35)}.status-dot.locked{background:var(--warning);box-shadow:0 0 0 3px rgba(248,191,87,.12)}.file-meta-row,.policy-line{margin-top:6px;color:var(--muted);font-size:12px}.policy-line{border-radius:5px;background:rgba(0,0,0,.18);padding:5px 7px;color:var(--dim)}.pdf-extraction-ready{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;grid-gap:8px;gap:8px;margin-top:8px;border:1px solid rgba(94,214,194,.28);border-radius:8px;background:rgba(94,214,194,.06);color:var(--muted);padding:8px 10px;font-size:12px;line-height:1.45}.pdf-extraction-ready strong{color:var(--primary);white-space:nowrap}.pdf-extraction-ready.blocked{border-color:rgba(248,191,87,.3);background:rgba(248,191,87,.07)}.pdf-extraction-ready.review{border-color:rgba(248,191,87,.34);background:rgba(248,191,87,.08)}.pdf-extraction-ready.blocked strong,.pdf-extraction-ready.review strong{color:var(--warning)}.ocr-quality-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px 12px;gap:8px 12px;align-items:center;margin-top:8px;border:1px solid var(--border-soft);border-radius:8px;background:rgba(255,255,255,.03);padding:9px 10px}.ocr-quality-card details{grid-column:1/-1}.ocr-quality-card summary{color:var(--muted);cursor:pointer;font-size:12px;font-weight:900}.ocr-quality-card>div{display:grid;grid-gap:3px;gap:3px}.ocr-quality-card .btn{justify-self:end;min-width:180px}.ocr-quality-card strong{color:var(--text);font-size:13px}.ocr-quality-card span{color:var(--muted);font-size:12px;line-height:1.45}.ocr-quality-card.review_required{border-color:rgba(248,191,87,.3);background:rgba(248,191,87,.055)}.ocr-quality-card.preview_available{border-color:rgba(94,214,194,.34);background:rgba(94,214,194,.06)}.ocr-quality-card.block_generation{border-color:rgba(255,138,122,.34);background:rgba(255,138,122,.06)}.ocr-candidate-row{display:flex!important;flex-wrap:wrap;gap:5px}.ocr-candidate-row span{border:1px solid var(--border-soft);border-radius:999px;background:rgba(0,0,0,.16);color:var(--muted);padding:3px 7px;font-size:11px}.summary-box{display:grid;grid-gap:3px;gap:3px;margin-top:8px;border-left:3px solid var(--primary);border-radius:0 8px 8px 0;padding:8px 10px;background:var(--bg-deep);color:var(--muted)}.summary-box strong{color:var(--text)}.source-action-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:8px}.source-action-row span{color:var(--muted);font-size:12px;line-height:1.4}.source-action-row .btn{min-width:160px}.bookshelf-preview-card{display:grid;grid-gap:8px;gap:8px;margin-top:8px;border:1px solid rgba(94,214,194,.28);border-radius:8px;background:rgba(94,214,194,.055);padding:8px}.bookshelf-preview-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;min-width:0}.bookshelf-preview-header em,.bookshelf-preview-header span,.bookshelf-preview-stats span{border:1px solid var(--border-soft);border-radius:999px;background:rgba(255,255,255,.035);color:var(--muted);font-size:11px;font-style:normal;font-weight:900;padding:4px 8px;white-space:nowrap}.bookshelf-preview-header span{border-color:rgba(94,214,194,.35);color:var(--primary)}.bookshelf-preview-header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.bookshelf-preview-stats{display:flex;flex-wrap:wrap;gap:6px}.bookshelf-preview-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.bookshelf-preview-actions span{color:var(--muted);font-size:12px;font-weight:800}.bookshelf-preview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px}.bookshelf-preview-list button{border:1px solid var(--border-soft);border-radius:7px;background:rgba(255,255,255,.03);color:var(--text);display:grid;grid-gap:3px;gap:3px;padding:7px 8px;cursor:pointer;text-align:left}.bookshelf-preview-list button:hover{border-color:rgba(94,214,194,.45)}.bookshelf-preview-list button.selected{position:relative;border-color:rgba(255,204,38,.9);background:linear-gradient(90deg,rgba(255,204,38,.18),rgba(255,204,38,.055));box-shadow:inset 3px 0 0 rgba(255,204,38,.95),0 0 0 1px rgba(255,204,38,.18)}.bookshelf-preview-list button.selected:hover{border-color:rgba(255,204,38,.96)}.bookshelf-preview-list em{justify-self:start;border:1px solid rgba(255,204,38,.45);border-radius:999px;padding:2px 7px;color:var(--warning);background:rgba(255,204,38,.12);font-size:10px;font-style:normal;font-weight:900}.bookshelf-preview-list strong{font-size:12px;overflow-wrap:anywhere}.bookshelf-preview-list span{color:var(--muted);font-size:11px;line-height:1.4}.focus-grid,.two-panel-grid{display:grid;grid-template-columns:minmax(330px,.36fr) minmax(0,.64fr);grid-gap:12px;gap:12px;align-items:stretch}.focus-grid.source-not-ready{grid-template-columns:minmax(260px,.32fr) minmax(0,.68fr);align-items:start}.focus-grid.source-not-ready .reading-space{min-height:0}.focus-grid.source-not-ready .reading-line-stack{max-height:220px;overflow:auto}.focus-grid.source-not-ready .reader-control-row{display:none}.source-panel.completed-quiet{opacity:.76;padding-block:10px}.source-panel.completed-quiet .file-dropzone,.source-panel.completed-quiet .file-meta-row,.source-panel.completed-quiet .ocr-quality-card,.source-panel.completed-quiet .outer-loop-status-card,.source-panel.completed-quiet .pdf-extraction-ready,.source-panel.completed-quiet .policy-line,.source-panel.completed-quiet .source-action-row,.source-panel.completed-quiet .source-fields,.source-panel.completed-quiet .source-import-controls,.source-panel.completed-quiet textarea{display:none}.source-panel.completed-quiet .panel-header{margin-bottom:0}.source-panel.completed-quiet .summary-box{margin-top:6px;padding:7px 9px}.source-panel.source-registered .policy-line,.source-panel.source-registered .source-fields,.source-panel.source-registered .source-import-controls{display:none}.source-panel.source-registered .outer-loop-status-card{margin-top:0}.source-panel.source-registered .outer-loop-status-header{margin-bottom:8px}.source-panel.source-registered .file-dropzone{padding:8px 10px}.source-panel.source-registered .file-meta-row{margin-top:6px}.source-panel.source-registered .pdf-extraction-ready{display:none}.source-panel.source-registered .summary-box{margin-top:8px;padding:8px 10px}.source-panel.source-registered .ocr-quality-card{padding:8px 10px}.source-panel.source-registered .source-action-row{align-items:center;justify-content:space-between;margin-top:8px}.source-panel.source-registered .source-action-row span{max-width:58ch}.tour-highlight{position:relative;z-index:10001;border-color:rgba(94,214,194,.72)!important;box-shadow:0 0 0 3px rgba(94,214,194,.18),0 18px 60px rgba(0,0,0,.46)}.onboarding-overlay{position:fixed;inset:0;z-index:10000;pointer-events:none}.onboarding-scrim{position:absolute;inset:0;background:rgba(3,7,18,.42);pointer-events:none}.onboarding-card{position:fixed;left:50%;right:auto;bottom:78px;width:min(720px,calc(100vw - 32px));display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:6px 14px;gap:6px 14px;border:1px solid rgba(94,214,194,.38);border-radius:8px;background:#101827;padding:14px 16px;box-shadow:0 24px 70px rgba(0,0,0,.52);pointer-events:auto;transform:translateX(-50%);z-index:10002}.onboarding-card>span{color:var(--primary);font-size:11px;font-weight:800;grid-row:1/span 2}.onboarding-card strong{color:var(--text);font-size:16px;line-height:1.25}.onboarding-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.onboarding-actions{display:flex;justify-content:flex-end;gap:8px;grid-row:1/span 2;grid-column:3}.onboarding-overlay.step-guide .onboarding-card,.onboarding-overlay.step-shelf .onboarding-card,.onboarding-overlay.step-source .onboarding-card{top:auto;left:50%;right:auto;bottom:78px;transform:translateX(-50%)}.audio-card{display:grid;grid-gap:10px;gap:10px}.guide-work-panel{border-color:rgba(94,214,194,.22)}.focus-grid.source-not-ready .guide-work-panel,.focus-grid.source-not-ready .reading-space{align-self:start}.focus-grid.source-not-ready .bilingual-audio-panel,.focus-grid.source-not-ready .embedded-discussion,.focus-grid.source-not-ready .guide-result-card{padding:10px}.focus-grid.source-not-ready .chat-history{max-height:150px}.guide-progress-strip{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));align-items:center;grid-gap:8px;gap:8px;border:1px solid var(--border-soft);border-radius:8px;padding:8px 9px;background:rgba(255,255,255,.025)}.guide-progress-strip>strong{color:var(--accent);font-size:11px;font-weight:900}.guide-progress-strip div{min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(255,255,255,.07);border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.03);color:var(--dim)}.guide-progress-strip div span{width:7px;height:7px;border-radius:999px;background:currentColor}.guide-progress-strip div em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;font-weight:800}.guide-progress-strip div.done{border-color:rgba(94,214,194,.28);background:var(--primary-dim);color:var(--primary)}.pipeline-card{display:grid;grid-gap:9px;gap:9px;border:1px solid var(--border-soft);border-radius:8px;padding:10px;background:rgba(255,255,255,.025)}.pipeline-card>strong{color:var(--primary);font-size:11px;font-weight:800;text-transform:uppercase}.pipeline-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.pipeline-steps div{min-width:0;display:grid;grid-gap:4px;gap:4px;border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:8px;background:rgba(255,255,255,.025)}.pipeline-steps div.ready{border-color:rgba(94,214,194,.35);background:var(--primary-dim)}.pipeline-steps div.warning{border-color:rgba(240,179,91,.42);background:var(--accent-dim)}.guide-result-card{display:grid;grid-gap:10px;gap:10px;border:1px solid rgba(255,255,255,.075);border-radius:8px;background:rgba(255,255,255,.025);padding:10px}.guide-result-card.ready{border-color:rgba(94,214,194,.22);background:rgba(94,214,194,.045)}.guide-result-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.guide-result-header strong{min-width:0;color:var(--text);font-size:14px;overflow-wrap:anywhere}.guide-result-header em{flex-shrink:0;border:1px solid rgba(250,204,21,.36);border-radius:999px;background:rgba(250,204,21,.12);color:#facc15;padding:3px 8px;font-size:11px;font-style:normal;font-weight:800}.guide-result-card.ready .guide-result-header em{border-color:rgba(45,212,191,.38);background:rgba(20,184,166,.16);color:#2dd4bf}.guide-script-lines{display:grid;grid-gap:7px;gap:7px;max-height:430px;overflow:auto;padding-right:4px}.guide-script-lines div{display:grid;grid-template-columns:68px minmax(0,1fr);grid-gap:8px;gap:8px;border:1px solid rgba(255,255,255,.045);border-radius:8px;background:rgba(255,255,255,.025);padding:8px 10px;opacity:0;transform:translateY(6px);animation:lineFadeIn .38s ease forwards}.guide-script-lines div:first-child{animation-delay:.04s}.guide-script-lines div:nth-child(2){animation-delay:.18s}.guide-script-lines div:nth-child(3){animation-delay:.32s}.guide-script-lines div:nth-child(4){animation-delay:.46s}.guide-script-lines div:nth-child(5){animation-delay:.6s}.guide-script-lines div:nth-child(6){animation-delay:.74s}.guide-handoff span,.guide-script-lines span{color:var(--accent);font-size:11px;font-weight:800}.guide-script-lines p{margin:0;color:var(--text)}.guide-empty{margin:0;color:var(--muted)}.guide-handoff{display:grid;grid-gap:4px;gap:4px;border-left:3px solid var(--primary);border-radius:0 8px 8px 0;background:rgba(94,214,194,.045);padding:8px 10px}.guide-handoff strong{color:var(--text);font-weight:700}.pipeline-steps span{color:var(--text);font-size:11px;font-weight:800}.pipeline-steps em{min-width:0;color:var(--muted);font-size:11px;font-style:normal;overflow-wrap:anywhere}.player-row{display:grid;grid-template-columns:auto minmax(150px,1fr) auto;align-items:center;grid-gap:12px;gap:12px;border:1px solid var(--border-soft);border-radius:8px;padding:10px;background:rgba(255,255,255,.025)}.bilingual-audio-panel{display:grid;grid-gap:10px;gap:10px;border:1px solid rgba(94,214,194,.14);border-radius:8px;padding:10px;background:rgba(94,214,194,.035)}.audio-control-row,.audio-language-row,.bilingual-audio-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.bilingual-audio-header div{display:grid;grid-gap:2px;gap:2px;min-width:0}.bilingual-audio-header strong{color:var(--primary);font-size:12px;font-weight:800;text-transform:uppercase}.audio-control-row span,.audio-language-row>span,.bilingual-audio-header span{min-width:0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.audio-control-row span{overflow-wrap:normal;white-space:nowrap}.audio-control-row{align-items:stretch;flex-wrap:wrap}.audio-control-row>div:not(.audio-language-toggle){min-width:96px;flex:1 1 96px;display:grid;grid-gap:3px;gap:3px;border:1px solid rgba(255,255,255,.045);border-radius:8px;padding:8px 10px;background:rgba(255,255,255,.025)}.audio-control-row strong{color:var(--text);font-size:12px;line-height:1.35;white-space:nowrap}.bilingual-audio-header em{flex-shrink:0;border:1px solid rgba(240,179,91,.36);border-radius:999px;padding:3px 8px;background:var(--accent-dim);color:var(--accent);font-size:11px;font-style:normal;font-weight:800}.live-status{display:inline-flex;flex-shrink:0;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:5px 9px;background:rgba(0,0,0,.18);color:var(--muted)}.live-status span{width:8px;height:8px;border-radius:999px;background:currentColor}.live-status strong{color:currentColor;font-size:11px;font-weight:800;white-space:nowrap}.live-status.locked{color:#778397}.live-status.pending{border-color:rgba(240,179,91,.34);color:var(--accent)}.live-status.busy{border-color:rgba(94,214,194,.34);color:var(--primary)}.live-status.busy span{animation:livePulse 1s ease-in-out infinite}.live-status.ready{border-color:rgba(94,214,194,.45);background:rgba(94,214,194,.1);color:var(--primary)}.live-status.error{border-color:rgba(248,113,113,.42);background:rgba(248,113,113,.08);color:#fca5a5}.audio-language-toggle{display:inline-flex;flex:0 0 96px;align-self:stretch;min-width:96px;max-width:96px;min-height:36px;border:1px solid rgba(255,255,255,.08);border-radius:8px;overflow:hidden;background:rgba(8,11,16,.78)}.audio-language-toggle button{flex:1 1;min-width:0;border:0;background:transparent;color:var(--muted);padding:0;cursor:pointer;font-size:12px;font-weight:800;line-height:1}.audio-language-toggle button.active{background:var(--primary);color:#06100e}.audio-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.audio-facts-grid div{min-width:0;display:grid;grid-gap:3px;gap:3px;border:1px solid rgba(255,255,255,.045);border-radius:6px;padding:8px;background:rgba(255,255,255,.025)}.audio-facts-grid span{color:var(--accent);font-size:10px;font-weight:800;text-transform:uppercase}.audio-facts-grid strong{min-width:0;color:var(--text);font-size:11px;overflow-wrap:anywhere}.local-audio-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;grid-gap:10px;gap:10px;border:1px solid rgba(255,255,255,.045);border-radius:8px;padding:8px;background:rgba(255,255,255,.025)}.local-audio-actions span{grid-column:1/-1;min-width:0;color:var(--muted);font-size:11px;line-height:1.45;overflow-wrap:normal}@media (max-width:760px){.local-audio-actions{grid-template-columns:1fr}}.player-row.locked{grid-template-columns:auto minmax(150px,1fr);border-color:rgba(240,179,91,.3);background:rgba(0,0,0,.18)}.player-row.locked .waveform{display:none}@media (max-width:760px){.player-row,.player-row.locked{grid-template-columns:1fr}.play-button,.play-button:disabled{justify-self:start}.waveform{justify-content:flex-start}}.player-row.ready{border-color:rgba(94,214,194,.32);background:rgba(94,214,194,.07)}.script-preview-box{display:grid;grid-gap:5px;gap:5px;border-left:3px solid var(--primary);border-radius:0 8px 8px 0;padding:9px 10px;background:var(--bg-deep)}.script-preview-box strong{color:var(--primary);font-size:11px;font-weight:800;text-transform:uppercase}.script-preview-box p{margin:0;color:var(--text);font-size:12px}.script-preview-box span{color:var(--muted);font-size:11px;overflow-wrap:anywhere}.play-button{width:56px;min-width:56px;border:0;border-radius:999px;padding:7px 0;background:var(--primary);color:#06100e;cursor:pointer;font-weight:800;white-space:nowrap}.play-button:disabled{min-width:76px;width:auto;padding-inline:10px;background:rgba(240,179,91,.22);color:var(--accent)}.waveform{height:24px;display:flex;align-items:center;gap:4px;min-width:66px;justify-content:flex-end}.waveform span{width:3px;height:35%;border-radius:2px;background:var(--border)}.waveform.active span{background:var(--primary);animation:pulse 1.2s ease-in-out infinite}.waveform.active span:nth-child(2n){animation-delay:.15s}.waveform.active span:nth-child(3n){animation-delay:.3s}@keyframes pulse{0%,to{height:25%}50%{height:95%}}@keyframes livePulse{0%,to{opacity:.45;transform:scale(.92)}50%{opacity:1;transform:scale(1.12)}}.timer{color:var(--muted);font-size:11px}.audio-seek-area{min-width:0;display:grid;grid-gap:7px;gap:7px}.audio-time-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.audio-time-row span{min-width:0;color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}.audio-time-row strong{flex-shrink:0;color:var(--text);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.audio-seek-area input[type=range]{width:100%;accent-color:var(--primary);cursor:pointer}.audio-seek-area input[type=range]:disabled{cursor:not-allowed;opacity:.45}.dialogue-preview{display:grid;grid-gap:8px;gap:8px;border:1px solid var(--border-soft);border-radius:8px;padding:10px;background:rgba(255,255,255,.025);opacity:.65}.dialogue-preview.ready{opacity:1}.dialogue-preview div{display:grid;grid-template-columns:68px minmax(0,1fr);grid-gap:8px;gap:8px}.dialogue-preview strong{color:var(--accent)}.dialogue-preview span{color:var(--text)}.next-step{border:1px dashed rgba(94,214,194,.38);border-radius:8px;padding:8px 10px;color:var(--primary);background:var(--primary-dim);font-weight:700}.safety-fallback-box{border:1px solid rgba(240,179,91,.38);border-radius:8px;background:var(--accent-dim);color:var(--accent);padding:9px 10px;font-size:12px;font-weight:800}.embedded-discussion{display:grid;grid-gap:10px;gap:10px;border:1px solid rgba(94,214,194,.12);border-radius:8px;padding:10px;background:rgba(255,255,255,.025)}.embedded-discussion-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.embedded-discussion-header strong{color:var(--primary);font-size:13px}.embedded-discussion-header span{color:var(--muted);font-size:12px}.compact-later-panel{opacity:.82}.later-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.later-step-grid div{min-width:0;display:grid;grid-gap:4px;gap:4px;border:1px solid var(--border-soft);border-radius:8px;background:rgba(255,255,255,.025);padding:10px 12px}.later-step-grid div.done{border-color:rgba(94,214,194,.3);background:var(--primary-dim)}.later-step-grid span{color:var(--accent);font-size:11px;font-weight:900}.later-step-grid strong{color:var(--muted);font-size:12px}.later-step-grid div.done strong{color:var(--primary)}.reading-space{display:flex;flex-direction:column;gap:12px;min-height:520px}.reading-space-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.reading-space-header p{margin:4px 0 0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.reading-space-header span{flex-shrink:0;border:1px solid rgba(94,214,194,.3);border-radius:999px;padding:4px 9px;color:var(--primary);background:var(--primary-dim);font-size:11px;font-weight:800}.reader-control-row{display:grid;grid-template-columns:minmax(120px,1fr) auto auto auto;grid-gap:8px;gap:8px;align-items:center}.reader-control-row div{display:flex;align-items:baseline;gap:8px;min-width:0}.reader-control-row div span{color:var(--muted);font-size:11px;font-weight:900}.reader-control-row div strong{color:var(--primary);font-size:12px;font-weight:900}.reader-control-row button{border:1px solid var(--border-soft);border-radius:6px;background:rgba(255,255,255,.03);color:var(--text);cursor:pointer;font-size:12px;font-weight:900;padding:6px 9px}.reader-control-row button:disabled{cursor:not-allowed;opacity:.38}.reader-control-row button:not(:disabled):hover{border-color:rgba(94,214,194,.45)}.reading-line-stack{display:grid;grid-gap:9px;gap:9px}.reading-line-stack strong,.reading-next-box span{color:var(--accent);font-size:12px;font-weight:900}.reading-line-stack p{margin:0;display:grid;grid-template-columns:10px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;border-left:3px solid rgba(94,214,194,.34);border-radius:0 8px 8px 0;padding:9px 11px;background:rgba(255,255,255,.025);color:var(--text);line-height:1.7;overflow-wrap:anywhere;opacity:0;transform:translateY(6px);animation:lineFadeIn .38s ease forwards}.reading-line-stack p span{width:7px;height:7px;margin-top:9px;border-radius:50%;background:var(--primary);color:transparent;font-size:0;font-weight:900;line-height:1;box-shadow:0 0 0 4px var(--primary-dim)}.reading-line-stack p.done{border-left-color:rgba(94,214,194,.2);color:rgba(232,238,247,.72)}.reading-line-stack p.active{border-left-color:var(--accent);background:rgba(255,190,92,.08)}.reading-line-stack p.active span{background:var(--accent);box-shadow:0 0 0 4px var(--accent-dim)}.reading-line-stack p:first-of-type{animation-delay:.04s}.reading-line-stack p:nth-of-type(2){animation-delay:.14s}.reading-line-stack p:nth-of-type(3){animation-delay:.24s}.reading-line-stack p:nth-of-type(4){animation-delay:.34s}.reading-line-stack p:nth-of-type(5){animation-delay:.44s}.reading-line-stack p:nth-of-type(6){animation-delay:.54s}.reading-line-stack p:nth-of-type(7){animation-delay:.64s}.reading-next-box{margin-top:4px;display:grid;grid-gap:7px;gap:7px;border:1px dashed rgba(240,179,91,.36);border-radius:8px;padding:10px;background:rgba(240,179,91,.055)}.reading-next-box strong{color:var(--text);line-height:1.5}@keyframes lineFadeIn{to{opacity:1;transform:translateY(0)}}.discussion-panel{min-height:360px}.chat-history{min-height:160px;max-height:330px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding-right:6px;margin-bottom:12px}.chat-bubble{max-width:92%;border-radius:8px;padding:10px 12px;white-space:pre-wrap;line-height:1.48}.chat-bubble.ai{align-self:flex-start;border:1px solid rgba(94,214,194,.24);background:var(--primary-dim)}.chat-bubble.user{align-self:flex-end;border:1px solid var(--border);background:var(--bg-raised)}.chat-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;grid-gap:10px;gap:10px}input[type=text],select,textarea{min-width:0;width:100%;border:1px solid var(--border);border-radius:8px;background:var(--bg-deep);color:var(--text);padding:10px 12px;outline:0}textarea{min-height:96px;resize:vertical;margin-top:10px;font:inherit}.chat-input-row textarea{min-height:132px;margin-top:0;line-height:1.55}.chat-input-row .btn{align-self:stretch;min-width:104px}input[type=text]:focus,select:focus,textarea:focus{border-color:var(--primary)}.chat-bubble.locked{border-color:rgba(250,204,21,.34);background:rgba(250,204,21,.1);color:#facc15}.chat-input-row input:disabled,.chat-input-row textarea:disabled{color:var(--dim);background:rgba(8,11,16,.72)}.feedback-controls{display:grid;grid-gap:10px;gap:10px}.select-field{display:grid;grid-gap:6px;gap:6px}.feedback-controls p,.select-field span{margin:0;color:var(--muted);font-size:12px}.select-field span{font-weight:800}.feedback-preset-preview{display:grid;grid-gap:4px;gap:4px;border:1px solid rgba(94,214,194,.22);border-left:3px solid var(--primary);border-radius:0 8px 8px 0;background:var(--primary-dim);padding:9px 10px}.feedback-preset-preview strong{color:var(--primary)}.feedback-preset-preview span{color:var(--text);font-size:12px}.memory-toast{display:grid;grid-gap:3px;gap:3px;margin-top:8px;border-radius:6px;padding:8px 10px;color:var(--primary);background:var(--primary-dim)}.memory-toast strong{color:var(--primary);font-size:13px}.memory-toast span{color:var(--text);font-size:12px;line-height:1.45}.feedback-archive-card{display:grid;grid-gap:4px;gap:4px;margin-top:8px;border:1px solid rgba(148,163,184,.2);border-left:3px solid rgba(148,163,184,.7);border-radius:0 8px 8px 0;background:rgba(15,23,42,.72);padding:9px 10px}.feedback-archive-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.feedback-archive-actions{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.feedback-star-button{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid rgba(148,163,184,.26);border-radius:8px;background:rgba(15,23,42,.86);color:var(--muted);font-size:20px;font-weight:900;line-height:1;cursor:pointer}.feedback-star-button.marked{border-color:rgba(251,191,36,.62);background:rgba(251,191,36,.11);color:var(--warning)}.feedback-star-button:disabled{cursor:not-allowed;opacity:.55}.feedback-archive-card span{color:var(--muted);font-size:12px;font-weight:800}.feedback-archive-card strong{color:var(--text)}.feedback-archive-card em{color:var(--muted);font-size:12px;font-style:normal;overflow-wrap:anywhere}.clean-loop-status-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.clean-loop-status-list span{border:1px solid rgba(94,215,196,.24);border-radius:999px;background:rgba(94,215,196,.08);color:var(--primary);padding:4px 8px;font-size:11px;line-height:1.2}.feedback-archive-card.syncing{border-left-color:#f5c15f;background:rgba(245,193,95,.1)}.feedback-archive-card.synced{border-left-color:var(--primary);background:var(--primary-dim)}.feedback-archive-card.needs_setup,.feedback-archive-card.ready{border-left-color:#f5c15f}.feedback-archive-card.failed{border-left-color:#fb7185;background:rgba(251,113,133,.1)}.reflection-panel{height:100%;display:flex;flex-direction:column;gap:12px}.progress-card{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:8px;gap:8px}.progress-card div{display:grid;grid-gap:4px;gap:4px;border:1px solid rgba(94,214,194,.22);border-radius:8px;background:var(--primary-dim);padding:10px 12px}.insight-box span,.progress-card span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.progress-card strong{color:var(--primary);font-size:15px}.reader-steps{display:grid;grid-gap:8px;gap:8px}.reader-step{display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;grid-gap:9px;gap:9px;border:1px solid var(--border-soft);border-radius:8px;background:var(--bg-deep);padding:8px 10px;color:var(--muted)}.reader-step span{width:9px;height:9px;display:grid;place-items:center;border-radius:50%;background:var(--bg-raised);color:transparent;font-size:0;font-weight:800;box-shadow:0 0 0 4px rgba(255,255,255,.035)}.reader-step strong{min-width:0;color:inherit}.reader-step.done{border-color:rgba(94,214,194,.35);background:var(--primary-dim);color:var(--text)}.reader-step.done span{background:var(--primary);color:#06100e}.insight-box{display:grid;grid-gap:10px;gap:10px;border:1px solid var(--border);border-radius:8px;background:var(--bg-raised);padding:12px}.insight-box>strong{color:var(--accent);font-size:13px}.insight-box div{display:grid;grid-gap:4px;gap:4px}.insight-box p{margin:0;color:var(--text)}.note-list{display:grid;grid-gap:10px;gap:10px}.compact-note-list{gap:8px}.note-item{display:grid;grid-gap:5px;gap:5px}.note-item strong{color:var(--accent);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.note-item span{min-height:40px;display:block;border:1px solid var(--border-soft);border-radius:6px;padding:9px 10px;background:var(--bg-raised);color:var(--text)}.compact-note-list .note-item span{min-height:0;color:var(--muted)}.detail-note{border-top:1px solid var(--border-soft);padding-top:10px;color:var(--dim);font-size:12px}.episode-next-loop-card,.outer-loop-status-card{border:1px solid var(--border-soft);border-radius:8px;background:rgba(255,255,255,.025);padding:12px}.outer-loop-status-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.episode-next-loop-card strong,.outer-loop-status-header strong{display:block;color:var(--text)}.episode-next-loop-card em,.episode-next-loop-card span,.outer-loop-status-header span{color:var(--muted);font-size:12px;font-style:normal}.outer-loop-status-header em{color:var(--primary);font-size:12px;font-style:normal;white-space:nowrap}.outer-loop-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.outer-loop-steps div{display:flex;align-items:center;gap:7px;min-width:0;border:1px solid var(--border-soft);border-radius:7px;padding:8px;color:var(--muted);background:var(--bg-raised)}.outer-loop-steps div span{width:9px;height:9px;flex:0 0 9px;border-radius:999px;background:var(--dim)}.outer-loop-steps div strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.outer-loop-steps .done{border-color:rgba(45,212,191,.28);color:var(--text)}.outer-loop-steps .done span{background:var(--primary);box-shadow:0 0 12px rgba(45,212,191,.55)}.outer-loop-steps .active{border-color:rgba(245,184,90,.45);color:var(--text)}.outer-loop-steps .active span{background:var(--warning);box-shadow:0 0 12px rgba(245,184,90,.55)}.episode-next-loop-card{display:grid;grid-gap:6px;gap:6px}.episode-next-loop-card.compact{margin-top:10px}.cloud-footer{height:44px;flex-shrink:0;border-top:1px solid var(--border);justify-content:flex-end;position:relative;padding:0 22px}.cloud-badge,.cloud-footer{display:flex;align-items:center}.cloud-badge{gap:8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-panel);color:var(--muted);padding:7px 12px;cursor:pointer}.cloud-badge span{width:8px;height:8px;border-radius:50%;background:var(--primary-strong);box-shadow:0 0 10px var(--primary-strong)}.cloud-proof{position:absolute;right:22px;bottom:38px;width:min(720px,calc(100vw - 44px));border:1px solid var(--border);border-radius:8px;background:var(--bg-raised);box-shadow:0 18px 40px rgba(0,0,0,.45);padding:12px 14px;z-index:20}.cloud-proof strong{display:block;margin-bottom:8px}.cloud-proof>div{display:flex;justify-content:space-between;gap:10px;margin-top:6px}.cloud-proof>div>span{color:var(--muted)}.cloud-proof>div>em{color:var(--primary);font-style:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.error-box{border:1px solid var(--danger);border-radius:8px;padding:10px 12px;color:var(--danger);background:rgba(255,138,122,.08)}@media (max-width:1600px){.topbar{padding:0 14px}.disclaimer-badge{max-width:190px}.ebook-shelf,.workspace{max-width:1320px}.workspace{grid-template-columns:132px minmax(0,1fr) minmax(238px,260px);gap:10px}.workspace.reflection-hidden{grid-template-columns:132px minmax(0,1fr);max-width:1180px}.flow-step{padding:7px 8px}.flow-step-main{gap:7px}.source-import-controls{grid-template-columns:minmax(170px,.2fr) minmax(0,1fr)}}@media (max-width:1280px){.ebook-shelf-panel{grid-template-columns:1fr}.ebook-shelf-groups{grid-template-columns:repeat(2,minmax(220px,1fr))}.workspace{grid-template-columns:124px minmax(0,1fr) minmax(220px,248px);gap:12px}.workspace.reflection-hidden{grid-template-columns:124px minmax(0,1fr);max-width:1120px}.focus-grid,.focus-grid.source-not-ready,.two-panel-grid{grid-template-columns:1fr}.reading-space{min-height:360px}.reflection-column{position:-webkit-sticky;position:sticky;grid-column:auto;max-height:calc(100vh - 92px);overflow:auto}}@media (max-width:900px){.workspace{grid-template-columns:1fr}.flow-nav{position:static;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-self:stretch;border-right-color:var(--border-soft)}.reflection-column{position:static;max-height:none;overflow:visible}.reflection-panel{height:auto}}@media (max-width:760px){.ebook-shelf,.topbar,.workspace{padding-left:14px;padding-right:14px}.topbar{height:auto;min-height:64px;align-items:flex-start;flex-direction:column;padding-top:12px;padding-bottom:12px}.ebook-shelf-toggle{grid-template-columns:auto auto auto 1fr;align-items:start}.ebook-shelf-boundary-pill,.ebook-shelf-toggle p{grid-column:1/-1}.ebook-shelf-toggle-label{justify-self:start}.ebook-shelf-groups{grid-template-columns:1fr}.ebook-shelf-group{grid-template-rows:auto auto}.bookshelf-preview-header,.bookshelf-preview-list,.outer-loop-steps,.source-fields,.source-import-controls{grid-template-columns:1fr}.control-dock{width:100%;flex-wrap:wrap}.topbar-module{border-right:0}.model-mode-toggle{width:100%;justify-content:space-between}.disclaimer-badge{text-align:left}.audio-control-row,.chat-input-row,.flow-nav,.focus-grid,.guide-progress-strip,.later-step-grid,.reader-control-row,.run-evidence-grid,.source-fields,.two-panel-grid{grid-template-columns:1fr}.onboarding-card,.onboarding-overlay.step-guide .onboarding-card,.onboarding-overlay.step-shelf .onboarding-card,.onboarding-overlay.step-source .onboarding-card{top:auto;right:16px;bottom:16px;left:16px;width:auto;transform:none}.flow-nav{padding:10px}.active-step-banner,.flow-step{align-items:flex-start}.active-step-banner{flex-direction:column}.active-step-banner em{white-space:normal}}