@import"https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&family=Indie+Flower&family=Patrick+Hand&display=swap";.lesson-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#000000a3}.lesson-dialog{width:min(100%,860px);max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--bg-1);color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px #0006}.lesson-header{position:sticky;top:0;z-index:12;display:flex;justify-content:space-between;align-items:center;padding:12px 22px;background:var(--bg-1);border-bottom:1px solid var(--line);font-size:13px;font-weight:600}.lesson-header-actions,.lesson-title-row,.lesson-player-actions,.lesson-test-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lesson-header button,.lesson-content button,.lesson-content select,.lesson-more summary{min-height:40px}.lesson-title-row{justify-content:space-between;align-items:flex-start}.lesson-title-row h1{flex:1;min-width:200px}.lesson-content{max-width:740px;margin:0 auto;padding:28px 30px 40px;font-size:16px;line-height:1.65;overflow-wrap:anywhere}.lesson-content h1{font-size:clamp(23px,3vw,30px);line-height:1.25;margin:0 0 12px;font-weight:750;letter-spacing:-.025em}.lesson-content h2{font-size:19px;line-height:1.35;margin:0 0 12px;font-weight:700}.lesson-content p{margin:0 0 12px}.lesson-content ul,.lesson-content ol{padding-left:22px;margin:10px 0}.lesson-content li{margin:7px 0}.lesson-content li p{margin:0}.lesson-content strong{color:var(--ink);font-weight:750}.lesson-orientation{color:var(--ink-2);font-size:17px}.lesson-block{margin:28px 0;border-radius:8px}.lesson-content table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px;line-height:1.5;table-layout:fixed}.lesson-content th{text-align:left;font-size:12px;color:var(--ink-2);background:var(--bg-2)}.lesson-content td,.lesson-content th{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.lesson-memory{margin:28px 0;padding:18px 20px;border-left:3px solid var(--accent);background:var(--bg-2);border-radius:0 10px 10px 0}.lesson-memory h2{font-size:13px;color:var(--ink-3)}.lesson-cue{font-size:20px;font-weight:750;line-height:1.4}.lesson-muted{font-size:13px;color:var(--ink-3)}.lesson-quick-test{margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}.lesson-test-item{margin:18px 0;padding-bottom:18px;border-bottom:1px solid var(--line)}.lesson-question-number{color:var(--ink-3);font-variant-numeric:tabular-nums}.lesson-test-actions{gap:6px}.lesson-answer{margin-top:14px;padding:12px 14px;background:var(--bg-2);border-radius:8px}.lesson-back{margin:6px 0 20px}.lesson-depth{margin-top:20px}.lesson-depth details,.lesson-legacy details{border-top:1px solid var(--line);padding:0}.lesson-content summary{padding:15px 3px;font-size:15px;font-weight:600;cursor:pointer;min-height:44px}.lesson-depth-body,.lesson-legacy details>:not(summary){padding:0 4px 16px}.lesson-speaking{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:7px;border-radius:6px}.lesson-player{margin:18px 0;padding:12px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;font-size:13px}.lesson-player-actions{margin-top:8px}.lesson-player select{background:var(--bg-1);color:var(--ink);border:1px solid var(--line);border-radius:6px}.lesson-more{position:relative}.lesson-more>summary{padding:8px;cursor:pointer}.lesson-more-menu{position:absolute;right:0;top:100%;width:250px;display:grid;gap:12px;padding:16px;background:var(--bg-1);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 32px #0003}.lesson-more-menu select{margin-top:6px;width:100%}.lesson-more-menu small{color:var(--ink-3);font-weight:400}.lesson-loading,.lesson-error{padding:16px;background:var(--bg-2);border-radius:10px;font-size:14px}.lesson-dialog :focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:600px){.lesson-overlay{padding:8px}.lesson-dialog{max-height:96dvh;border-radius:12px}.lesson-header{padding:10px 14px}.lesson-content{padding:22px 18px 30px;font-size:15px}.lesson-content table{font-size:12px}.lesson-content td,.lesson-content th{padding:9px 6px}.lesson-cue{font-size:18px}}.lesson-audio-ready{background:#16834a!important;border-color:#16834a!important;color:#fff!important}.masterclass-stage{margin:28px 0;padding-top:18px;border-top:1px solid var(--line)}.masterclass-stage-header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.masterclass-stage-header h2{margin:0;font-size:18px}.stage-pill{font-size:11px;font-weight:700;padding:2px 8px;border-radius:12px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);letter-spacing:.05em}.masterclass-orientation{font-size:16px;color:var(--ink-2);line-height:1.6;margin-bottom:24px;padding:12px 16px;background:var(--bg-2);border-left:3px solid var(--accent);border-radius:0 8px 8px 0}.model-badge{font-size:12px;font-weight:600;padding:3px 8px;border-radius:6px;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-2);margin-left:auto}.bricks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:16px 0}.brick-card{padding:14px 16px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px}.brick-term{font-weight:700;font-size:15px;color:var(--ink);margin-bottom:6px}.brick-def{font-size:14px;color:var(--ink-2);line-height:1.5;margin-bottom:8px}.brick-role{font-size:13px;color:var(--ink-3);border-top:1px dashed var(--line);padding-top:6px;margin-top:6px}.architecture-summary{font-size:15px;line-height:1.6;color:var(--ink);margin-bottom:14px}.lesson-example{margin:16px 0 4px;padding:14px 16px;background:color-mix(in srgb,var(--accent) 7%,var(--bg-2));border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:0 10px 10px 0;font-size:15px;line-height:1.6}.lesson-example-label{font-size:12px;font-weight:700;letter-spacing:.03em;color:var(--accent);margin-bottom:4px}.lesson-example p:last-child{margin-bottom:0}.lesson-framework{border-radius:8px}.masterclass-table-wrap{overflow-x:auto;margin:16px 0;border:1px solid var(--line);border-radius:8px}.masterclass-table{width:100%;border-collapse:collapse;font-size:13px}.masterclass-table th{background:var(--bg-2);color:var(--ink);font-weight:600;padding:10px 12px;text-align:left;border-bottom:2px solid var(--line);white-space:nowrap}.masterclass-table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.nuances-list{display:grid;gap:14px;margin:16px 0}.nuance-card{padding:16px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px}.nuance-title{font-weight:700;font-size:15px;color:var(--ink);margin-bottom:6px}.nuance-content{font-size:14px;line-height:1.6;color:var(--ink-2)}.nuance-trap{margin-top:10px;padding:8px 12px;background:#ea580c1a;border-left:3px solid #ea580c;border-radius:0 6px 6px 0;font-size:13px;color:#ea580c;display:flex;gap:8px;align-items:flex-start}.quick-test-list{display:grid;gap:16px;margin:16px 0}.quick-test-item{padding:16px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px}.quick-test-q{font-size:15px;font-weight:600;color:var(--ink);line-height:1.5;margin-bottom:12px}.q-number{color:var(--accent);margin-right:4px}.quick-test-actions{margin-top:8px}.quick-test-ans{margin-top:12px;padding:12px 14px;background:var(--bg-1);border:1px solid var(--line);border-radius:8px;font-size:14px;line-height:1.5}.quick-test-rule{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line);font-size:13px;color:var(--ink-3)}.atlas-upload[hidden]{display:none}.atlas-upload{border:1px solid var(--line);border-radius:12px;padding:20px;margin:18px 0;background:var(--bg-1)}.atlas-upload header{display:flex;justify-content:space-between;align-items:start;gap:16px}.atlas-upload h2{margin-top:0}.atlas-upload p{line-height:1.6}.atlas-upload details{margin:12px 0}.atlas-upload summary{cursor:pointer;padding:8px 0}.atlas-upload-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px}.atlas-upload-preview{width:100%;max-height:70dvh;object-fit:contain;background:#fff}.atlas-upload label:not(.atlas-check){display:flex;flex-direction:column;gap:6px;margin:14px 0}.atlas-upload textarea{font:inherit;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;min-height:95px;padding:10px;resize:vertical}.atlas-upload input,.atlas-upload select{min-width:0;max-width:100%;box-sizing:border-box}.atlas-check{display:flex;align-items:center;gap:8px;margin:16px 0}.atlas-phrase{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:10px}.atlas-phrase a,.atlas-upload a{color:var(--accent)}.atlas-app .atlas-upload button.atlas-save-image{background:var(--accent);color:var(--bg)}@media (max-width:760px){.atlas-upload{padding:12px}.atlas-upload-layout{grid-template-columns:1fr}.atlas-upload header{flex-wrap:wrap}.atlas-upload-preview{max-height:45dvh}}.atlas-app{color:var(--ink);max-width:1500px;margin:auto;font-size:14px;min-width:0}.atlas-app button:not([class*=scratch-]),.atlas-app select,.atlas-app input{font:inherit;color:var(--ink);border:1px solid var(--line);background:var(--bg-1);border-radius:8px;padding:9px 12px;min-height:40px}.atlas-app button{cursor:pointer}.atlas-app button:disabled{opacity:.5;cursor:default}.atlas-app button:hover:not(:disabled){border-color:var(--accent)}.atlas-app :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.atlas-heading,.atlas-viewer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}.atlas-heading h1{font-size:48px;line-height:1.1;margin:8px 0;letter-spacing:-2px}.atlas-heading p{color:var(--ink-3);margin:12px 0}.atlas-eyebrow{text-transform:uppercase;letter-spacing:1.5px;font-size:10px;color:var(--accent);font-weight:700}.atlas-scope,.atlas-guidance{padding:14px 18px;border-left:3px solid var(--accent);background:var(--bg-2);line-height:1.6}.atlas-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:24px 0 12px}.atlas-filters label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--ink-3);min-width:0}.atlas-search{flex:1;min-width:210px!important}.atlas-filters select{max-width:260px}.atlas-small{font-size:11px;color:var(--ink-3);line-height:1.6}.atlas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;padding:12px 0 35px}.atlas-card{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--bg-1);display:flex;flex-direction:column}.atlas-card .atlas-card-open{padding:0;border:0;border-radius:0;text-align:left;width:100%;flex:1;display:flex;flex-direction:column}.atlas-thumbnail{width:100%;height:205px;background:var(--bg-2);padding:12px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.atlas-thumbnail img{width:100%;height:100%;object-fit:contain}.atlas-thumb-empty{display:flex;align-items:center;justify-content:center;color:var(--ink-3);font-size:11px;background:var(--bg-2);text-align:center;padding:10px}.atlas-thumb-empty:after{content:"Visual preview unavailable"}.atlas-card-copy{padding:17px}.atlas-card h3{font-size:17px;margin:10px 0;line-height:1.4}.atlas-card p,.atlas-card-copy>span:last-child{font-size:11px;color:var(--ink-3)}.atlas-card-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line);font-size:10px;color:var(--ink-3)}.atlas-card-footer button{font-size:11px;min-height:34px;padding:6px 8px}.atlas-suggestions{border-bottom:1px solid var(--line);padding:12px 0}.atlas-suggestions h2{font-size:17px}.atlas-suggestion-list{display:flex;gap:10px;flex-wrap:wrap}.atlas-suggestion-list button{text-align:left;flex:1;min-width:220px}.atlas-suggestion-list span{display:block;font-size:11px;color:var(--ink-3);margin-top:6px}.atlas-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;background:var(--bg);overflow:auto;padding:28px;box-sizing:border-box;overscroll-behavior:contain}.atlas-viewer-head h2{font-size:25px;line-height:1.35;margin:8px 0}.atlas-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.atlas-tools>span{margin-right:auto;font-size:12px}.atlas-tools label{display:flex;align-items:center;gap:8px;font-size:12px}.atlas-tools .atlas-primary{background:var(--accent);color:var(--bg-1)}.atlas-sheet-section{min-width:0}.atlas-sheet-scroll{width:100%;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--bg-2);box-sizing:border-box;max-height:78dvh;overscroll-behavior:contain}.atlas-ink{max-width:none!important;padding:0!important;margin:0!important;background:#fff}.atlas-ink>img{display:block;max-width:none!important;height:auto;pointer-events:none}.atlas-blank{background:#fff}.atlas-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px}.atlas-reference{min-width:0}.atlas-reference img{width:100%;height:auto}.atlas-reference h3{font-size:13px}.atlas-source{margin:20px 0;padding:15px;border:1px solid var(--line);border-radius:8px;line-height:1.6}.atlas-source summary{cursor:pointer;font-weight:600}.atlas-history{border-top:1px solid var(--line);padding:12px 0}.atlas-history h3{font-size:15px}.atlas-history button{margin:5px}.atlas-versions{display:flex;flex-wrap:wrap;gap:5px;max-height:200px;overflow:auto}.atlas-warning{color:var(--warn)!important;line-height:1.6}.atlas-viewer{padding-left:54px}.atlas-ink>.scratch-toolhold{position:fixed;top:50dvh;left:var(--atlas-rail-left,4px);z-index:60}.atlas-ink>.scratch-toolhold>.scratch-tools{left:0;max-height:calc(100dvh - 32px);box-sizing:border-box}.atlas-versions details{flex-basis:100%}.atlas-ink{--pen-1:#1b1a17;--pen-2:#1e56a0;--pen-3:#a32222;--pen-4:#267047}@media (max-width:760px){.atlas-overlay{padding:16px}.atlas-heading h1{font-size:38px}.atlas-filters select{max-width:100%}.atlas-filters label{flex:1 1 140px}.atlas-compare{grid-template-columns:1fr}.atlas-viewer-head{flex-wrap:wrap}.atlas-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}.mains-review-panel{margin:20px 0;padding:20px;border:1px solid #956a4f;border-radius:12px;background:#202127;color:#f7f3ec}.mains-review-header,.mains-review-teacher-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.mains-review-header h2{margin:3px 0 0}.mains-review-header small,.mains-review-note{color:#d6c5b6}.mains-review-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.mains-review-columns>div{min-width:0}.mains-review-ink-scroll{max-height:430px;overflow:auto;background:#fffefb;border-radius:8px}.mains-review-ink-scroll svg{display:block}.mains-review-photo{display:block;max-width:100%;max-height:430px;object-fit:contain;background:#fff}.mains-review-panel textarea{display:block;width:100%;box-sizing:border-box;margin:8px 0;background:#fffefa;color:#242024;border-radius:8px;padding:12px;font:inherit}.mains-review-panel label{display:block;margin:12px 0}.mains-review-consent{line-height:1.5;font-size:13px}.mains-review-consent input{margin-right:8px}.mains-review-confirmed,.mains-review-marked{white-space:pre-wrap;line-height:1.7;padding:12px;border-radius:8px;background:#f8f5ed;color:#272524;margin:10px 0}.mains-review-marked mark{background:#ffe187;color:#151515;border-bottom:2px solid #b45336}.mains-review-marked sup{margin-left:2px}.mains-review-teacher{border-top:1px solid #665951;margin-top:20px;padding-top:12px}.mains-review-summary{margin:12px 0;padding:12px;border-left:4px solid #d98061;background:#29292e}.mains-review-summary p{margin:5px 0}.mains-review-issue{margin:10px 0;padding:12px;border-radius:8px;background:#302a29}.mains-review-issue p{margin:5px 0}.mains-review-issue small{text-transform:capitalize;color:#f0b69c}.mains-review-judgement{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:9px}.mains-review-stale{padding:10px;border-radius:8px;color:#2d2319;background:#ffdb94}.mains-review-source-note{color:#dbcabc;font-size:13px}@media (max-width: 800px){.mains-review-columns{grid-template-columns:1fr}.mains-review-panel{padding:12px}}.mains-home,.mains-session{max-width:1160px;margin:0 auto;color:var(--ink-1)}.mains-loading{min-height:55vh;display:grid;place-items:center;color:var(--ink-3);font-size:14px}.mains-help-bar{display:flex;justify-content:flex-end;margin:0 0 10px}.mains-help-trigger{min-height:44px;display:inline-flex;align-items:center;gap:6px;color:var(--ink-2)}.mains-help-trigger span{font-size:18px;line-height:1}.mains-help-dialog{width:min(480px,calc(100vw - 24px));max-height:min(640px,calc(100dvh - 32px));overflow-y:auto;padding:22px;border:1px solid var(--border);border-radius:16px;background:var(--bg-1);color:var(--ink-1);box-shadow:var(--shadow-sm)}.mains-help-dialog::backdrop{background:#0009}.mains-help-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mains-help-head h2{margin:4px 0 0;font-family:"Source Serif 4",Georgia,serif;font-size:25px;line-height:1.2}.mains-help-head .btn{min-height:44px}.mains-help-dialog p{line-height:1.55}.mains-help-reassurance{color:var(--ink-2)}.mains-help-now{padding:12px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:color-mix(in oklab,var(--accent) 8%,var(--bg-0))}.mains-help-now b{font-size:13px}.mains-help-now p{margin:6px 0 0;font-size:14px}.mains-help-dialog ol{margin:18px 0;padding-left:22px}.mains-help-dialog li{margin:8px 0;line-height:1.5}.mains-help-foot{margin-bottom:0;color:var(--ink-3);font-size:12px}.mains-hero{padding:clamp(28px,6vw,72px);border:1px solid var(--border);border-radius:24px;background:radial-gradient(circle at 90% 10%,color-mix(in oklab,var(--accent) 15%,transparent),transparent 33%),var(--bg-1);box-shadow:var(--shadow-sm)}.mains-kicker{color:var(--accent);font:700 11px/1.4 JetBrains Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.mains-hero h1,.mains-session h1{margin:8px 0 10px;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(30px,5vw,52px);line-height:1.04;letter-spacing:-.025em}.mains-hero>p{max-width:760px;margin:0;color:var(--ink-2);font-size:clamp(15px,2vw,18px);line-height:1.7}.mains-promise{max-width:760px;margin:24px 0 16px;padding:12px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:color-mix(in oklab,var(--accent) 8%,var(--bg-0));color:var(--ink-2);font-size:13px}.mains-start{min-height:46px;padding-inline:22px;margin-top:4px}.mains-hero>small{display:block;margin-top:11px;color:var(--ink-4)}.mains-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.mains-card,.mains-section,.mains-question,.mains-reveal{border:1px solid var(--border);background:var(--bg-1);border-radius:15px}.mains-card{padding:18px}.mains-card span,.mains-card b{display:block}.mains-card span{color:var(--ink-4);font:600 10px/1.4 JetBrains Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.mains-card b{margin-top:5px;font-size:15px}.mains-card p{margin:8px 0 0;color:var(--ink-3);font-size:12.5px;line-height:1.55}.mains-section{margin-top:14px;padding:18px}.mains-last-loop{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:16px 18px;border:1px solid color-mix(in oklab,var(--good) 30%,var(--border));border-radius:15px;background:color-mix(in oklab,var(--good) 6%,var(--bg-1))}.mains-last-loop div{display:flex;flex-direction:column;gap:4px}.mains-last-loop b{font-size:13px}.mains-last-loop span{color:var(--ink-3);font-size:12px}.mains-section h2,.mains-compare h2{margin:0 0 12px;font-size:15px}.mains-section-intro{margin:0 0 14px;color:var(--ink-3);font-size:13px;line-height:1.55}.mains-drill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:9px}.mains-drill{display:flex;flex-direction:column;gap:7px;min-height:88px;padding:15px;border:1px solid var(--border);border-radius:12px;background:var(--bg-0);color:var(--ink-1);text-align:left;cursor:pointer}.mains-drill:hover,.mains-drill:focus-visible{border-color:var(--accent)}.mains-drill span{color:var(--ink-3);font-size:12px;line-height:1.4}.mains-source-picker summary{cursor:pointer;font-weight:700}.mains-source-picker summary+p{margin-top:16px}.mains-source-picker label{display:block;margin:12px 0 5px;font-size:12px;color:var(--ink-2)}.mains-source-picker select,.mains-source-picker input:not([type=file]){display:block;width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg-0);color:var(--ink-1)}.mains-source-picker>.btn{margin-top:14px}.mains-upload{margin-top:20px;padding-top:12px;border-top:1px solid var(--border)}.mains-upload .btn{margin-top:10px}.mains-upload p{color:var(--ink-2);font-size:12px}.mains-source-warning{color:var(--warn)!important;font-size:12px;line-height:1.5}.mains-evidence-empty{padding:16px;color:var(--ink-3);background:var(--bg-0);border-radius:10px;font-size:13px;line-height:1.55}.mains-evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.mains-evidence{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-0);border-radius:10px}.mains-evidence b{font-size:12.5px}.mains-evidence span{color:var(--accent);font-size:11.5px}.mains-evidence small{color:var(--ink-4);line-height:1.45}.mains-session{padding-bottom:40px}.mains-progress-line{height:5px;overflow:hidden;margin-bottom:20px;border-radius:999px;background:var(--bg-2)}.mains-progress-line span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .25s ease}.mains-session-head,.mains-complete-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.mains-session-head h1,.mains-complete-head h1{font-size:clamp(28px,4vw,42px)}.mains-complete-head p{margin:0;color:var(--ink-3)}.mains-save{flex:0 0 auto;padding:6px 10px;border-radius:999px;color:var(--ink-4);background:var(--bg-2);font:600 10.5px/1.3 JetBrains Mono,monospace}.mains-save-saving{color:var(--warn)}.mains-save-saved{color:var(--good)}.mains-save-error{color:var(--bad)}.mains-question{display:flex;flex-direction:column;gap:5px;padding:14px 16px;border-left:3px solid var(--accent);border-radius:0 12px 12px 0}.mains-question small{color:var(--ink-4);font-size:10.5px;text-transform:uppercase;letter-spacing:.05em}.mains-question b{font-family:"Source Serif 4",Georgia,serif;font-size:17px;line-height:1.45}.mains-prompt{max-width:820px;margin:18px 0 7px;font-size:15px;line-height:1.6}.mains-target{color:var(--ink-3);font-size:11.5px}.mains-learning{max-width:920px;margin-inline:auto}.mains-learning-head{margin:8px 0 18px}.mains-learning-head h1{max-width:720px;font-size:clamp(30px,4.5vw,46px)}.mains-learning-head p{max-width:700px;margin:8px 0 0;color:var(--ink-3);line-height:1.6}.mains-learning-card{display:grid;gap:12px}.mains-learning-source,.mains-learning-coach{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:var(--bg-1)}.mains-learning-source{border-left:4px solid var(--accent)}.mains-learning-source small,.mains-learning-coach small{display:block;margin-bottom:10px;color:var(--accent);font:650 10.5px/1.4 JetBrains Mono,monospace;letter-spacing:.04em;text-transform:uppercase}.mains-learning-source ul{margin:0 0 14px;padding-left:22px}.mains-learning-source li{margin:8px 0;color:var(--ink-2);line-height:1.55}.mains-learning-coach{background:color-mix(in oklab,var(--accent) 6%,var(--bg-1))}.mains-learning-coach p{margin:0;color:var(--ink-2);font-family:"Source Serif 4",Georgia,serif;font-size:17px;line-height:1.55}.mains-learning-ai{padding:16px 20px;border:1px solid var(--border);border-radius:14px;background:var(--bg-1)}.mains-learning-ai>b{font-size:14px}.mains-learning-ai>p{max-width:740px;color:var(--ink-3);font-size:12px;line-height:1.55}.mains-learning-ai label{display:flex;align-items:flex-start;gap:7px;color:var(--ink-2);font-size:12px}.mains-learning-ai label input{margin-top:2px}.mains-learning-ai>.btn{margin-top:12px}.mains-ai-result{margin-top:12px;padding:12px;border-left:3px solid var(--accent);background:var(--bg-0)}.mains-ai-result small{color:var(--accent);font-size:11px}.mains-ai-result p{margin:8px 0 0;line-height:1.6}.mains-learning-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:14px 16px;border-radius:12px;background:var(--bg-2)}.mains-learning-actions p{margin:0;color:var(--ink-3);font-size:12.5px;line-height:1.5}.mains-learning-actions .btn{flex:0 0 auto;min-height:46px}.mains-coach-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.mains-hints{display:grid;gap:8px;margin:10px 0 14px}.mains-hint{padding:12px 14px;border:1px solid color-mix(in oklab,var(--accent) 24%,var(--border));border-radius:12px;background:color-mix(in oklab,var(--accent) 6%,var(--bg-1))}.mains-hint small,.mains-hint b{display:block}.mains-hint small{color:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.mains-hint b{margin-top:4px;font-size:13px}.mains-hint p{margin:5px 0 0;color:var(--ink-2);font-size:13px;line-height:1.55}.mains-paper{--mains-paper-height: max(900px, calc(100dvh - 120px) );position:relative;min-height:var(--mains-paper-height);overflow:visible;margin-top:14px;border:1px solid color-mix(in oklab,var(--ink-4) 35%,transparent);border-radius:12px;background:linear-gradient(90deg,transparent 0 52px,rgba(218,75,75,.28) 52px 54px,transparent 54px),repeating-linear-gradient(180deg,#fffdf7 0,#fffdf7 31px,#dce7ef 31px,#dce7ef 32px);box-shadow:0 12px 35px #1f2a3414;color:#26323c;touch-action:pan-y pinch-zoom}.mains-paper-readonly{--mains-paper-height: 330px}.mains-paper .scratch-tools{top:6px}.mains-paper-label{position:absolute;z-index:1;top:10px;right:14px;color:#26323c80;font:600 10px/1.3 JetBrains Mono,monospace;pointer-events:none}.mains-paper-margin{min-height:var(--mains-paper-height)}.mains-paper-placeholder{position:absolute;z-index:1;top:44px;left:70px;color:#26323c5c;font-family:"Source Serif 4",Georgia,serif;font-size:14px;pointer-events:none}.mains-top-actions{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 0 16px;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--bg-1);box-shadow:var(--shadow-sm)}.mains-top-actions>span{text-align:center;color:var(--ink-3);font-size:11.5px}.mains-top-actions .btn{min-height:44px}.mains-top-actions-rewrite{display:flex;flex-wrap:wrap}.mains-top-actions-rewrite>span{flex:1 1 220px}.mains-review-step-buttons{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.mains-exam-clock{padding:10px 14px;border:1px solid var(--border);border-radius:10px;font-variant-numeric:tabular-nums}.mains-paper-upload{margin:14px 0;padding:12px;border:1px solid var(--border);border-radius:10px}.mains-paper-upload summary{cursor:pointer}.mains-paper-upload input{display:block;margin:12px 0;max-width:100%}.mains-paper-photo-preview{margin:12px 0;padding:14px;border-radius:10px;background:var(--bg-1)}.mains-paper-photo-preview img{display:block;max-width:100%;max-height:600px;margin-top:10px;object-fit:contain;background:#fff}.mains-paper-end{min-height:110px;display:grid;place-items:center;padding:24px 12px 36px;color:var(--ink-4);font-size:11.5px;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none}.mains-error,.mains-emergency{margin:12px 0;padding:11px 13px;border-radius:10px;font-size:12.5px;line-height:1.5}.mains-error{border:1px solid color-mix(in oklab,var(--bad) 35%,var(--border));color:var(--bad);background:color-mix(in oklab,var(--bad) 7%,var(--bg-1))}.mains-emergency{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border:1px solid color-mix(in oklab,var(--warn) 35%,var(--border));color:var(--ink-2);background:color-mix(in oklab,var(--warn) 8%,var(--bg-1))}.mains-reveal{padding:16px 18px}.mains-reveal ol{margin:0;padding-left:22px}.mains-reveal li{margin:7px 0;color:var(--ink-2);font-size:13px;line-height:1.5}.mains-reveal p{margin:15px 0 10px;color:var(--ink-3);font-size:12.5px;line-height:1.55}.mains-rewrite-note{margin:14px 0;padding:12px 14px;border-left:3px solid var(--good);color:var(--ink-2);background:color-mix(in oklab,var(--good) 7%,var(--bg-1));font-size:13px}.mains-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mains-paused-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:16px 18px;border:1px solid color-mix(in oklab,var(--warn, #d97706) 35%,var(--border));border-radius:15px;background:color-mix(in oklab,var(--warn, #d97706) 8%,var(--bg-1))}.mains-paused-banner-body,.mains-last-loop-body{display:flex;flex-direction:column;gap:5px;min-width:0}.mains-last-loop-question,.mains-history-question{margin:2px 0 0;color:var(--ink-2);font-size:13px;line-height:1.5}.mains-history-list{display:flex;flex-direction:column;gap:10px}.mains-history-card{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--border);border-radius:13px;background:var(--bg-0)}.mains-history-card-main{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.mains-history-card-main strong{font-size:14px;color:var(--ink-1)}.mains-history-card-actions{display:flex;align-items:center;flex-shrink:0}.mains-history-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.mains-history-date{color:var(--ink-3);font-size:11.5px}.mains-badge{display:inline-flex;align-items:center;padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-1);color:var(--ink-2);font-size:11px;font-weight:600}.mains-badge-good{border-color:color-mix(in oklab,var(--good) 36%,var(--border));background:color-mix(in oklab,var(--good) 10%,var(--bg-1));color:var(--ink-1)}.mains-badge-warn{border-color:color-mix(in oklab,var(--warn, #d97706) 40%,var(--border));background:color-mix(in oklab,var(--warn, #d97706) 12%,var(--bg-1));color:var(--ink-1)}.mains-transcript-preview{margin:4px 0 0;padding:8px 10px;border-left:2px solid color-mix(in oklab,var(--good) 45%,var(--border));border-radius:6px;background:var(--bg-1);color:var(--ink-2);font-size:12px;line-height:1.45}.mains-complete-context{margin-bottom:14px}.mains-original-step-block+.mains-original-step-block{margin-top:16px;padding-top:14px;border-top:1px dashed var(--border)}.mains-original-step-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:12.5px}.mains-original-step-head span{color:var(--ink-3);font-size:11.5px}@media (max-width: 820px){.mains-home-grid,.mains-compare{grid-template-columns:1fr}.mains-session-head,.mains-complete-head{flex-direction:column}}@media (max-width: 560px){.mains-hero{padding:24px 18px;border-radius:16px}.mains-paper{--mains-paper-height: max(760px, calc(100dvh - 90px) )}.mains-paper-readonly{--mains-paper-height: 330px}.mains-top-actions{grid-template-columns:1fr 1fr;align-items:stretch}.mains-top-actions>span{grid-column:1 / -1;grid-row:2}.mains-top-actions .btn{width:100%}.mains-top-actions-rewrite{grid-template-columns:1fr}.mains-top-actions-rewrite>span{grid-column:auto;grid-row:auto}.mains-paper-placeholder{left:62px;right:10px}.mains-last-loop,.mains-paused-banner,.mains-history-card{align-items:stretch;flex-direction:column}.mains-history-card-actions .btn{width:100%}.mains-learning-actions{align-items:stretch;flex-direction:column}.mains-learning-actions .btn{width:100%}}:root{--bg: #0e1116;--bg-1: #141921;--bg-2: #1a2029;--bg-3: #222a36;--line: #252d3a;--line-2: #2f3947;--ink: #e8e4dc;--ink-2: #b7b3aa;--ink-3: #7b7972;--ink-4: #4d4b46;--accent: #d97757;--accent-2: #f0a371;--accent-ink: #1a0f09;--good: #7fb685;--bad: #d96a65;--warn: #e0b267;--info: #7a9cc6;--violet: #9b87c3;--shadow: 0 1px 0 rgba(255,255,255,.02) inset, 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 8px 24px rgba(0,0,0,.28);--shadow-lg: 0 30px 80px rgba(0,0,0,.55);--overlay: rgba(5,8,13,.55);--edge: 0 0 0 1px rgba(255,255,255,.04) inset;--radius: 8px;--radius-sm: 5px;--dens-pad: 12px;--dens-row: 36px;--trap-t1: #7aa2ff;--trap-t2: #3ddc97;--trap-t3: #f4c95d;--trap-t4: #c084fc;--trap-t5: #ff6b6b;--trap-t6: #38bdf8}[data-density=comfortable]{--dens-pad: 20px;--dens-row: 48px;line-height:1.7;letter-spacing:.01em}[data-density=comfortable] p{margin-bottom:1.5rem}[data-density=comfortable] li{margin-bottom:.75rem}[data-theme=paper]{--bg: #f4efe6;--bg-1: #ebe5d8;--bg-2: #e1dacb;--bg-3: #d4cbb8;--line: #d2c9b5;--line-2: #bbb098;--ink: #1b1a17;--ink-2: #52504a;--ink-3: #77746c;--ink-4: #a09d93;--accent: #b44a22;--accent-2: #d97757;--accent-ink: #fff6ea;--good: #3f6b43;--bad: #a83530;--warn: #a77416;--info: #3d628f;--violet: #6b5591;--shadow: 0 1px 0 rgba(255,255,255,.4) inset, 0 1px 2px rgba(40,30,10,.08);--trap-t1: #4263c4;--trap-t2: #1f9e6a;--trap-t3: #b07d12;--trap-t4: #7c3aed;--trap-t5: #c4362f;--trap-t6: #1d7fb8}[data-theme=sepia]{--bg: #1a1410;--bg-1: #221a14;--bg-2: #2a2018;--bg-3: #34281e;--line: #3b2c21;--line-2: #4a3829;--ink: #f1e4cf;--ink-2: #c5b396;--ink-3: #8e7e63;--ink-4: #5a4c38;--accent: #e8a866;--accent-2: #f4c897;--accent-ink: #1a0f09;--trap-t1: #8db4ff;--trap-t2: #54e6a8;--trap-t3: #f5d27e;--trap-t4: #cf99f5;--trap-t5: #ff8585;--trap-t6: #5cc8fa}[data-theme=oled]{--bg: #000000;--bg-1: #0a0a0a;--bg-2: #121212;--bg-3: #1c1c1c;--line: #242424;--line-2: #333333;--ink: #ededed;--ink-2: #a8a8a8;--ink-3: #757575;--ink-4: #454545;--accent: #e08a63;--accent-2: #f2ab80;--accent-ink: #0a0a0a;--good: #74ab7c;--bad: #cc6360;--warn: #d0a45f;--info: #7391b8;--violet: #907fb3;--shadow: 0 0 0 1px rgba(255,255,255,.05) inset;--shadow-md: 0 8px 24px rgba(0,0,0,.9), 0 0 0 1px rgba(255,255,255,.06) inset;--shadow-lg: 0 30px 80px rgba(0,0,0,.95), 0 0 0 1px rgba(255,255,255,.08) inset;--overlay: rgba(0,0,0,.72);--edge: 0 0 0 1px rgba(255,255,255,.07) inset;--trap-t1: #7d9ee0;--trap-t2: #4cc78d;--trap-t3: #dcb95c;--trap-t4: #ad7ce0;--trap-t5: #e06666;--trap-t6: #46a8d6}[data-density=compact]{--dens-pad: 8px;--dens-row: 30px}[data-accent=indigo]{--accent: #7c84e8;--accent-2: #a5abf0;--accent-ink: #0c0f28}[data-accent=emerald]{--accent: #68b18a;--accent-2: #90cdac;--accent-ink: #08170f}[data-accent=rose]{--accent: #d76a8a;--accent-2: #e892ad;--accent-ink: #28080f}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,system-ui,sans-serif;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased}body{min-height:100dvh}.serif{font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:-.01em}.mono{font-family:JetBrains Mono,ui-monospace,monospace}button{font-family:inherit;cursor:pointer;border:0;background:transparent;color:inherit}input,textarea,select{font-family:inherit;color:inherit}::selection{background:var(--accent);color:var(--accent-ink)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:10px;border:2px solid var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.chip{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;letter-spacing:.01em;padding:3px 8px;border-radius:999px;background:var(--bg-2);color:var(--ink-2);border:1px solid var(--line)}.chip.solid{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:600}.chip .dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.8}.chip.good{color:var(--good);border-color:color-mix(in oklab,var(--good) 40%,var(--line))}.chip.warn{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 40%,var(--line))}.chip.bad{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 40%,var(--line))}.chip.info{color:var(--info);border-color:color-mix(in oklab,var(--info) 40%,var(--line))}.btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:6px;font-size:13px;font-weight:500;background:var(--bg-2);color:var(--ink);border:1px solid var(--line);transition:background .12s,border-color .12s,transform .08s}.btn:hover{background:var(--bg-3);border-color:var(--line-2)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:600}.btn-primary:hover{background:var(--accent-2)}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn-ghost:hover{background:var(--bg-2);color:var(--ink)}.btn-sm{padding:4px 9px;font-size:12px}.card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius)}.input{background:var(--bg-2);border:1px solid var(--line);color:var(--ink);padding:7px 10px;border-radius:6px;font-size:13px;outline:none;transition:border-color .12s,background .12s}.input:focus{border-color:var(--accent);background:var(--bg-1)}.input::placeholder{color:var(--ink-4)}.saved-ai-version-select{background:var(--bg-2);color:var(--ink);border-color:var(--line-2);color-scheme:dark}.saved-ai-version-select option{background:var(--bg-2);color:var(--ink)}[data-theme=paper] .saved-ai-version-select{color-scheme:light}kbd{font-family:JetBrains Mono,monospace;font-size:10.5px;padding:2px 5px;border-radius:4px;background:var(--bg-2);color:var(--ink-3);border:1px solid var(--line);border-bottom-width:2px;line-height:1}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}.rule{height:1px;background:var(--line)}.app{display:grid;grid-template-columns:232px 1fr;min-height:100dvh;transition:grid-template-columns .2s}.app[data-sb=collapsed]{grid-template-columns:56px 1fr}.sidebar{position:sticky;top:0;height:100dvh;background:var(--bg);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;gap:4px}.brand{display:flex;align-items:center;gap:10px;padding:4px 6px 14px;position:relative}.brand-mark{width:34px;height:34px;flex:0 0 34px;display:block}.brand-mark svg{width:100%;height:100%;display:block}.brand-name{font-family:"Instrument Serif",serif;font-size:20px;line-height:1;letter-spacing:-.01em}.brand-sub{font-size:10.5px;color:var(--ink-3);margin-top:2px;letter-spacing:.02em}.sidebar-toggle{margin-left:auto;width:26px;height:26px;border-radius:6px;display:grid;place-items:center;color:var(--ink-2);background:var(--bg-1);border:1px solid var(--line);flex:0 0 26px}.sidebar-toggle:hover{color:var(--ink);background:var(--bg-2)}.nav-group{margin-top:14px}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:6px;font-size:13px;color:var(--ink-2);font-weight:500;width:100%;text-align:left;transition:background .1s,color .1s;position:relative}.nav-item:hover{background:var(--bg-1);color:var(--ink)}.nav-item.active{background:var(--bg-2);color:var(--ink)}.nav-item.active:before{content:"";position:absolute;left:-14px;top:8px;bottom:8px;width:2px;background:var(--accent);border-radius:2px}.nav-item .count{margin-left:auto;font-size:10.5px;font-family:JetBrains Mono,monospace;color:var(--ink-3);background:var(--bg-2);padding:2px 6px;border-radius:4px;border:1px solid var(--line)}.nav-item.active .count{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:600}.sidebar-footer{margin-top:auto;padding-top:14px;border-top:1px dashed var(--line);font-size:11px;color:var(--ink-3)}.sb-stat{display:flex;justify-content:space-between;padding:4px 6px}.sb-stat b{color:var(--ink);font-family:JetBrains Mono,monospace;font-weight:500}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:12px;padding:14px 28px;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:10}.crumb{font-size:12.5px;color:var(--ink-3)}.crumb b{color:var(--ink);font-weight:500}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.embedding-pill{height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border-radius:6px;border:1px solid var(--line);background:var(--bg-1);color:var(--ink-2);font-size:12px;white-space:nowrap}.embedding-pill:hover{border-color:var(--line-2);color:var(--ink);background:var(--bg-2)}.embedding-pill b{color:var(--ink);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600}.embedding-pill.good{border-color:color-mix(in oklab,var(--good) 45%,var(--line))}.embedding-pill.warn{border-color:color-mix(in oklab,var(--warn) 55%,var(--line));color:var(--warn)}.embedding-panel{width:460px;max-width:calc(100vw - 28px);background:var(--bg-1);border:1px solid var(--line-2);border-radius:10px;box-shadow:var(--shadow-lg);overflow:hidden}.embedding-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px;border-bottom:1px solid var(--line)}.embedding-panel-head h2{margin:3px 0 0;font-size:20px;font-weight:650}.embedding-meter{height:8px;background:var(--bg);border-bottom:1px solid var(--line);overflow:hidden}.embedding-meter>div{height:100%;background:var(--good);transition:width .2s}.embedding-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:14px}.embedding-grid b.warn{color:var(--warn)}.embedding-grid>div,.embedding-provider>div{padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--bg)}.embedding-grid span,.embedding-provider span{display:block;margin-bottom:4px;color:var(--ink-3);font-size:11px}.embedding-grid b,.embedding-provider b{color:var(--ink);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600;word-break:break-word}.embedding-provider{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;padding:0 14px 14px}.embedding-result{margin:0 14px 12px;padding:9px 10px;border:1px solid color-mix(in oklab,var(--good) 45%,var(--line));border-radius:7px;color:var(--good);background:color-mix(in oklab,var(--good) 8%,var(--bg));font-size:12px;line-height:1.45}.embedding-note{padding:0 14px 14px;color:var(--ink-3);font-size:12px;line-height:1.5}.embedding-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 14px 14px;border-top:1px solid var(--line);background:var(--bg)}.cmdk-btn{display:flex;align-items:center;gap:8px;background:var(--bg-1);border:1px solid var(--line);padding:6px 10px;border-radius:6px;font-size:12.5px;color:var(--ink-3);min-width:220px}.cmdk-btn:hover{border-color:var(--line-2);color:var(--ink-2)}.cmdk-btn kbd{margin-left:auto}.mock-name{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta-xs{font-size:11px;color:var(--ink-3)}.row-menu{position:absolute;right:0;top:100%;margin-top:4px;z-index:51;background:var(--bg-1);border:1px solid var(--line-2);border-radius:8px;box-shadow:0 10px 30px #0006;padding:4px;min-width:150px;display:flex;flex-direction:column;gap:2px}.content{padding:24px 28px 80px;max-width:1280px;width:100%;margin:0 auto}.page-head{margin-bottom:22px}.page-head h1{font-family:"Instrument Serif",serif;font-weight:400;font-size:38px;line-height:1.05;letter-spacing:-.02em;margin:2px 0 6px}.page-head p{color:var(--ink-3);font-size:13px;margin:0;max-width:640px}.grid{display:grid;gap:14px}.row{display:flex;gap:14px}.wrap{flex-wrap:wrap}.toast{position:fixed;top:calc(env(safe-area-inset-top,0px) + 68px);bottom:auto;left:50%;right:auto;transform:translate(-50%);z-index:100;background:var(--bg-2);color:var(--ink);border:1px solid var(--line-2);border-left:3px solid var(--accent);padding:10px 14px;border-radius:6px;font-size:13px;box-shadow:var(--shadow-md)}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:10vh}.cmdk-panel{width:560px;max-width:92vw;background:var(--bg-1);border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden}.cmdk-input{width:100%;padding:14px 18px;font-size:15px;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);outline:none}.cmdk-list{max-height:360px;overflow-y:auto;padding:6px}.cmdk-item{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:6px;font-size:13px;color:var(--ink-2);cursor:pointer}.cmdk-item .ic{width:18px;text-align:center;color:var(--ink-3)}.cmdk-item .title{color:var(--ink);font-weight:500}.cmdk-item .hint{margin-left:auto;color:var(--ink-4);font-size:11px}.cmdk-item.active{background:var(--bg-2)}.cmdk-item.active .ic{color:var(--accent)}.cmdk-sec{font-size:10px;color:var(--ink-4);padding:10px 14px 4px;letter-spacing:.15em;text-transform:uppercase}.bar{height:4px;background:var(--bg-2);border-radius:2px;overflow:hidden}.bar>span{display:block;height:100%;background:var(--accent);border-radius:2px}.heatgrid{display:grid;grid-template-columns:repeat(26,1fr);gap:3px}.heatcell{aspect-ratio:1;border-radius:2px;background:var(--bg-2);border:1px solid var(--line)}.heatcell.l1{background:color-mix(in oklab,var(--accent) 20%,var(--bg-2));border-color:color-mix(in oklab,var(--accent) 30%,var(--line))}.heatcell.l2{background:color-mix(in oklab,var(--accent) 45%,var(--bg-2));border-color:color-mix(in oklab,var(--accent) 50%,var(--line))}.heatcell.l3{background:color-mix(in oklab,var(--accent) 70%,var(--bg-2));border-color:color-mix(in oklab,var(--accent) 70%,var(--line))}.heatcell.l4{background:var(--accent);border-color:var(--accent)}.heatcell.today{box-shadow:0 0 0 1.5px var(--ink)}.sb-row{display:flex;align-items:center;gap:10px;padding:5px 0}.sb-row .lbl{width:130px;font-size:12.5px;color:var(--ink-2)}.sb-row .track{flex:1;height:6px;background:var(--bg-2);border-radius:3px;overflow:hidden}.sb-row .fill{height:100%;border-radius:3px;background:var(--accent)}.sb-row .num{width:64px;text-align:right;font-family:JetBrains Mono,monospace;font-size:11.5px;color:var(--ink-3)}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th,table.data td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--line)}table.data th{font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-weight:600;border-bottom:1px solid var(--line-2)}table.data tr:hover td{background:var(--bg-2)}table.data td .sub{color:var(--ink-3);font-size:12px;margin-top:1px}.settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:22px;background:var(--overlay);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.settings-dialog{width:min(980px,100%);height:min(780px,calc(100dvh - 44px));display:grid;grid-template-rows:auto auto minmax(0,1fr);background:var(--bg-1);border:1px solid var(--line-2);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden;color:var(--ink)}.settings-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:18px 20px 12px;border-bottom:1px solid var(--line)}.settings-header h2{margin:0;font:400 28px/1.05 "Instrument Serif",serif}.settings-header p{margin:5px 0 0;color:var(--ink-3);font-size:12px}.settings-tabs{display:flex;gap:4px;padding:8px 14px;border-bottom:1px solid var(--line);overflow-x:auto}.settings-tabs button{padding:7px 12px;border-radius:6px;color:var(--ink-3);font-size:12.5px;border:1px solid transparent;white-space:nowrap}.settings-tabs button.on{color:var(--ink);background:var(--bg-2);border-color:var(--line)}.settings-body{overflow:auto;padding:18px 20px 30px}.settings-dialog button:disabled,.settings-dialog input:disabled,.settings-dialog select:disabled{opacity:.48;cursor:not-allowed}.settings-appearance{max-width:520px}.tweak-row{display:flex;align-items:center;gap:8px;margin:8px 0}.tweak-row label{flex:1;color:var(--ink-2)}.seg{display:inline-flex;background:var(--bg-2);border-radius:5px;padding:2px}.seg button{font-size:11px;padding:4px 8px;border-radius:4px;color:var(--ink-3)}.seg button.on{background:var(--bg);color:var(--ink);box-shadow:var(--shadow)}.swatches{display:flex;gap:6px}.swatch{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-2);cursor:pointer}.swatch.on{box-shadow:0 0 0 2px var(--bg-1),0 0 0 3.5px var(--ink-2)}.settings-help{color:var(--ink-3);font-size:11.5px;line-height:1.5}.settings-policy{margin:9px 2px 16px}.settings-banner{padding:10px 12px;border-radius:7px;border:1px solid color-mix(in oklab,var(--info) 35%,var(--line));background:color-mix(in oklab,var(--info) 8%,var(--bg-1));color:var(--ink-2);font-size:12px;line-height:1.45}.settings-banner.warn{border-color:color-mix(in oklab,var(--warn) 45%,var(--line));background:color-mix(in oklab,var(--warn) 9%,var(--bg-1))}.settings-model-row{padding:16px 0;border-top:1px solid var(--line)}.settings-model-row:first-of-type{border-top:0}.settings-row-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.settings-row-heading h4{margin:0;font-size:14px}.settings-row-heading p{margin:3px 0 0;color:var(--ink-3);font-size:11.5px}.settings-mode,.settings-secret-source,.settings-connection{display:inline-flex;width:max-content;align-items:center;white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:2px 7px;background:var(--bg-2);color:var(--ink-3);font-size:10.5px}.settings-mode.custom,.settings-secret-source.connected,.settings-connection.connected{color:var(--good);border-color:color-mix(in oklab,var(--good) 40%,var(--line))}.settings-secret-source.missing,.settings-connection.missing{color:var(--warn)}.settings-automatic{margin-top:7px;color:var(--ink-3);font-size:11px}.settings-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.settings-route-target{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.settings-field-label{grid-column:1 / -1;font-size:11px;font-weight:700;color:var(--ink-2);text-transform:uppercase;letter-spacing:.08em}.settings-route-target label{display:grid;gap:4px;min-width:0;color:var(--ink-3);font-size:10.5px}.settings-route-target select,.settings-route-target input,.settings-credential-row input{min-width:0;width:100%;padding:7px 8px;border:1px solid var(--line-2);border-radius:6px;background:var(--bg-1);color:var(--ink);font-size:12px}.settings-connection{position:absolute;right:10px;top:9px}.settings-custom-model{grid-column:1 / -1}.settings-row-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.settings-validation{color:var(--ink-4);font-size:10.5px}.settings-actions{display:flex;gap:7px}.settings-error{margin-top:8px;color:var(--bad);font-size:11.5px;line-height:1.4}.settings-empty{padding:24px 0;text-align:center;color:var(--ink-3)}.settings-key-section{margin-top:18px}.settings-key-section h3{margin:0 0 6px;font:400 20px/1.2 "Instrument Serif",serif}.settings-credential-row{display:grid;grid-template-columns:minmax(145px,1.1fr) auto auto minmax(160px,1fr) auto auto;gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.settings-credential-info{display:grid;gap:2px;min-width:0}.settings-credential-info strong{font-size:12.5px}.settings-credential-info span{color:var(--ink-3);font-size:10.5px}.settings-cost-note{grid-column:4 / -1;color:var(--warn);font-size:10px}.settings-credential-row>.settings-error{grid-column:1 / -1;margin-top:0}@media (max-width: 900px){.settings-backdrop{padding:0}.settings-dialog{width:100%;height:100dvh;border:0;border-radius:0}.settings-header{padding:14px}.settings-header p{max-width:280px}.settings-body{padding:14px 14px 88px}.settings-route-grid{grid-template-columns:1fr}.settings-row-footer{align-items:stretch;flex-direction:column}.settings-actions{display:grid;grid-template-columns:1fr 1fr}.settings-credential-row{grid-template-columns:minmax(0,1fr) auto}.settings-credential-row>.btn,.settings-credential-row>input{grid-column:1 / -1}.settings-cost-note{grid-column:1 / -1}.settings-appearance .tweak-row{align-items:flex-start;flex-direction:column;margin-bottom:18px}}.stat-big{font-family:"Instrument Serif",serif;font-weight:400;font-size:42px;line-height:1;letter-spacing:-.02em}.stat-lbl{font-size:11px;color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;margin-top:6px}.divdot{color:var(--ink-4);margin:0 6px}.hero-num{font-family:"Instrument Serif",serif;font-weight:400;font-size:30px;line-height:1;letter-spacing:-.01em}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:500;border-radius:999px;background:var(--bg-2);color:var(--ink-2);border:1px solid var(--line)}.badge.good{color:var(--good);border-color:color-mix(in oklab,var(--good) 45%,var(--line));background:color-mix(in oklab,var(--good) 12%,var(--bg-2))}.badge.warn{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 45%,var(--line));background:color-mix(in oklab,var(--warn) 12%,var(--bg-2))}.badge.bad{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 45%,var(--line));background:color-mix(in oklab,var(--bad) 12%,var(--bg-2))}.risk-chip{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:600;letter-spacing:.04em;padding:1px 7px;border-radius:999px;white-space:nowrap;border:1px solid var(--line);color:var(--ink-3);background:var(--bg-2)}.risk-chip:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.risk-chip.low{color:var(--good);border-color:color-mix(in oklab,var(--good) 45%,var(--line));background:color-mix(in oklab,var(--good) 12%,var(--bg-2))}.risk-chip.med{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 45%,var(--line));background:color-mix(in oklab,var(--warn) 12%,var(--bg-2))}.risk-chip.high{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 45%,var(--line));background:color-mix(in oklab,var(--bad) 12%,var(--bg-2))}.dash-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--ink-3)}.dash-legend .item{display:inline-flex;align-items:center;gap:5px}.dash-legend .dot{width:7px;height:7px;border-radius:50%;display:inline-block}.accuracy-skyline{margin-top:2px}.accuracy-skyline-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.accuracy-skyline-plot{--skyline-columns: 14;position:relative;min-width:min(100%,calc(var(--skyline-columns) * 58px));height:178px;display:grid;grid-template-columns:repeat(var(--skyline-columns),minmax(44px,1fr));align-items:end;gap:4px;padding:8px 8px 0}.accuracy-skyline-baseline{position:absolute;z-index:0;left:8px;right:8px;bottom:31px;height:1px;background:linear-gradient(90deg,transparent,var(--line-2) 4%,var(--line-2) 96%,transparent)}.accuracy-skyline-slot{position:relative;z-index:1;min-width:0;display:grid;grid-template-rows:118px 30px 22px;justify-items:center;align-items:end}.accuracy-skyline-stage{position:relative;width:100%;height:118px;display:flex;justify-content:center;align-items:flex-end}.accuracy-skyline-pillar{display:block;width:clamp(19px,48%,34px);min-height:18px;border-radius:999px 999px 5px 5px;box-shadow:inset 0 1px #ffffff47,0 8px 22px #0000001c;transform-origin:bottom;animation:accuracy-rise .44s cubic-bezier(.2,.72,.25,1) both}.accuracy-skyline-pillar.strong{background:linear-gradient(180deg,color-mix(in oklab,var(--good) 68%,white),var(--good))}.accuracy-skyline-pillar.steady{background:linear-gradient(180deg,color-mix(in oklab,var(--warn) 70%,white),var(--warn))}.accuracy-skyline-pillar.weak{background:linear-gradient(180deg,color-mix(in oklab,var(--bad) 72%,white),var(--bad))}.accuracy-skyline-value{position:absolute;left:50%;translate:-50% 0;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:750;color:var(--ink-2);white-space:nowrap}.accuracy-skyline-orb{position:relative;z-index:2;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line-2);background:color-mix(in oklab,var(--bg-1) 88%,var(--accent));box-shadow:0 0 0 4px var(--bg-1),0 5px 14px #0000001f;color:var(--ink-2);font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:750}.accuracy-skyline-slot.is-empty .accuracy-skyline-orb{color:var(--ink-4);border-style:dashed;background:var(--bg-2);box-shadow:0 0 0 4px var(--bg-1)}.accuracy-skyline-date{max-width:100%;overflow:hidden;text-overflow:ellipsis;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:9px;white-space:nowrap;align-self:end}.accuracy-skyline-foot{min-height:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:5px;color:var(--ink-3);font-size:11px}@keyframes accuracy-rise{0%{transform:scaleY(.08);opacity:.2}to{transform:scaleY(1);opacity:1}}.spin{animation:spin .8s linear infinite;display:inline-block}.heat-row{display:flex;align-items:center;gap:7px}.heat-swatch{width:9px;height:9px;border-radius:2px;flex:0 0 auto;border:1px solid var(--line);background:var(--bg-2)}.heat-swatch.l1{background:color-mix(in oklab,var(--bad) 70%,var(--bg-2));border-color:color-mix(in oklab,var(--bad) 50%,var(--line))}.heat-swatch.l2{background:color-mix(in oklab,var(--warn) 70%,var(--bg-2));border-color:color-mix(in oklab,var(--warn) 50%,var(--line))}.heat-swatch.l3{background:color-mix(in oklab,var(--info) 70%,var(--bg-2));border-color:color-mix(in oklab,var(--info) 50%,var(--line))}.heat-swatch.l4{background:var(--good);border-color:var(--good)}.info-chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-3);padding:3px 9px;border-radius:999px;background:var(--bg-1);border:1px solid var(--line)}.mock-status{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;letter-spacing:.03em;padding:1px 8px;border-radius:999px;white-space:nowrap;border:1px solid var(--line);color:var(--ink-3);background:var(--bg-2)}.mock-status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.mock-status.progress{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 45%,var(--line));background:color-mix(in oklab,var(--bad) 12%,var(--bg-2))}.mock-status.done{color:var(--good);border-color:color-mix(in oklab,var(--good) 45%,var(--line));background:color-mix(in oklab,var(--good) 12%,var(--bg-2))}.qpalette{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:6px}.qcell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;letter-spacing:-.02em;white-space:nowrap;padding:0 2px;border-radius:5px;border:1px solid var(--line);background:var(--bg-2);color:var(--ink-3);cursor:pointer;transition:transform .06s,border-color .1s,background .1s;position:relative}.qcell:hover{transform:scale(1.08);border-color:var(--line-2)}.qcell.visited{background:var(--bg-3);color:var(--ink-2)}.qcell.answered{background:color-mix(in oklab,var(--accent) 22%,var(--bg-2));color:var(--ink);border-color:color-mix(in oklab,var(--accent) 45%,var(--line))}.qcell.marked{border-color:var(--warn)}.qcell.marked:after{content:"";position:absolute;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--warn)}.qcell.current{box-shadow:0 0 0 2px var(--accent);border-color:var(--accent);color:var(--ink);font-weight:700}.qcell.retry{border-style:dashed;border-color:color-mix(in oklab,var(--accent) 55%,var(--line));color:var(--accent);font-size:9.5px;font-weight:600;letter-spacing:-.04em}.qcell.retry.answered{border-style:solid;background:color-mix(in oklab,var(--good) 22%,var(--bg-2));border-color:color-mix(in oklab,var(--good) 45%,var(--line));color:var(--ink)}.timer{font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600;color:var(--ink-2);padding:3px 10px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.timer.warn{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 50%,var(--line));background:color-mix(in oklab,var(--warn) 12%,var(--bg-2))}.timer.crit{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 50%,var(--line));background:color-mix(in oklab,var(--bad) 12%,var(--bg-2));animation:timer-pulse 1s ease-in-out infinite}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.6}}.score-ring{border-radius:50%;display:grid;place-items:center;text-align:center;position:relative}.score-ring-hole{border-radius:50%;background:var(--bg-1);display:grid;place-items:center;text-align:center}.flag-btn{color:var(--ink-3)}.flag-btn.on{color:var(--warn);background:color-mix(in oklab,var(--warn) 14%,transparent)}.tabs{display:inline-flex;gap:2px;padding:3px;background:var(--bg-1);border:1px solid var(--line);border-radius:7px}.tabs button{padding:5px 10px;font-size:12.5px;color:var(--ink-3);border-radius:5px}.tabs button.on{background:var(--bg-2);color:var(--ink)}.opt{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;padding:11px 13px;border-radius:7px;background:var(--bg-2);border:1px solid var(--line);font-size:13.5px;color:var(--ink);line-height:1.5;transition:border-color .1s,background .1s}.opt:hover{border-color:var(--line-2);background:var(--bg-3)}.opt .letter{width:22px;height:22px;border-radius:5px;display:grid;place-items:center;flex-shrink:0;background:var(--bg);color:var(--ink-2);font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:600;border:1px solid var(--line)}.opt.sel{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 12%,var(--bg-1))}.opt.sel .letter{background:var(--accent);color:var(--accent-ink);border-color:transparent}.opt.correct{border-color:var(--good);background:color-mix(in oklab,var(--good) 14%,var(--bg-1))}.opt.correct .letter{background:var(--good);color:var(--bg);border-color:transparent}.opt.wrong{border-color:var(--bad);background:color-mix(in oklab,var(--bad) 14%,var(--bg-1))}.opt.wrong .letter{background:var(--bad);color:var(--bg);border-color:transparent}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.fade-in{animation:fade-in .2s ease-out both}@keyframes spin{to{transform:rotate(360deg)}}.tree-chapter{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:9px 12px;border-radius:6px;border:1px solid transparent}.tree-chapter:hover{background:var(--bg-1);border-color:var(--line)}.tree-name{font-size:13px;color:var(--ink);font-weight:500}.tree-meta{font-size:11.5px;color:var(--ink-3);font-family:JetBrains Mono,monospace}.queue-row{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:8px;background:var(--bg-1);border:1px solid var(--line);cursor:pointer;transition:all .12s}.queue-row:hover{border-color:var(--line-2);background:var(--bg-2);transform:translate(2px)}.queue-row .icon-disc{width:40px;height:40px;border-radius:8px;display:grid;place-items:center;font-size:18px;flex-shrink:0}.sec-head{display:flex;align-items:baseline;justify-content:space-between;margin:22px 0 10px}.sec-head h2{font-family:"Instrument Serif",serif;font-weight:400;font-size:22px;margin:0;letter-spacing:-.01em}.sec-head .act{display:flex;gap:8px;align-items:center}.sdot{width:8px;height:8px;border-radius:2px;display:inline-block;margin-right:7px;vertical-align:1px}.muted{color:var(--ink-3)}.num-mono{font-family:JetBrains Mono,monospace;font-variant-numeric:tabular-nums}.ring-wrap{position:relative;width:68px;height:68px}.ring-txt{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}@keyframes guru-pulse{0%,to{opacity:1}50%{opacity:.35}}.chk-list{display:flex;flex-direction:column}.chk-row{display:flex;align-items:center;gap:11px;min-height:43px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:13px;text-align:left}.chk-row:hover{background:var(--bg-2)}.chk-box{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--line-2);flex-shrink:0;display:grid;place-items:center;color:transparent}.chk-row.done .chk-box{background:var(--good);border-color:var(--good);color:var(--bg)}.chk-text{flex:1;color:var(--ink)}.chk-row.done .chk-text{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--ink-4)}.chk-time{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--ink-3)}.mirror-tag{font-size:10px;color:var(--bad);font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px}.mob-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--bg);border-top:1px solid var(--line);padding:6px 0 calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr)}.mob-nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;color:var(--ink-3);font-weight:500;padding:4px 0;border:none;background:none;cursor:pointer;transition:color .15s}.mob-nav-item.active{color:var(--accent)}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:199;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar-overlay.open{display:block}.mob-menu-btn{display:none;padding:6px;border-radius:6px;background:none;border:none;cursor:pointer;color:var(--ink-2)}.mob-menu-btn:hover{background:var(--bg-2)}.mcq-layout{height:calc(100dvh - 120px)}.mcq-left,.mcq-right{overflow-y:auto;padding-right:12px;padding-bottom:24px}.mcq-normal-layout>:is(.mcq-left,.mcq-right){overflow-x:clip;overflow-wrap:anywhere}.mcq-normal-layout pre,.chapter-revision-markdown pre{max-width:100%;overflow-x:auto;overflow-wrap:normal}@media (max-width: 1024px){.app{grid-template-columns:1fr!important}.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:200;transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;height:100dvh;width:232px!important;box-shadow:none}.sidebar.drawer-open{transform:translate(0);box-shadow:var(--shadow-md)}.sidebar-overlay{display:none}.sidebar-overlay.open{display:block}.mob-menu-btn{display:grid;place-items:center}.sidebar-toggle{display:none}.dash-grid{grid-template-columns:1fr 1fr!important}.dash-wide{grid-column:span 2!important}}@media (max-width: 720px){.topbar{padding:10px 14px;gap:8px}.crumb{display:none}.main{padding-bottom:72px}.mob-nav{display:grid}.dash-grid{grid-template-columns:1fr!important}.dash-wide{grid-column:span 1!important}.content-pad{padding:14px!important}.stat-row{flex-direction:column!important;gap:8px!important}.chapter-row td:nth-child(3),.chapter-row td:nth-child(4){display:none}.mcq-layout{flex-direction:column!important;height:auto!important;min-height:calc(100dvh - 180px)}.mcq-left,.mcq-right{overflow-y:visible!important;padding-right:0!important}.mcq-right{width:100%!important;border-left:none!important;border-top:1px solid var(--line)!important;padding-left:0!important}.modal-box{width:100%!important;height:100dvh!important;border-radius:0!important;margin:0!important;max-height:none!important}.cmdk-btn span,.cmdk-btn kbd{display:none}.topbar-right{flex-wrap:wrap}.cmdk-btn{min-width:0}.embedding-pill{display:none}html,body,.main{overflow-x:hidden}table{display:block;overflow-x:auto;max-width:100%}.btn{min-height:44px}.btn-sm,button.chip{min-height:40px}.nav-item{min-height:44px}.qcell{font-size:13px}.qpalette{grid-template-columns:repeat(auto-fill,minmax(42px,1fr))}.mob-menu-btn{min-height:44px;min-width:44px}.cmdk-btn,.input,input,select,textarea{min-height:44px}button:not([class*=scratch]){min-height:40px}.eyebrow{font-size:12px;letter-spacing:.14em}.btn{font-size:15px}.btn-sm{font-size:13.5px}.chip,.tree-meta{font-size:12.5px}.tree-name{font-size:14.5px}.brand-sub{font-size:12px}.mob-nav-item{font-size:11.5px}.cmdk-btn{font-size:14px}.nav-item{font-size:14.5px}.input,input,textarea,select{font-size:16px}.meta-xs{font-size:12.5px}.mock-name{white-space:normal;overflow:visible;font-size:15.5px;line-height:1.3}.row-menu{position:fixed;left:50%;right:auto;top:auto;bottom:calc(72px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(320px,calc(100vw - 32px));min-width:0;margin-top:0;padding:6px;gap:4px;box-shadow:var(--shadow-lg)}.row-menu .btn{white-space:nowrap;min-height:46px}}h1.h1{font-family:"Instrument Serif",serif;font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:1.1}p.sub{font-size:13.5px;color:var(--ink-2)}.empty{padding:40px 20px;text-align:center;color:var(--ink-3);font-size:13px}.empty svg{opacity:.55;display:inline-block;margin-bottom:8px}.chip{padding:5px 11px;border-radius:999px;font-size:12px;background:var(--bg-1);border:1px solid var(--line);color:var(--ink-2);cursor:pointer;white-space:nowrap;font-weight:500}.chip.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.chip:hover:not(.on){background:var(--bg-2);color:var(--ink)}.input,.textarea{padding:8px 11px;font-size:13px;background:var(--bg-1);color:var(--ink);border:1px solid var(--line);border-radius:6px;font-family:inherit;width:100%}.textarea{resize:vertical;line-height:1.5;font-family:JetBrains Mono,monospace;font-size:12px}.input:focus,.textarea:focus{border-color:var(--accent);outline:none}.toast{position:fixed;top:calc(env(safe-area-inset-top,0px) + 68px);bottom:auto;left:50%;transform:translate(-50%);width:max-content;max-width:min(560px,calc(100vw - 24px));padding:10px 18px;border-radius:7px;z-index:2000;background:var(--ink);color:var(--bg);font-size:13px;font-weight:500;box-shadow:var(--shadow-md);animation:toastin .2s ease-out}.toast-error{background:var(--bad);color:#fff}.toast-success{background:var(--good);color:#fff}@keyframes toastin{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.dim{color:var(--ink-3)}.ask-guru{display:grid;gap:12px}.ask-thread{min-height:190px;max-height:360px;overflow:auto;display:grid;gap:10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2)}.ask-msg{max-width:82%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);color:var(--ink-2);font-size:13px;line-height:1.5}.ask-msg.user{justify-self:end;background:color-mix(in oklab,var(--accent) 16%,var(--bg-1));border-color:color-mix(in oklab,var(--accent) 38%,var(--line));color:var(--ink)}.ask-msg.assistant{justify-self:start}.ask-role{margin-bottom:4px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.ask-context{margin-top:8px;display:grid;gap:6px;padding-top:8px;border-top:1px dashed var(--line);color:var(--ink-3);font-size:12px}.ask-quick{display:flex;flex-wrap:wrap;gap:8px}.ask-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.ask-row .btn{min-height:36px}.ask-budget{font-size:12px;color:var(--ink-3);text-align:right}@media (max-width: 640px){.ask-msg{max-width:100%}.ask-row{grid-template-columns:auto minmax(0,1fr)}.ask-row .btn-primary{grid-column:span 2}}.mock-revision-overlay{align-items:stretch;justify-content:stretch;padding-top:0;background:radial-gradient(circle at 15% 50%,color-mix(in oklab,var(--accent) 8%,transparent),transparent 30%),radial-gradient(circle at 85% 30%,color-mix(in oklab,var(--ok) 8%,transparent),transparent 30%),var(--bg-1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mock-revision-workspace{width:100%;max-width:100%;overflow-x:hidden;height:100dvh;background:transparent;border:0;border-radius:0;box-shadow:none;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.mock-revision-header{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 18px;background:color-mix(in oklab,var(--bg-1) 60%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid color-mix(in oklab,var(--line) 40%,transparent);z-index:10}.mock-revision-header-current{min-width:0;display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:center}.mock-revision-current-copy{min-width:0}.mock-revision-current-title{margin-top:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:16px;font-weight:650;line-height:1.15}.mock-revision-current-meta,.mock-revision-current-path{margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-3);font-size:11px;line-height:1.3}.mock-revision-header-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px;flex-wrap:nowrap}.more-menu-container{position:relative;display:inline-flex;align-items:center}.more-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-1);border:1px solid color-mix(in oklab,var(--line) 45%,transparent);box-shadow:0 14px 36px #00000038,0 3px 8px #00000014;border-radius:12px;min-width:230px;z-index:1000;padding:6px;display:flex;flex-direction:column;gap:2px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:fadeInMenu .12s ease-out}@keyframes fadeInMenu{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.more-menu-section-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);padding:6px 10px 3px;border-top:1px solid color-mix(in oklab,var(--line) 30%,transparent)}.more-menu-section-label:first-child{border-top:none;padding-top:3px}.more-menu-item{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:7px;font-size:12.5px;font-weight:500;color:var(--ink-2);background:transparent;border:none;cursor:pointer;text-align:left;transition:all .12s ease;width:100%}.more-menu-item:hover{background:var(--bg-2);color:var(--ink)}.more-menu-item.active{color:var(--accent);background:color-mix(in oklab,var(--accent) 12%,transparent)}.more-menu-item-row{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;font-size:12.5px;color:var(--ink-2)}.more-menu-select{background:var(--bg-2);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:3px 6px;font-size:12px;outline:none;cursor:pointer}.more-menu-badge{font-size:10px;font-weight:700;padding:1px 6px;border-radius:4px;background:color-mix(in oklab,var(--line) 60%,transparent);color:var(--ink-3)}.more-menu-item.active .more-menu-badge{background:var(--accent);color:var(--bg)}.mock-revision-body{min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr)}.mock-revision-body.sidebar-hidden{grid-template-columns:1fr}.mock-revision-sidebar{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 14px;border-right:1px solid color-mix(in oklab,var(--line) 40%,transparent);background:color-mix(in oklab,var(--bg) 40%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mock-revision-reader{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:32px 40px;background:transparent;display:flex;justify-content:center;align-items:flex-start;gap:30px}.toc-rail{position:sticky;top:0;align-self:flex-start;width:260px;margin-right:-246px;flex-shrink:0;min-height:0;max-height:100%;display:flex;flex-direction:column;gap:8px;padding-top:16px;z-index:50;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;scroll-behavior:smooth;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0,black 18px,black calc(100% - 18px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,black 18px,black calc(100% - 18px),transparent 100%)}.toc-rail::-webkit-scrollbar{display:none}.mock-revision-reader [data-toc-slug]{scroll-margin-top:32px}.toc-tick{display:flex;align-items:center;background:none;border:none;padding:0;cursor:pointer;text-align:left;font-size:13px;color:var(--ink-3);font-family:inherit;position:relative;height:16px;pointer-events:auto;width:22px;align-self:flex-start;flex-shrink:0}.toc-tick-mark{width:14px;height:2px;border-radius:2px;background:var(--line-2);transition:width .3s ease,background .3s ease;flex-shrink:0}.toc-tick-label{position:absolute;left:28px;top:50%;transform:translateY(-50%) translate(-8px) scale(.95);padding:8px 16px;border-radius:12px;border:1px solid color-mix(in oklab,var(--line) 40%,transparent);background:color-mix(in oklab,var(--bg-1) 85%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:opacity .25s ease,transform .25s cubic-bezier(.175,.885,.32,1.275);opacity:0;white-space:normal;max-width:240px;line-height:1.35;pointer-events:none;font-weight:650;font-size:14.5px;box-shadow:0 4px 12px #00000014;z-index:50}.toc-tick:hover .toc-tick-mark{background:var(--ink-2);width:20px}.toc-tick:hover .toc-tick-label{opacity:1;transform:translateY(-50%) translate(0) scale(1);pointer-events:auto}.toc-tick.active .toc-tick-mark{background:var(--accent);width:20px}.toc-tick.active:hover .toc-tick-label{color:var(--ink);border-color:color-mix(in oklab,var(--accent) 30%,transparent);background:color-mix(in oklab,var(--accent) 10%,var(--bg-1))}.toc-tick.today-target .toc-tick-mark{background:#f59e0b;width:22px;box-shadow:0 0 12px #f59e0bb3}.toc-tick.today-target.active .toc-tick-mark{background:#f59e0b;width:26px;box-shadow:0 0 16px #f59e0bd9}.toc-tick.today-target .toc-tick-label{border-color:color-mix(in oklab,#f59e0b 35%,transparent)}.toc-today-pill{display:inline-block;font-size:10px;font-weight:700;color:#f59e0b;margin-right:6px;padding:1px 5px;border-radius:4px;background:#f59e0b26}.narration-acts .chip.today-target{border-color:#f59e0b!important;background:#f59e0b26!important;color:#f59e0b!important;font-weight:600}.mock-revision-chapter{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:12px 14px;border:1px solid color-mix(in oklab,var(--line) 60%,transparent);border-radius:10px;background:color-mix(in oklab,var(--bg-1) 60%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink);text-align:left;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000005}.mock-revision-chapter:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000000f;border-color:color-mix(in oklab,var(--accent) 40%,transparent);background:color-mix(in oklab,var(--bg-1) 80%,transparent)}.mock-revision-chapter.active{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,var(--bg-1));box-shadow:0 4px 12px color-mix(in oklab,var(--accent) 15%,transparent)}.mock-revision-chapter-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:650}.mock-revision-chapter-meta{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-3);font-size:11px}.chapter-revision-markdown{flex:1;min-width:0;overflow-wrap:anywhere;max-width:960px;margin:0;padding:40px 48px;background:var(--bg-1);border:1px solid color-mix(in oklab,var(--line) 40%,transparent);border-radius:16px;box-shadow:0 8px 32px #0000000a;color:var(--ink-2);line-height:1.75;font-size:15.5px}.chapter-revision-markdown.font-caveat{font-family:Caveat,cursive!important;font-size:24px!important;line-height:1.5!important;letter-spacing:.5px}.chapter-revision-markdown.font-caveat h1,.chapter-revision-markdown.font-caveat h2,.chapter-revision-markdown.font-caveat h3,.chapter-revision-markdown.font-caveat h4,.chapter-revision-markdown.font-caveat h5,.chapter-revision-markdown.font-caveat h6{font-family:Caveat,cursive!important;font-weight:700}.chapter-revision-markdown.font-patrick{font-family:Patrick Hand,cursive!important;font-size:22px!important;line-height:1.6!important}.chapter-revision-markdown.font-patrick h1,.chapter-revision-markdown.font-patrick h2,.chapter-revision-markdown.font-patrick h3,.chapter-revision-markdown.font-patrick h4,.chapter-revision-markdown.font-patrick h5,.chapter-revision-markdown.font-patrick h6{font-family:Patrick Hand,cursive!important;font-weight:400}.chapter-revision-markdown.font-indie{font-family:Indie Flower,cursive!important;font-size:22px!important;line-height:1.6!important}.chapter-revision-markdown.font-indie h1,.chapter-revision-markdown.font-indie h2,.chapter-revision-markdown.font-indie h3,.chapter-revision-markdown.font-indie h4,.chapter-revision-markdown.font-indie h5,.chapter-revision-markdown.font-indie h6{font-family:Indie Flower,cursive!important;font-weight:400}.chapter-revision-markdown h1{margin:0 0 24px;color:var(--ink);font-size:32px;line-height:1.2;background:linear-gradient(135deg,var(--ink) 0%,color-mix(in oklab,var(--ink) 60%,var(--accent)) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.chapter-revision-markdown h2{margin:32px 0 16px;padding-top:20px;border-top:1px solid color-mix(in oklab,var(--line) 60%,transparent);color:var(--ink);font-size:22px}.chapter-revision-markdown h3{margin:24px 0 10px;color:var(--ink);font-size:17px}.chapter-revision-markdown p,.chapter-revision-markdown ul,.chapter-revision-markdown ol,.chapter-revision-markdown table{margin:0 0 16px}.chapter-revision-markdown li{margin:8px 0}.chapter-revision-markdown strong{color:var(--ink);font-weight:650}.chapter-revision-markdown table{width:100%;border-collapse:separate;border-spacing:0;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px;border:1px solid color-mix(in oklab,var(--line) 60%,transparent)}.chapter-revision-markdown th,.chapter-revision-markdown td{padding:10px 14px;border-bottom:1px solid color-mix(in oklab,var(--line) 60%,transparent);border-right:1px solid color-mix(in oklab,var(--line) 60%,transparent);vertical-align:top;white-space:normal;overflow-wrap:break-word;word-break:normal}.chapter-revision-markdown th:last-child,.chapter-revision-markdown td:last-child{border-right:none}.chapter-revision-markdown tr:last-child td{border-bottom:none}.chapter-revision-markdown th{color:var(--ink);background:color-mix(in oklab,var(--bg) 60%,transparent);font-weight:600;text-align:left}@media (max-width: 860px){.mock-revision-header{grid-template-columns:minmax(0,1fr) auto}.mock-revision-header-current{grid-column:1 / -1;grid-template-columns:1fr;align-items:start}.mock-revision-header-actions{justify-content:flex-start}.mock-revision-body{grid-template-columns:1fr}.mock-revision-sidebar{max-height:280px;border-right:0;border-bottom:1px solid var(--line)}.chapter-revision-markdown{padding:20px 18px 28px}}.narration-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9990;background:var(--bg);display:flex;flex-direction:column;animation:narrationIn .22s cubic-bezier(.2,.8,.2,1)}@keyframes narrationIn{0%{opacity:0;transform:scale(.995)}to{opacity:1;transform:none}}.narration-full-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 28px;border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--bg-1) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.narration-full-body{flex:1 1 auto;min-height:0;display:flex;align-items:stretch}.narration-acts{flex:0 0 236px;display:flex;flex-direction:column;gap:6px;padding:18px 14px;border-right:1px solid var(--line);overflow-y:auto}.narration-acts-label{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;padding-left:2px}.narration-acts .chip{text-align:left;white-space:normal;line-height:1.35;padding:8px 10px}.narration-read{flex:1 1 auto;min-width:0;overflow-y:auto;padding:30px 40px 220px 50px;font-family:var(--font-body);font-size:17px;line-height:1.95;white-space:pre-wrap;color:var(--ink-1)}.narration-read>*{max-width:none;margin-inline:0}.narration-read .scratch-tools{left:-48px}@media (max-width: 900px){.narration-full-head{padding:12px 16px}.narration-full-body{flex-direction:column}.narration-acts{flex:0 0 auto;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:10px 14px;gap:8px;align-items:center}.narration-acts .chip{white-space:nowrap;flex:0 0 auto}.narration-acts-label{margin:0 6px 0 0;flex:0 0 auto}.narration-read{padding:20px 18px 240px 52px;font-size:16.5px}.narration-read .scratch-tools{left:-50px}}.tts-player-bar{position:fixed;bottom:32px;left:50%;transform:translate(-50%);width:calc(100% - 48px);max-width:760px;background:var(--bg-1);border:1px solid var(--line);border-radius:20px;padding:18px 24px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-lg);z-index:9999;transition:all .4s cubic-bezier(.2,.8,.2,1);animation:slideUpFade .5s cubic-bezier(.2,.8,.2,1) forwards;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%,30px) scale(.95)}to{opacity:1;transform:translate(-50%) scale(1)}}.tts-player-bar.minimized{padding:10px 14px;border-radius:99px;max-width:760px;bottom:24px;gap:0}.tts-compact-row{min-width:0;display:flex;align-items:center;gap:10px}.tts-compact-nav,.tts-compact-actions{flex:0 0 auto;display:flex;align-items:center;gap:5px}.tts-compact-label{flex:1 1 auto;min-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tts-player-bar .tts-compact-skip{width:30px;min-width:30px;padding-inline:0;font:700 17px/1 JetBrains Mono,monospace}@media (max-width: 640px){.tts-player-bar.minimized{width:calc(100% - 16px);bottom:calc(72px + env(safe-area-inset-bottom,0px));border-radius:14px}.tts-compact-row{flex-wrap:wrap;gap:7px}.tts-compact-label{order:-1;flex-basis:100%}.tts-compact-actions{margin-left:auto}}.tts-player-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.tts-player-text{font-size:14px;color:var(--ink);line-height:1.5;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tts-player-text strong{color:var(--accent);margin-right:6px;font-weight:600;letter-spacing:.2px}.tts-player-bar.minimized .tts-player-text{white-space:nowrap;-webkit-line-clamp:unset;display:block;font-size:13px}.tts-progress-container{position:relative;height:6px;background:var(--bg-3);border-radius:99px;cursor:pointer;overflow:hidden;transition:height .2s ease,transform .2s}.tts-progress-container:hover{height:8px;transform:scaleY(1.1)}.tts-progress-buffer{position:absolute;top:0;left:0;height:100%;background:var(--line-2);border-radius:99px;transition:width .3s ease-out}.tts-progress-play{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:99px;transition:width .1s linear;box-shadow:0 0 14px var(--accent-2)}.tts-player-controls{display:flex;align-items:center;justify-content:space-between;margin-top:2px}.tts-player-buttons{display:flex;align-items:center;gap:10px}.tts-player-bar .btn{border-radius:99px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .25s cubic-bezier(.2,.8,.2,1);border:none;cursor:pointer}.tts-player-bar .btn-primary{background:var(--ink);color:var(--bg);box-shadow:var(--shadow-md)}.tts-player-bar .btn-primary:hover{background:var(--ink-2);transform:translateY(-2px);box-shadow:var(--shadow-md)}.tts-player-bar .btn-ghost{background:transparent;color:var(--ink-2)}.tts-player-bar .btn-ghost:hover{background:var(--bg-3);color:var(--ink)}.tts-player-bar .btn-sm{padding:6px 12px;height:auto}.tts-player-bar .btn-xs{padding:4px 10px;font-size:11px}.tts-speed-selector{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;background:var(--bg-2);padding:4px;border-radius:99px;border:1px solid var(--line)}.tts-speed-btn{font-size:11px;font-weight:600;color:var(--ink-3);padding:4px 8px;border-radius:99px;transition:all .2s cubic-bezier(.2,.8,.2,1);cursor:pointer;background:transparent;border:none;outline:none;font-family:inherit}.tts-speed-btn:hover{color:var(--ink);background:var(--bg-3)}.tts-speed-btn.active{color:var(--bg);background:var(--ink);box-shadow:var(--shadow)}::highlight(ca-tts),::highlight(study-tts){background-color:#a3e635;color:#1f2937}tr.tts-row-highlight{background-color:#a3e6351f!important;outline:2px solid rgba(163,230,53,.5);outline-offset:-1px;border-radius:4px;transition:background-color .3s ease}tr.tts-row-highlight td{color:var(--ink)!important}.tts-zen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;background:var(--bg);animation:zenFadeIn .25s ease-out}@keyframes zenFadeIn{0%{opacity:0}to{opacity:1}}.tts-zen-stage{--zen-scale: 1;flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch}.tts-zen-table-header{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:6px;justify-content:center;padding:14px 24px 0}.tts-zen-table-header-pill{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:4px 10px}.tts-zen-lines{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:calc(18px * var(--zen-scale));padding:40px max(24px,6vw);overflow-y:auto;max-width:1100px;margin-inline:auto;width:100%}.tts-zen-sentence{font-size:calc(20px * var(--zen-scale));line-height:1.55;font-family:Inter,-apple-system,system-ui,sans-serif;letter-spacing:-.01em;color:var(--ink-3);transition:opacity .3s ease,transform .3s cubic-bezier(.2,.8,.2,1);will-change:opacity,transform;word-break:break-word;text-align:center}.tts-zen-sentence.past{font-size:calc(17px * var(--zen-scale));color:var(--ink-4);opacity:.36;transform:scale(.94)}.tts-zen-sentence.future{font-size:calc(17px * var(--zen-scale));color:var(--ink-3);opacity:.52;transform:scale(.97)}.tts-zen-sentence.active{font-size:calc(30px * var(--zen-scale));line-height:1.45;font-weight:600;color:var(--ink);opacity:1;transform:none;padding:4px 0}.tts-zen-table-card{display:grid;gap:8px;width:min(760px,100%);margin-inline:auto;padding:calc(18px * var(--zen-scale)) calc(22px * var(--zen-scale));background:var(--bg-1);border:1px solid var(--line-2);border-radius:14px;text-align:left;box-shadow:var(--shadow-lg)}.tts-zen-table-card-row{display:grid;grid-template-columns:minmax(90px,30%) 1fr;gap:14px;align-items:baseline;padding-bottom:8px;border-bottom:1px solid color-mix(in oklab,var(--line) 60%,transparent)}.tts-zen-table-card-row:last-child{border-bottom:0;padding-bottom:0}.tts-zen-table-card-row:first-child .tts-zen-table-card-value{font-size:calc(24px * var(--zen-scale));font-weight:650;color:var(--ink)}.tts-zen-table-card-label{font-size:calc(11px * var(--zen-scale));letter-spacing:.07em;text-transform:uppercase;color:var(--ink-4)}.tts-zen-table-card-value{font-size:calc(18px * var(--zen-scale));line-height:1.5;color:var(--ink-1)}.tts-zen-footer{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(16px,4vw) calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--bg-1)}.tts-zen-transport{display:flex;align-items:center;gap:6px}.tts-zen-speeds{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}.tts-zen-exit{color:var(--ink-3)}.tts-zen-counter{font-size:11.5px;color:var(--ink-4);font-variant-numeric:tabular-nums;margin-left:6px}.chapter-revision-markdown mark.semantic-term,.battle-card-container mark.semantic-term{background:color-mix(in oklab,var(--accent, #6366f1) 14%,transparent);color:inherit;padding:1px 4px;border-radius:4px;font-weight:600}.chapter-revision-markdown .cloze-tape,.battle-card-container .cloze-tape{display:inline-block;position:relative;background:color-mix(in oklab,var(--accent, #6366f1) 12%,var(--bg-1, #ffffff));border:1.5px dashed color-mix(in oklab,var(--accent, #6366f1) 45%,transparent);border-radius:4px;padding:0 6px;margin:0 2px;color:transparent!important;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease-out,border .15s ease-out;min-width:28px;text-align:center;vertical-align:baseline;line-height:inherit}.chapter-revision-markdown .cloze-tape.revealed,.chapter-revision-markdown .cloze-tape:hover,.battle-card-container .cloze-tape.revealed,.battle-card-container .cloze-tape:hover{background:color-mix(in oklab,var(--accent, #6366f1) 8%,transparent);border:1.5px solid color-mix(in oklab,var(--accent, #6366f1) 35%,transparent);color:var(--ink, #1e293b)!important;font-weight:600}.battle-card-container{max-width:820px;margin:0 auto;padding:8px 16px 40px}.battle-card-container h1,.battle-card-container h2{font-size:16px;font-weight:700;margin:20px 0 10px;padding-bottom:4px;border-bottom:1.5px solid color-mix(in oklab,var(--line) 80%,transparent);color:var(--ink);letter-spacing:-.01em}.battle-card-container table{width:100%;margin:12px 0 20px;border-collapse:separate;border-spacing:0;border-radius:8px;border:1px solid color-mix(in oklab,var(--line) 70%,transparent);background:var(--bg-1, #ffffff);box-shadow:0 1px 3px #0000000a}.battle-card-container th{background:color-mix(in oklab,var(--accent, #6366f1) 8%,var(--bg-2, #f8fafc));color:var(--ink);font-weight:650;font-size:13px;padding:8px 12px;border-bottom:1px solid color-mix(in oklab,var(--line) 80%,transparent);text-align:left}.battle-card-container td{font-size:13.5px;padding:7px 12px;border-bottom:1px solid color-mix(in oklab,var(--line) 40%,transparent);border-right:1px solid color-mix(in oklab,var(--line) 40%,transparent);line-height:1.45}.battle-card-container td:last-child,.battle-card-container th:last-child{border-right:none}.battle-card-container tr:last-child td{border-bottom:none}.battle-card-container ul{padding-left:18px;margin:8px 0 16px}.battle-card-container li{font-size:14px;line-height:1.55;margin:6px 0}.font-dropdown-item{padding:8px 12px;border-radius:8px;cursor:pointer;color:var(--ink-2);background:transparent;border:none;text-align:left;transition:all .15s ease;display:flex;align-items:center;justify-content:space-between;display:flex!important;flex-direction:column!important;gap:6px;-webkit-line-clamp:unset!important;-webkit-box-orient:unset!important}.tts-zen-table-card-row{display:flex;align-items:baseline;gap:10px;padding:2px 0}.tts-zen-table-card-label{flex-shrink:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#a3e635;opacity:.85;min-width:80px;font-family:Inter,-apple-system,system-ui,sans-serif}.tts-zen-table-card-value{font-size:20px;font-weight:550;color:var(--ink);line-height:1.4;font-family:Inter,-apple-system,system-ui,sans-serif}@media (max-width: 640px){.tts-zen-lines{padding:24px 18px;gap:calc(12px * var(--zen-scale))}.tts-zen-sentence{font-size:calc(16px * var(--zen-scale))}.tts-zen-sentence.active{font-size:calc(23px * var(--zen-scale))}.tts-zen-sentence.past,.tts-zen-sentence.future{font-size:calc(14px * var(--zen-scale))}.tts-zen-footer{padding:10px 16px 14px}.tts-zen-table-header{padding:12px 16px 10px;gap:6px}.tts-zen-table-header-pill{font-size:10px;padding:3px 10px}.tts-zen-table-card-label{font-size:10px;min-width:60px}.tts-zen-table-card-value{font-size:17px}}.chapter-revision-markdown .bionic{font-weight:700}.chapter-revision-markdown.focus-mode>*{opacity:.35;transition:opacity .18s ease}.chapter-revision-markdown.focus-mode>*:hover{opacity:1}.chapter-revision-markdown .cloze{filter:blur(5px);background:#7d7d7d24;border-radius:4px;padding:0 2px;transition:filter .12s ease;cursor:help}.chapter-revision-markdown .cloze:hover{filter:none}.chapter-revision-markdown blockquote.callout{margin:16px 0;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#7d7d7d0f}.chapter-revision-markdown blockquote.callout>:first-child{margin-top:0}.chapter-revision-markdown blockquote.callout>:last-child{margin-bottom:0}.chapter-revision-markdown blockquote.callout-trap{border-left:4px solid #f97316;background:#f973161a}.chapter-revision-markdown blockquote.callout-article{border-left:4px solid #3b82f6;background:#3b82f61a}.chapter-revision-markdown blockquote.callout-mnemonic{border-left:4px solid #a855f7;background:#a855f71f}.chapter-revision-markdown .heat-h2{border-left:4px solid transparent;padding-left:12px}.chapter-revision-markdown .heat-h2.heat-red{border-left-color:#ef4444}.chapter-revision-markdown .heat-h2.heat-orange{border-left-color:#f97316}.chapter-revision-markdown .heat-h2.heat-yellow{border-left-color:#eab308}.chapter-revision-markdown .heat-h2.heat-green{border-left-color:#22c55e}.chapter-revision-markdown .heat-h2.heat-untested{border-left-color:#94a3b8}.chapter-revision-markdown .heat-testme{float:right;margin-left:10px;font-size:11px;font-weight:600;padding:2px 11px;border-radius:999px;border:1px solid transparent;color:#fff;cursor:pointer;line-height:1.7}.chapter-revision-markdown .heat-testme.heat-red{background:#ef4444}.chapter-revision-markdown .heat-testme.heat-orange{background:#f97316}.chapter-revision-markdown .heat-testme.heat-yellow{background:#eab308;color:#3a2f00}.chapter-revision-markdown .heat-testme.heat-green{background:#22c55e;color:#052e12}.chapter-revision-markdown .heat-testme.heat-untested{background:#94a3b8}.font-dropdown{position:relative;display:inline-block}.font-dropdown-content{visibility:hidden;opacity:0;position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-1);border:1px solid color-mix(in oklab,var(--line) 40%,transparent);box-shadow:0 10px 30px #00000014;border-radius:12px;min-width:180px;z-index:1000;padding:6px;display:flex;flex-direction:column;gap:2px;transform:translateY(-5px);transition:all .2s cubic-bezier(.16,1,.3,1);pointer-events:none}.font-dropdown:hover .font-dropdown-content{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.font-dropdown-item{padding:8px 12px;border-radius:8px;cursor:pointer;color:var(--ink-2);background:transparent;border:none;text-align:left;transition:all .15s ease;display:flex;align-items:center;justify-content:space-between}.font-dropdown-item:hover{background:var(--bg-2);color:var(--ink)}.font-dropdown-item.active{background:#a3e63526;color:var(--ink)}.ca-bar{margin-bottom:14px;padding:12px 14px;background:var(--bg-1);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:10px}.ca-bar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ca-url-wrap{flex:1;min-width:240px;display:flex;align-items:center;gap:8px;padding:0 10px;height:34px;background:var(--bg);border:1px solid var(--line);border-radius:8px;color:var(--ink-3);transition:border-color .15s ease}.ca-url-wrap:focus-within{border-color:var(--accent);color:var(--accent)}.ca-url-input{flex:1;height:100%;border:0;background:transparent;outline:none;color:var(--ink);font-size:13px}.ca-url-input::placeholder{color:var(--ink-3)}.ca-bar-meta{display:flex;gap:14px;flex-wrap:wrap}.ca-mono-dim{font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;color:var(--ink-3)}.ca-queue-row{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:7px;background:var(--bg);border:1px solid var(--line);font-size:12px}.ca-queue-dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--ink-3)}.ca-queue-row.is-running .ca-queue-dot{background:var(--accent);animation:ca-pulse 1.1s ease-in-out infinite}.ca-queue-row.is-failed .ca-queue-dot{background:var(--bad, #d9534f)}.ca-queue-row.is-paste .ca-queue-dot{background:var(--warn)}.ca-queue-row.is-paste{border-left:2px solid var(--warn)}.ca-queue-row.is-done{opacity:.72}@keyframes ca-pulse{0%,to{opacity:1}50%{opacity:.25}}.ca-queue-url{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.ca-queue-msg{color:var(--ink-3);font-size:11px;flex:none}.ca-gate-note{padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.55;background:color-mix(in oklab,var(--warn) 8%,transparent);border:1px solid color-mix(in oklab,var(--warn) 30%,transparent);color:var(--ink-2)}.ca-gate-reasons{margin:6px 0 0;padding-left:18px;color:var(--ink-3)}.ca-gate-reasons li{margin:2px 0}.ca-read-badge{color:var(--info);border-color:color-mix(in oklab,var(--info) 40%,transparent)}.ca-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--bg)}.ca-workspace{width:100%;max-width:100%;overflow-x:hidden;height:100dvh;display:grid;grid-template-rows:1fr auto}.ca-header{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--bg-1)}.ca-header-mid{flex:1;text-align:center;min-width:0}.ca-header-date{font-size:13px;font-weight:600;color:var(--ink)}.ca-header-sub{font-size:11px;color:var(--ink-3);margin-top:1px}.ca-icon-btn{border:0;background:transparent;color:var(--ink-3);cursor:pointer;padding:4px 7px;border-radius:6px;font-size:13px;line-height:1;transition:background .15s ease,color .15s ease}.ca-icon-btn:hover{background:var(--bg-2);color:var(--ink)}.ca-main{display:grid;grid-template-columns:268px 1fr;min-height:0}.ca-sidebar{border-right:1px solid var(--line);background:var(--bg-1);overflow-y:auto;padding:14px 10px;display:flex;flex-direction:column;gap:2px}.ca-sidebar-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-3);padding:4px 8px 8px}.ca-topic{display:flex;gap:9px;align-items:flex-start;width:100%;padding:9px 10px;border-radius:8px;border:0;background:transparent;text-align:left;cursor:pointer;color:var(--ink-2);border-left:2px solid transparent;transition:background .14s ease,color .14s ease}.ca-topic:hover{background:var(--bg-2);color:var(--ink)}.ca-topic.is-active{background:var(--bg-2);color:var(--ink);border-left-color:var(--accent)}.ca-topic.is-target{background:#d9775714;border-left-color:var(--accent-2)}.ca-topic.is-target .ca-topic-title{font-weight:600}.ca-topic.is-target .ca-topic-meta{color:var(--accent-2)}.ca-topic-num{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;color:var(--ink-3);padding-top:2px;flex:none}.ca-topic-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ca-topic-title{font-size:12.5px;line-height:1.35}.ca-topic-meta{font-size:10px;color:var(--ink-3)}.ca-tracked{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}.ca-tracked-row{padding:7px 10px;border-radius:7px}.ca-tracked-row:hover{background:var(--bg-2)}.ca-tracked-name{font-size:12px;color:var(--ink-2)}.ca-tracked-status{font-size:10.5px;color:var(--accent);margin-top:1px}.ca-body{overflow-y:auto;scroll-behavior:smooth}.ca-article{max-width:1000px;margin:0 auto;padding:24px 28px 80px}.ca-article-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;padding:10px 28px 12px;border-bottom:1px solid var(--line);margin-left:-28px;margin-right:-28px;position:sticky;top:0;z-index:10;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--bg);background:color-mix(in srgb,var(--bg) 85%,transparent)}.ca-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:7px}.ca-article-title{font-family:"Instrument Serif",Georgia,serif;font-size:26px;font-weight:400;line-height:1.18;letter-spacing:-.01em;color:var(--ink);margin:0}.ca-source-link{display:inline-block;margin-top:8px;font-size:11px;color:var(--ink-3);text-decoration:none}.ca-source-link:hover{color:var(--info)}.ca-article-tools{display:flex;gap:6px;flex:none}.ca-danger:hover{color:var(--bad, #d9534f);border-color:var(--bad, #d9534f)}.ca-btn-danger{background:var(--bad, #d9534f);color:#fff}.ca-reading-column{font-size:15.5px;line-height:1.78;color:var(--ink-2)}.ca-md-h1{font-size:26px;margin:30px 0 14px;color:var(--ink);font-weight:650;letter-spacing:-.015em}.ca-md-h2{font-size:21px;margin:32px 0 12px;color:var(--ink);font-weight:640;letter-spacing:-.012em;padding-bottom:7px;border-bottom:1px solid color-mix(in oklab,var(--ink) 9%,transparent)}.ca-md-h3{font-size:17px;margin:24px 0 9px;color:var(--ink);font-weight:620}.ca-md-h4{font-size:14.5px;margin:18px 0 7px;color:var(--ink);font-weight:600}.ca-md-p{margin:13px 0}.ca-md-ul{margin:12px 0;padding-left:21px}.ca-md-li{margin:6px 0}.ca-md-strong{color:var(--ink);font-weight:640}.ca-md-em{color:var(--ink-2)}.ca-md-hr{border:0;border-top:1px solid var(--line);margin:26px 0}.ca-md-quote{margin:16px 0;padding:10px 16px;border-left:3px solid var(--accent);background:color-mix(in oklab,var(--accent) 6%,transparent);border-radius:0 7px 7px 0;color:var(--ink-2)}.ca-md-code{padding:1px 5px;border-radius:4px;font-size:.9em;background:var(--bg-2);border:1px solid var(--line);color:var(--ink)}.ca-md-pre{padding:12px 14px;border-radius:8px;overflow-x:auto;background:var(--bg-2);border:1px solid var(--line);margin:14px 0}.ca-md-table-wrap{overflow-x:auto;margin:16px 0}.ca-md-table{border-collapse:collapse;width:100%;font-size:13px}.ca-md-table th,.ca-md-table td{border:1px solid var(--line);padding:7px 10px;text-align:left}.ca-md-table th{background:var(--bg-2);color:var(--ink);font-weight:600}.ca-md-compact{font-size:13.5px;line-height:1.62}.ca-static-link{border:0;background:transparent;padding:0;cursor:pointer;color:var(--info);font:inherit;line-height:inherit;text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--info) 42%,transparent);text-underline-offset:2.5px;text-decoration-thickness:1px;transition:color .13s ease,text-decoration-color .13s ease}.ca-static-link:hover{color:var(--accent);text-decoration-color:var(--accent)}.ca-link-dead{color:inherit}.ca-footer{display:flex;align-items:center;gap:10px;padding:9px 18px calc(9px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg-1);flex-wrap:wrap}.ca-footer-btn{border:1px solid var(--line);background:var(--bg);color:var(--ink-2);border-radius:20px;padding:5px 14px;font-size:12px;cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease}.ca-footer-btn:hover{border-color:var(--accent);color:var(--ink);background:var(--bg-2)}.ca-footer-hint{margin-left:auto;font-size:10.5px;color:var(--ink-3)}.ca-popup-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:var(--overlay, rgba(0,0,0,.5));display:grid;place-items:center;padding:20px;animation:ca-fade .13s ease}@keyframes ca-fade{0%{opacity:0}to{opacity:1}}.ca-popup{width:min(620px,94vw);max-height:86vh;background:var(--bg-1);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 48px #00000057;display:flex;flex-direction:column;overflow:hidden;animation:ca-rise .16s cubic-bezier(.2,.7,.3,1)}@keyframes ca-rise{0%{transform:translateY(8px);opacity:.4}to{transform:none;opacity:1}}.ca-popup-wide{width:min(760px,95vw)}.ca-popup-sm{width:min(440px,92vw)}.ca-popup-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line);flex:none}.ca-popup-title-wrap{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.ca-popup-title{font-family:"Instrument Serif",Georgia,serif;font-size:20px;color:var(--ink);line-height:1.2}.ca-popup-actions{display:flex;align-items:center;gap:6px;flex:none}.ca-popup-body{padding:16px;overflow-y:auto;flex:1}.ca-popup-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:11px 16px;border-top:1px solid var(--line);flex:none}.ca-popup-foot .ca-mono-dim{margin-right:auto}.ca-chip{font-size:10px;padding:2px 8px;border-radius:20px;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-3)}.ca-chip-edited{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 38%,transparent)}.ca-chip-btn{cursor:pointer;transition:all .13s ease}.ca-chip-btn:hover{color:var(--ink);border-color:var(--ink-3)}.ca-chip-btn.is-active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.ca-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.ca-edit-area{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:11px 13px;color:var(--ink);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12.5px;line-height:1.65;resize:vertical;outline:none}.ca-edit-area:focus{border-color:var(--accent)}.ca-edit-area-lg{min-height:380px}.ca-edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.ca-drill-tabs,.ca-lib-tabs{display:flex;gap:4px}.ca-tab{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;background:transparent;color:var(--ink-3);padding:6px 12px;border-radius:7px;font-size:12.5px;cursor:pointer;transition:all .14s ease}.ca-tab:hover{color:var(--ink);background:var(--bg-2)}.ca-tab.is-active{color:var(--ink);background:var(--bg-2);border-color:var(--line)}.ca-tab-count{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;color:var(--ink-3)}.ca-lib-tabs{margin-bottom:16px}.ca-progress-track{height:2px;background:var(--bg-2);flex:none}.ca-progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.ca-question{font-size:15px;line-height:1.65;color:var(--ink);margin-bottom:16px}.ca-options{display:flex;flex-direction:column;gap:7px}.ca-option{display:flex;align-items:flex-start;gap:11px;width:100%;padding:11px 13px;border-radius:9px;cursor:pointer;text-align:left;background:var(--bg);border:1px solid var(--line);color:var(--ink-2);font-size:13.5px;line-height:1.5;transition:border-color .14s ease,background .14s ease,opacity .14s ease}.ca-option:hover:not(:disabled){border-color:var(--accent);background:var(--bg-2)}.ca-option:disabled{cursor:default}.ca-option-letter{font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;color:var(--ink-3);padding-top:2px;flex:none;width:14px}.ca-option-text{flex:1}.ca-option-mark{flex:none;font-size:14px}.ca-option.is-correct{border-color:var(--good);background:color-mix(in oklab,var(--good) 11%,transparent);color:var(--ink)}.ca-option.is-correct .ca-option-mark{color:var(--good)}.ca-option.is-wrong{border-color:var(--bad, #d9534f);background:color-mix(in oklab,var(--bad, #d9534f) 11%,transparent)}.ca-option.is-wrong .ca-option-mark{color:var(--bad, #d9534f)}.ca-option.is-dim{opacity:.42}.ca-reveal{margin-top:16px;display:flex;flex-direction:column;gap:11px}.ca-reveal-block{padding:11px 13px;border-radius:8px;background:var(--bg);border:1px solid var(--line)}.ca-reveal-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-3);margin-bottom:5px}.ca-trap{border-left:2px solid var(--warn);background:color-mix(in oklab,var(--warn) 7%,transparent)}.ca-trap .ca-reveal-label{color:var(--warn)}.ca-lib-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.ca-lib-count{text-align:right}.ca-lib-count-num{display:block;font-family:"Instrument Serif",Georgia,serif;font-size:34px;line-height:1;color:var(--accent)}.ca-lib-count-label{font-size:10.5px;color:var(--ink-3);letter-spacing:.05em}.ca-lib-controls{margin-bottom:12px}.ca-search{display:flex;align-items:center;gap:9px;height:38px;padding:0 12px;background:var(--bg-1);border:1px solid var(--line);border-radius:9px;color:var(--ink-3);transition:border-color .15s ease}.ca-search:focus-within{border-color:var(--accent);color:var(--accent)}.ca-search-input{flex:1;border:0;background:transparent;outline:none;color:var(--ink);font-size:13.5px;height:100%}.ca-lib-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(232px,1fr))}.ca-lib-card{display:flex;flex-direction:column;gap:5px;text-align:left;padding:13px 14px;border-radius:10px;cursor:pointer;background:var(--bg-1);border:1px solid var(--line);transition:border-color .15s ease,transform .15s ease,background .15s ease}.ca-lib-card:hover{border-color:var(--accent);transform:translateY(-1px);background:var(--bg-2)}.ca-lib-card-top{display:flex;align-items:center;gap:7px;justify-content:space-between}.ca-lib-card-title{font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.3}.ca-lib-card-subject{font-size:10px;color:var(--accent);letter-spacing:.04em}.ca-lib-card-preview{font-size:11.5px;line-height:1.5;color:var(--ink-3);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ca-tracked-list{display:flex;flex-direction:column;gap:10px}.ca-tracked-card{padding:14px 16px;border-radius:10px;background:var(--bg-1);border:1px solid var(--line)}.ca-tracked-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;flex-wrap:wrap}.ca-tracked-card-name{font-size:14px;font-weight:600;color:var(--ink)}.ca-tracked-badge{font-size:11px;padding:3px 10px;border-radius:20px;background:color-mix(in oklab,var(--accent) 14%,transparent);border:1px solid color-mix(in oklab,var(--accent) 34%,transparent);color:var(--accent)}.ca-tracked-time{font-size:10px;color:var(--ink-3);margin-top:7px}.ca-empty{padding:30px 16px;text-align:center;color:var(--ink-3);font-size:13px}.ca-empty-sm{padding:14px 8px;font-size:12px;text-align:left}@media (max-width: 900px){.ca-main{grid-template-columns:1fr}.ca-sidebar{border-right:0;border-bottom:1px solid var(--line);max-height:168px;flex-direction:row;overflow-x:auto;gap:6px;align-items:flex-start}.ca-sidebar-label,.ca-tracked{display:none}.ca-topic{width:auto;min-width:168px;border-left:0;border-bottom:2px solid transparent}.ca-topic.is-active{border-bottom-color:var(--accent)}.ca-article{padding:22px 18px 70px}.ca-article-title{font-size:25px}.ca-article-head{flex-direction:column}}.ca-queue-row{align-items:flex-start}.ca-queue-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.ca-queue-line{display:flex;align-items:baseline;gap:10px;justify-content:space-between}.ca-queue-elapsed,.ca-queue-pct{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;color:var(--ink-3);flex:none}.ca-queue-track{height:2px;border-radius:2px;background:var(--bg-2);margin-top:3px;overflow:hidden}.ca-queue-bar{height:100%;background:var(--accent);border-radius:2px;transition:width .6s cubic-bezier(.3,.8,.4,1)}.ca-queue-row.is-running{border-left:2px solid var(--accent)}.ca-queue-row.is-needs_paste{border-left:2px solid var(--warn)}.ca-queue-row.is-needs_paste .ca-queue-dot,.ca-queue-row.is-blocked .ca-queue-dot{background:var(--warn)}.ca-queue-row.is-done .ca-queue-dot{background:var(--good)}.ca-queue-row.is-failed .ca-queue-dot{background:var(--bad)}.ca-queue-row.is-running .ca-queue-dot{margin-top:5px}.ca-working{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:var(--accent)}.ca-working .ca-queue-dot{background:var(--accent);animation:ca-pulse 1.1s ease-in-out infinite}.ca-shelf{margin-bottom:16px}.ca-shelf-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:9px}.ca-shelf-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.ca-day-card{display:flex;align-items:baseline;gap:8px;cursor:pointer;padding:12px 13px;border-radius:10px;text-align:left;background:var(--bg-1);border:1px solid var(--line);transition:border-color .15s ease,transform .15s ease,background .15s ease}.ca-day-card:hover{border-color:var(--accent);transform:translateY(-1px);background:var(--bg-2)}.ca-day-num{font-family:"Instrument Serif",Georgia,serif;font-size:26px;line-height:1;color:var(--ink)}.ca-day-meta{display:flex;flex-direction:column;gap:2px}.ca-day-month{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.ca-day-count{font-size:10.5px;color:var(--ink-3)}.ca-legacy-toggle{display:flex;align-items:center;width:100%;padding:8px 2px;margin-bottom:4px;border:0;background:transparent;cursor:pointer;color:var(--ink-3);font-size:12px;text-align:left}.ca-legacy-toggle:hover{color:var(--ink-2)}.ca-drill-shell{width:min(1100px,96vw);max-height:92vh;overflow-y:auto;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:6px 10px 10px;box-shadow:0 18px 48px #00000057}.ca-drill-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:260;background:var(--bg);overflow-y:auto}.ca-drill-fullscreen .ca-drill-shell{width:100%;max-width:none;margin:0 auto;max-height:none;border:0;border-radius:0;box-shadow:none;background:transparent;padding:14px 20px 40px}.ca-month{margin-bottom:14px}.ca-month-head{display:flex;align-items:baseline;gap:9px;width:100%;padding:7px 2px;margin-bottom:8px;border:0;background:transparent;cursor:pointer;text-align:left;border-bottom:1px solid var(--line)}.ca-month-head:hover .ca-month-name{color:var(--accent)}.ca-month-caret{color:var(--ink-3);font-size:10px;width:10px}.ca-month-name{font-family:"Instrument Serif",Georgia,serif;font-size:17px;color:var(--ink);flex:1;transition:color .14s ease}.ca-day-card.is-recent{border-color:color-mix(in oklab,var(--accent) 34%,var(--line))}.ca-day-card.is-recent .ca-day-num{color:var(--accent)}.ca-pending-strip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 12px;margin-top:6px;border:1px dashed var(--line);border-radius:9px}.ca-pending-days{display:flex;gap:6px;flex-wrap:wrap}.ca-reading-tools{display:flex;align-items:center;gap:6px}.ca-tool-btn{border:1px solid var(--line);background:var(--bg);color:var(--ink-2);border-radius:7px;padding:4px 9px;font-size:11.5px;cursor:pointer;transition:border-color .14s ease,color .14s ease}.ca-tool-btn:hover{border-color:var(--accent);color:var(--ink)}.ca-tool-btn.is-on{border-color:var(--accent);color:var(--accent)}.ca-font-wrap{position:relative}.ca-font-menu{position:absolute;right:0;top:calc(100% + 5px);z-index:20;min-width:172px;padding:5px;background:var(--bg-1);border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 30px #0000004d}.ca-font-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 9px;border:0;background:transparent;color:var(--ink-2);font-size:13px;cursor:pointer;border-radius:6px;text-align:left}.ca-font-item:hover{background:var(--bg-2);color:var(--ink)}.ca-font-item.is-active{color:var(--ink)}.ca-font-tick{color:var(--accent)}.ca-summary-chip{display:inline-flex;align-items:center;gap:6px;margin-top:9px;border:1px solid var(--line);background:var(--bg);color:var(--ink-2);border-radius:7px;padding:4px 11px;font-size:11.5px;cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease}.ca-summary-chip:hover{border-color:var(--accent);color:var(--ink)}.ca-summary-chip.is-ready{color:var(--good);border-color:color-mix(in oklab,var(--good) 55%,transparent);background:color-mix(in oklab,var(--good) 10%,transparent)}.ca-summary-chip.is-busy{opacity:.75;cursor:default}.ca-summary-chip.is-error{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 50%,transparent)}.ca-summary-chip:disabled{cursor:default}.ca-summary-body{overflow-y:auto;overscroll-behavior:contain;padding:26px 34px 60px}.ca-summary-body>*{max-width:760px;margin-inline:auto}@media (max-width: 720px){.ca-summary-body{padding:18px 16px 48px}}.ca-listen{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--bg);color:var(--ink-2);border-radius:7px;padding:4px 11px;font-size:11.5px;cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease}.ca-listen:hover{border-color:var(--accent);color:var(--ink)}.ca-listen.is-ready{color:var(--good);border-color:color-mix(in oklab,var(--good) 55%,transparent);background:color-mix(in oklab,var(--good) 10%,transparent)}.ca-listen.is-playing{color:var(--accent);border-color:var(--accent);background:color-mix(in oklab,var(--accent) 12%,transparent)}.ca-listen:disabled{opacity:.6;cursor:default}.ca-tappable p,.ca-tappable li,.ca-tappable blockquote,.ca-tappable h2,.ca-tappable h3,.ca-tappable h4{cursor:pointer;border-radius:5px;transition:background .12s ease}.ca-tappable p:hover,.ca-tappable li:hover,.ca-tappable blockquote:hover,.ca-tappable h2:hover,.ca-tappable h3:hover,.ca-tappable h4:hover{background:color-mix(in oklab,var(--accent) 7%,transparent)}.ca-tappable .ca-static-link{cursor:pointer}.ca-day-card{position:relative;padding:0;overflow:hidden}.ca-day-open{display:flex;align-items:baseline;gap:8px;width:100%;padding:12px 13px;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit}.ca-day-del{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:var(--ink-3);cursor:pointer;opacity:0;transition:opacity .14s ease,color .14s ease,background .14s ease}.ca-day-card:hover .ca-day-del{opacity:1}.ca-day-del:hover{color:var(--bad);background:color-mix(in oklab,var(--bad) 14%,transparent)}.ca-day-del:focus-visible{opacity:1}.editorial-theme .mock-revision-workspace{background:var(--bg)}.editorial-theme .mock-revision-header{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:14px}.editorial-theme .ca-tool-btn{background:transparent;border:1px solid var(--line-2);border-radius:20px;color:var(--ink-2);transition:all .15s ease}.editorial-theme .ca-tool-btn:hover{border-color:var(--ink);color:var(--ink);background:var(--bg-1)}.editorial-theme .ca-tool-btn.is-on{border-color:var(--accent);color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,transparent)}.editorial-theme .chapter-revision-markdown h1,.editorial-theme .chapter-revision-markdown h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:-.01em;border-bottom:1px solid color-mix(in oklab,var(--line) 70%,transparent);padding-bottom:8px;margin-bottom:16px;color:var(--ink)}.editorial-theme .chapter-revision-markdown h2{font-size:26px}.editorial-theme .chapter-revision-markdown h2:not(:first-child){margin-top:34px}.editorial-theme .chapter-revision-markdown h3{font-weight:600;color:var(--ink-2);margin-top:24px}:root{--pen-1: #f2efe8;--pen-2: #6fa8ff;--pen-3: #ff7b72;--pen-4: #6fd08c;--pen-hl: #ffd54a;--pen-hl-green: #78e08f;--pen-hl-pink: #ff82b2}[data-theme=paper]{--pen-1: #1b1a17;--pen-2: #1f4fd8;--pen-3: #c0261f;--pen-4: #1e7a45;--pen-hl: #ffd54a;--pen-hl-green: #5fd778;--pen-hl-pink: #ff6fa7}[data-theme=sepia]{--pen-1: #f1e4cf;--pen-2: #8db4ff;--pen-3: #ff8a80;--pen-4: #6fd39b;--pen-hl: #ffd54a;--pen-hl-green: #78e08f;--pen-hl-pink: #ff82b2}[data-theme=oled]{--pen-1: #ededed;--pen-2: #7d9ee0;--pen-3: #e06666;--pen-4: #4cc78d;--pen-hl: #ffd54a;--pen-hl-green: #63cf7d;--pen-hl-pink: #ed76a2}.scratch-wrap{position:relative}.book-reader-toolbar{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--bg-1);flex-wrap:wrap}.book-margin-control{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:11px;white-space:nowrap}.book-margin-control select{border:1px solid var(--border);border-radius:6px;background:var(--bg-0);color:var(--ink);padding:4px 6px;font:inherit}.book-page-sheet{background:#fff;--pen-1: #1b1a17;--pen-2: #1f4fd8;--pen-3: #c0261f;--pen-4: #1e7a45;--pen-hl: #ffd54a;--pen-hl-green: #5fd778;--pen-hl-pink: #ff6fa7}.book-page-sheet.has-writing-margin{background:#fffdf7}.book-pdf-frame{background:#fff}.book-page-sheet.margin-left .book-pdf-frame{box-shadow:-1px 0 #4b5b653d}.book-page-sheet.margin-right .book-pdf-frame{box-shadow:1px 0 #4b5b653d}.book-page-sheet.margin-both .book-pdf-frame{box-shadow:-1px 0 #4b5b653d,1px 0 #4b5b653d}.book-highlight-status,.book-annotation-status{border:1px solid var(--border);border-radius:999px;background:color-mix(in oklab,var(--bg-2) 92%,transparent);color:var(--muted);font-size:10px;line-height:1.2;padding:3px 7px}.book-highlight-found,.book-annotation-saved{color:var(--good);border-color:color-mix(in oklab,var(--good) 40%,var(--border))}.book-highlight-not-found,.book-annotation-device,.book-annotation-source-changed{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 42%,var(--border))}.book-annotation-conflict{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 42%,var(--border))}.book-annotation-status{position:absolute;z-index:6;right:7px;top:7px;pointer-events:none;box-shadow:var(--shadow-sm)}.book-page-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px;pointer-events:none}.book-citation-text-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:clip;opacity:0;line-height:1;text-align:initial;text-size-adjust:none;transform-origin:0 0;pointer-events:none;z-index:1}.book-citation-text-layer :is(span,br){position:absolute;color:transparent;white-space:pre;transform-origin:0 0}.book-citation-text-layer span.markedContent{top:0;height:0}.book-citation-highlight-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;overflow:hidden}.book-citation-highlight-mark{position:absolute;border-radius:2px;background:color-mix(in oklab,var(--pen-hl) 62%,transparent);box-shadow:0 0 0 1px color-mix(in oklab,var(--pen-hl) 72%,transparent);mix-blend-mode:multiply}.book-citation-highlight-mark--answer{background:color-mix(in oklab,#d0342c 45%,transparent);box-shadow:0 0 0 1px color-mix(in oklab,#d0342c 60%,transparent)}.book-citation-highlight-mark--context{background:color-mix(in oklab,var(--pen-hl) 62%,transparent);box-shadow:0 0 0 1px color-mix(in oklab,var(--pen-hl) 72%,transparent)}.scratch-hold{position:sticky;top:0;height:0;z-index:4;pointer-events:none}.scratch-canvas{position:absolute;top:0;left:0;pointer-events:none;touch-action:none;transform:translateZ(0);will-change:transform;contain:strict}.scratch-toolhold{position:sticky;top:50dvh;height:0;pointer-events:none;z-index:60}.book-pdf-ink>.scratch-toolhold{position:fixed;top:50dvh;left:max(calc(env(safe-area-inset-left,0px) + 6px),calc(50vw - var(--book-sheet-width) / 2 + 2px))}.book-pdf-ink>.scratch-toolhold .scratch-tools{left:0}.book-pdf-ink>.scratch-toolhold .scratch-tools>*{flex-shrink:0}.scratch-wrap.scratch-reader-fit{flex:1;min-width:0;max-width:960px}.scratch-wrap.scratch-fill{min-height:100%}.scratch-tools{position:absolute;left:max(2px,env(safe-area-inset-left,0px));top:0;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:5px;padding:6px 5px;max-height:calc(100dvh - 72px);overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;overscroll-behavior-block:contain;-webkit-overflow-scrolling:touch;border-radius:11px;pointer-events:auto;background:color-mix(in oklab,var(--bg-2) 72%,transparent);border:1px solid color-mix(in oklab,var(--line) 68%,transparent);opacity:.72;transition:opacity .14s ease,background-color .14s ease}.scratch-tools:hover,.scratch-tools:focus-within,.scratch-tools:active{opacity:1;background:color-mix(in oklab,var(--bg-2) 96%,transparent);border-color:var(--line);box-shadow:var(--shadow-md);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.scratch-tools .scratch-sep{width:16px;height:1px;background:var(--line-2);margin:1px 0;flex:0 0 1px}.scratch-tools>*{flex-shrink:0}.scratch-tools .scratch-close{margin-bottom:2px}.scratch-tools .scratch-clear{margin-top:16px;width:36px;height:44px;padding:3px 2px;flex-direction:column;gap:2px;color:var(--bad);border-color:color-mix(in oklab,var(--bad) 34%,transparent);background:color-mix(in oklab,var(--bad) 8%,transparent)}.scratch-swatch,.scratch-width,.scratch-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:7px;border:1px solid transparent;background:transparent;color:var(--ink-2);cursor:pointer}.scratch-clear-label{font-size:8px;font-weight:700;letter-spacing:.01em}.scratch-toolhold.scratch-toolhold-inline{position:relative;top:auto;height:auto;margin-bottom:12px}.scratch-toolhold-inline .scratch-tools{position:relative;left:auto;top:auto;transform:none;width:fit-content;max-width:100%;max-height:none;overflow:visible}.scratch-swatch{position:relative}.scratch-swatch:after{content:"";width:15px;height:15px;border-radius:50%;background:var(--sw);box-shadow:0 0 0 1px color-mix(in oklab,var(--ink) 22%,transparent)}.scratch-swatch.scratch-highlighter:after{width:18px;height:9px;border-radius:2px;transform:rotate(-10deg);box-shadow:inset 0 -2px color-mix(in oklab,var(--sw) 72%,black),0 0 0 1px color-mix(in oklab,var(--ink) 25%,transparent)}.scratch-width>span{background:currentColor;display:block}.scratch-width:disabled{opacity:.28;cursor:not-allowed}.scratch-swatch.on,.scratch-width.on,.scratch-btn.on{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 16%,transparent);color:var(--ink)}.scratch-btn:hover,.scratch-width:hover,.scratch-swatch:hover{background:color-mix(in oklab,var(--ink) 8%,transparent)}@media print{.scratch-hold,.scratch-toolhold{display:none}}.dp-hero{position:relative;overflow:hidden;padding:24px 26px}.dp-hero:after{content:"";position:absolute;top:-40%;right:55%;bottom:-40%;left:-10%;background:radial-gradient(closest-side,color-mix(in oklab,var(--accent) 13%,transparent),transparent);pointer-events:none}.dp-hero>*{position:relative}.dp-hero-row{display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap}.dp-num{font-family:"Instrument Serif",serif;font-weight:400;font-size:62px;line-height:.88;letter-spacing:-.02em}.dp-num small{font-size:22px;color:var(--ink-3);margin-left:6px;letter-spacing:0}.dp-track{height:5px;border-radius:99px;background:var(--bg-3);overflow:hidden;margin-top:14px}.dp-track>i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .4s ease}.dp-say{font-family:"Instrument Serif",serif;font-size:19px;line-height:1.35;letter-spacing:-.01em;margin-top:16px;color:var(--ink);max-width:62ch}.dp-coach-card{margin-top:16px;padding:16px 18px;border-radius:var(--radius-sm);background:color-mix(in oklab,var(--accent) 7%,var(--bg-2));border:1px solid color-mix(in oklab,var(--accent) 22%,var(--line));display:flex;flex-direction:column;gap:12px}.dp-coach-quote-box{padding:4px 12px 6px 14px;border-left:3px solid var(--accent)}.dp-coach-quote-text{font-family:"Instrument Serif",serif;font-size:19px;line-height:1.35;color:var(--ink);margin:0;letter-spacing:-.01em;font-style:italic}.dp-coach-quote-author{display:block;margin-top:5px;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.dp-coach-peptalk{display:flex;flex-direction:column;gap:8px}.dp-coach-p{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin:0}.dp-coach-tactical-details{border-top:1px dashed color-mix(in oklab,var(--line) 75%,transparent);padding-top:8px;margin-top:2px}.dp-coach-tactical-sum{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);cursor:pointer;-webkit-user-select:none;user-select:none}.dp-coach-tactical-sum:hover{color:var(--ink)}.dp-coach-tactical-body{padding-top:8px;display:flex;flex-direction:column;gap:6px}.dp-coach-tactical-p{font-size:12.5px;line-height:1.5;color:var(--ink-3);margin:0}.dp-coach-footer{display:flex;align-items:center;justify-content:space-between;margin-top:2px;padding-top:6px;border-top:1px solid color-mix(in oklab,var(--line) 60%,transparent)}.dp-coach-model-tag{font-family:JetBrains Mono,monospace;font-size:10.5px;color:var(--ink-4);letter-spacing:.02em}.dp-mission{position:relative;isolation:isolate;overflow:hidden;margin-bottom:14px;padding:20px 22px 15px;border:1px solid color-mix(in oklab,var(--accent) 24%,var(--line));border-radius:calc(var(--radius) + 4px);background:radial-gradient(circle at 9% 4%,color-mix(in oklab,var(--accent) 16%,transparent),transparent 31%),radial-gradient(circle at 86% 12%,color-mix(in oklab,var(--info) 12%,transparent),transparent 28%),linear-gradient(145deg,color-mix(in oklab,var(--bg-1) 91%,var(--accent)),var(--bg-1));box-shadow:var(--shadow-md)}.dp-mission:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:linear-gradient(color-mix(in oklab,var(--line) 42%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in oklab,var(--line) 42%,transparent) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:linear-gradient(to bottom,color-mix(in oklab,var(--ink) 28%,transparent),transparent 74%);mask-image:linear-gradient(to bottom,color-mix(in oklab,var(--ink) 28%,transparent),transparent 74%);opacity:.45}.dp-mission-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:8px}.dp-mission-head h2{margin:5px 0 0;max-width:760px;font-family:"Instrument Serif",Georgia,serif;font-size:27px;font-weight:400;line-height:1.12;letter-spacing:-.015em}.dp-mission-head h2 b{color:var(--accent-2);font-size:1.2em;font-weight:500}.dp-mission-head p{margin:7px 0 0;max-width:78ch;color:var(--ink-3);font-size:11.5px;line-height:1.5}.dp-memory-orbit{width:106px;height:106px;flex:0 0 106px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--ink-2);border:1px solid color-mix(in oklab,var(--good) 36%,var(--line));background:radial-gradient(circle at 38% 32%,color-mix(in oklab,var(--good) 20%,var(--bg-1)),var(--bg-2) 72%);box-shadow:0 0 0 7px color-mix(in oklab,var(--good) 6%,transparent)}.dp-memory-orbit.has-pressure{border-color:color-mix(in oklab,var(--bad) 55%,var(--line));background:radial-gradient(circle at 38% 32%,color-mix(in oklab,var(--bad) 18%,var(--bg-1)),var(--bg-2) 72%);box-shadow:0 0 28px color-mix(in oklab,var(--bad) 22%,transparent),0 0 0 7px color-mix(in oklab,var(--bad) 7%,transparent)}.dp-memory-orbit strong{font-family:"Instrument Serif",Georgia,serif;font-size:28px;font-weight:500;line-height:.95;color:var(--ink)}.dp-memory-orbit span{margin-top:5px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.dp-memory-orbit small{margin-top:3px;font-size:9.5px;color:var(--ink-4)}.dp-mission-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(245px,.8fr);align-items:stretch;gap:18px;margin-top:4px}.dp-mission-subhead{min-height:31px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;color:var(--ink-2)}.dp-mission-subhead>div:first-child{display:flex;flex-direction:column;gap:2px}.dp-mission-subhead span{font-size:10.5px;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.dp-mission-subhead small{color:var(--ink-4);font-size:10px;letter-spacing:0;text-transform:none}.dp-terrain{min-width:0;padding-top:13px}.dp-terrain svg{display:block;width:100%;min-height:174px;overflow:visible}.dp-terrain-grid{stroke:color-mix(in oklab,var(--line) 68%,transparent);stroke-width:1;vector-effect:non-scaling-stroke}.dp-terrain-line{fill:none;stroke:var(--accent-2);stroke-width:2.4;stroke-linecap:round;vector-effect:non-scaling-stroke}.dp-review-line{fill:none;stroke:var(--info);stroke-width:1.25;stroke-dasharray:4 5;stroke-linecap:round;opacity:.8;vector-effect:non-scaling-stroke}.dp-capacity-line line{stroke:color-mix(in oklab,var(--warn) 66%,transparent);stroke-width:1;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}.dp-capacity-line text,.dp-terrain-date{fill:var(--ink-4);font-family:JetBrains Mono,monospace;font-size:9px}.dp-terrain-point{cursor:pointer;outline:none}.dp-terrain-point circle{fill:var(--bg-1);stroke:var(--accent-2);stroke-width:2;vector-effect:non-scaling-stroke;transition:r .12s,fill .12s}.dp-terrain-point.is-active circle,.dp-terrain-point:focus circle{fill:var(--accent-2);stroke:var(--ink)}.dp-terrain-key{display:flex;align-items:center;gap:5px;color:var(--ink-4);font-size:9px;white-space:nowrap}.dp-terrain-key i{width:17px;height:2px;display:inline-block;background:var(--accent-2)}.dp-terrain-key i.is-review{height:1px;background:repeating-linear-gradient(90deg,var(--info) 0 4px,transparent 4px 7px);margin-left:5px}.dp-terrain-readout{min-height:27px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;color:var(--ink-3);font-size:10.5px;border-top:1px solid var(--line);padding-top:8px;margin-top:-3px}.dp-terrain-readout b{color:var(--ink);font-weight:650}.dp-pace-race{min-width:0;padding:13px 0 4px 18px;border-left:1px solid color-mix(in oklab,var(--line) 76%,transparent)}.dp-pace-race svg{display:block;width:100%;max-height:150px;overflow:visible}.dp-race-track,.dp-race-progress{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.dp-race-track{stroke:var(--bg-3);stroke-width:10}.dp-race-progress{stroke:var(--accent-2);stroke-width:10}.dp-pace-race.is-ahead .dp-race-progress{stroke:var(--good)}.dp-race-finish{stroke:var(--ink-3);stroke-width:1;vector-effect:non-scaling-stroke}.dp-race-flag{fill:var(--warn)}.dp-race-label{fill:var(--ink-4);font-size:9px;font-family:JetBrains Mono,monospace;letter-spacing:.12em}.dp-race-numbers{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;margin-top:-4px}.dp-race-numbers>span{display:flex;flex-direction:column;gap:1px}.dp-race-numbers>span:last-child{text-align:right}.dp-race-numbers b{font-family:"Instrument Serif",Georgia,serif;font-size:24px;font-weight:500;line-height:1;color:var(--ink)}.dp-race-numbers small{color:var(--ink-4);font-size:9.5px}.dp-race-numbers i{color:var(--ink-4);font-style:normal}.dp-race-verdict{margin-top:9px;color:var(--ink-3);font-size:10.5px;line-height:1.4}.dp-pace-race.is-ahead .dp-race-verdict{color:var(--good)}.dp-subject-field{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.dp-skyline-legend{color:var(--ink-4);font-size:9.5px;white-space:nowrap}.dp-skyline-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.dp-skyline{position:relative;min-width:max(780px,100%);height:244px;display:flex;align-items:stretch;justify-content:space-around;gap:1px;padding:0 8px}.dp-skyline:before{content:"";position:absolute;z-index:0;left:5px;right:5px;bottom:51px;height:1px;background:linear-gradient(90deg,transparent,var(--line-2) 5%,var(--line-2) 95%,transparent)}.dp-subject-tower{position:relative;width:78px;height:244px;flex:0 0 78px;color:var(--ink-3);padding:0;outline:none}.dp-tower-shaft{position:absolute;z-index:1;left:50%;bottom:51px;width:48px;height:var(--tower-height);transform:translate(-50%);border-radius:25px 25px 5px 5px;background:linear-gradient(105deg,color-mix(in oklab,var(--tower-color) 73%,var(--bg-2)),var(--tower-color) 52%,color-mix(in oklab,var(--tower-color) 72%,var(--bg-3)));box-shadow:inset 1px 0 color-mix(in oklab,var(--ink) 13%,transparent),0 0 var(--tower-risk) color-mix(in oklab,var(--bad) 56%,transparent);transition:filter .14s,box-shadow .14s}.dp-tower-shaft:after{content:"";position:absolute;inset:8px auto 9px 8px;width:5px;border-radius:99px;background:color-mix(in oklab,var(--ink) 15%,transparent)}.dp-tower-value{position:absolute;z-index:3;left:50%;bottom:calc(58px + var(--tower-height));transform:translate(-50%);display:flex;flex-direction:column;align-items:center;white-space:nowrap;color:var(--ink-2)}.dp-tower-value b{font-family:JetBrains Mono,monospace;font-size:10px}.dp-tower-value small{color:var(--ink-4);font-size:7.5px;letter-spacing:.11em;text-transform:uppercase}.dp-tower-base{position:absolute;z-index:4;left:50%;bottom:29px;width:45px;height:45px;transform:translate(-50%);border-radius:50%;display:grid;place-items:center;color:var(--ink-2);font:650 10px JetBrains Mono,monospace;border:1px solid var(--line-2);background:radial-gradient(circle at 37% 30%,var(--bg-1),var(--bg-3));box-shadow:0 0 0 5px color-mix(in oklab,var(--bg-1) 78%,transparent),var(--shadow);transition:border-color .14s,color .14s,transform .14s}.dp-tower-name{position:absolute;z-index:2;left:50%;bottom:0;max-width:76px;transform:translate(-50%);overflow:hidden;color:var(--ink-4);font-size:9px;white-space:nowrap;text-overflow:ellipsis}.dp-subject-tower:hover .dp-tower-shaft,.dp-subject-tower:focus-visible .dp-tower-shaft,.dp-subject-tower.is-selected .dp-tower-shaft{filter:saturate(1.15) brightness(1.08)}.dp-subject-tower:focus-visible .dp-tower-base,.dp-subject-tower.is-selected .dp-tower-base{color:var(--accent-2);border-color:var(--accent);transform:translate(-50%) scale(1.07)}.dp-subject-tower.is-selected .dp-tower-name{color:var(--ink-2)}.dp-skyline-readout{min-height:29px;display:flex;align-items:center;flex-wrap:wrap;gap:5px 15px;padding-top:8px;border-top:1px solid var(--line);color:var(--ink-3);font-size:10.5px}.dp-skyline-readout b{color:var(--ink);font-weight:650}.dp-skyline-readout .has-pressure{color:var(--bad)}.dp-skyline-wait{height:52px;display:grid;place-items:center;color:var(--ink-4);font-size:11px}.dp-mission-foot{margin-top:10px;padding-top:9px;border-top:1px solid var(--line);color:var(--ink-4);font-size:9.5px;line-height:1.45}.dp-chapters{display:flex;flex-direction:column;gap:10px}.dp-chapter{border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;background:var(--bg-2);transition:border-color .14s,opacity .2s}.dp-chapter:hover{border-color:var(--line-2)}.dp-chapter.is-done{opacity:.45}.dp-chapter.is-return{border-left:2px solid var(--accent)}.dp-ch-head{display:flex;align-items:baseline;gap:10px}.dp-idx{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--ink-4);min-width:14px}.dp-ch-name{font-size:14.5px;font-weight:500;line-height:1.3}.dp-ch-sub{font-size:11px;color:var(--ink-4);margin:3px 0 0 24px}.dp-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:11px 0 0 24px}.dp-mini{border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 11px;background:var(--bg-1)}.dp-mini .eyebrow{font-size:9px;letter-spacing:.16em}.dp-mini-body{margin-top:7px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;row-gap:7px}.dp-mini-body .btn{flex:none}.dp-count{font-family:JetBrains Mono,monospace;font-size:14px}.dp-count b{font-weight:500}.dp-meta{font-size:11px;color:var(--ink-4);margin-top:4px}.dp-tick{font-size:12px;color:var(--ink-3);display:flex;align-items:center;gap:5px;cursor:pointer;-webkit-user-select:none;user-select:none}.dp-lever{display:flex;align-items:flex-start;gap:7px;font-size:12px;line-height:1.45;color:var(--ink-2);background:color-mix(in oklab,var(--accent) 8%,transparent);border-left:2px solid var(--accent);border-radius:var(--radius-sm);padding:8px 11px;margin-bottom:14px}.dp-lever svg{flex:none;margin-top:2px;color:var(--accent)}.dp-focus-bar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:12px;line-height:1.45;color:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius-sm);padding:7px 11px;margin-bottom:12px;background:var(--bg-2)}.dp-focus-bar b{color:var(--ink-2);font-weight:600}.dp-focus-bar svg{flex:none;color:var(--ink-4)}.dp-fold>summary{cursor:pointer;list-style:none;font-size:11.5px;color:var(--ink-3);padding:9px 0;display:flex;align-items:center;gap:7px}.dp-fold>summary::-webkit-details-marker{display:none}.dp-fold>summary:before{content:"▸";font-size:9px;color:var(--ink-4);transition:transform .15s}.dp-fold[open]>summary:before{transform:rotate(90deg)}.dp-fold>summary:hover{color:var(--ink-2)}.dp-why-label{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:7px}.dp-why-para{margin:0;font-size:13px;color:var(--ink-2);line-height:1.62;padding-left:11px;border-left:2px solid var(--line)}.dp-split{display:flex;height:7px;border-radius:99px;overflow:hidden;background:var(--bg-3)}.dp-split>span{display:block;height:100%}.dp-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:9px}.dp-legend>span{font-size:11px;color:var(--ink-3);display:flex;align-items:center;gap:5px}.dp-legend i{width:7px;height:7px;border-radius:2px;display:inline-block}@media (max-width: 720px){.dp-mission{padding:17px 13px 13px}.dp-mission-head{align-items:flex-start;gap:13px}.dp-mission-head h2{font-size:22px}.dp-mission-head p{font-size:10.5px}.dp-memory-orbit{width:82px;height:82px;flex-basis:82px}.dp-memory-orbit strong{font-size:22px}.dp-memory-orbit span,.dp-memory-orbit small{font-size:8px}.dp-mission-grid{grid-template-columns:1fr;gap:8px}.dp-pace-race{border-left:0;border-top:1px solid var(--line);padding:15px 0 5px}.dp-pace-race svg{max-height:122px}.dp-skyline-legend,.dp-terrain-key{display:none}.dp-terrain-readout,.dp-skyline-readout{gap:4px 10px}.dp-pair{grid-template-columns:1fr}.dp-num{font-size:48px}.dp-say{font-size:17px}}@media (min-width: 721px) and (max-width: 980px){.dp-mission-grid{grid-template-columns:1fr}.dp-pace-race{border-left:0;border-top:1px solid var(--line);padding:15px 0 5px}.dp-pace-race svg{max-height:132px}}@media (max-width: 720px){.ca-sidebar{max-height:104px;padding:8px 10px;gap:8px;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;overflow-x:hidden;overflow-y:auto}.ca-sidebar-top{flex:0 0 100%;display:flex;align-items:center;gap:10px;padding-bottom:8px!important;margin-bottom:2px!important}.ca-sidebar-top .btn{margin:0!important}.ca-sidebar-top .ca-header-date{font-size:13px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ca-sidebar-top .ca-header-sub{display:none}.ca-sidebar-top .ca-summary-chip{margin-left:auto;flex:0 0 auto}.ca-topic{width:auto;min-width:0;flex:1 1 calc(50% - 4px);max-width:calc(50% - 4px);align-items:center;padding:7px 11px;border-radius:999px;background:var(--bg-2);border-bottom:0;min-height:38px}.ca-topic.is-active{border-bottom:0;background:color-mix(in oklab,var(--accent) 20%,var(--bg-2))}.ca-topic-text{flex-direction:row;align-items:center;gap:6px;min-width:0}.ca-topic-title{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ca-topic-meta{display:none}.chapter-revision-markdown{padding:20px 16px 40px;font-size:16.5px;line-height:1.8;border-radius:0;border-left:0;border-right:0}.ca-article{padding:16px 14px 80px}.mock-revision-reader{padding:8px 0 24px}.mock-revision-header-actions{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:6px;padding-bottom:4px}.mock-revision-header-actions>*{flex:0 0 auto}.mock-revision-header-actions .btn,.mock-revision-header-actions .chip{min-height:38px;white-space:nowrap}.mock-revision-header{padding:8px 12px;gap:8px}.mock-revision-header>div:first-child{display:none}.mock-revision-sidebar{max-height:132px}.ca-article-head{padding:10px 14px 12px;margin-left:-14px;margin-right:-14px}}.mistakes-overlay{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}.mistakes-overlay .mock-revision-header{background:var(--bg-1);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid var(--line)}.mistakes-overlay .mock-revision-sidebar{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;border-right:1px solid var(--line)}.mistakes-overlay .mock-revision-reader{justify-content:flex-start;padding:24px 28px 64px}.mistakes-overlay .mock-revision-chapter{background:var(--bg-1);-webkit-backdrop-filter:none;backdrop-filter:none}.scratch-wrap.scratch-mistake-fit{flex:1;min-width:0;max-width:1400px}.mistake-reader{width:100%;max-width:1400px}.mistake-reader-head{margin-bottom:20px}.mistake-reader-title{margin:5px 0 3px;font-size:26px;font-weight:680;letter-spacing:-.01em;color:var(--ink)}.mistake-card{background:var(--bg-1);border:1px solid color-mix(in oklab,var(--line) 70%,transparent);border-radius:14px;padding:22px 26px 20px;margin-bottom:16px;box-shadow:0 2px 10px #00000008}.mistake-card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.mistake-index{display:grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:999px;border:1px solid color-mix(in oklab,var(--line) 70%,transparent);background:color-mix(in oklab,var(--bg) 70%,transparent);color:var(--ink);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}.mistake-tag{font-size:10.5px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:999px;border:1px solid color-mix(in oklab,var(--line) 70%,transparent);color:var(--ink-3);background:color-mix(in oklab,var(--bg) 60%,transparent)}.mistake-tag.scope{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 45%,transparent);background:color-mix(in oklab,var(--accent) 12%,var(--bg-1))}.mistake-tag.warn{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 45%,transparent);background:color-mix(in oklab,var(--warn) 12%,var(--bg-1))}.mistake-tag.bad{color:var(--bad);border-color:color-mix(in oklab,var(--bad) 45%,transparent);background:color-mix(in oklab,var(--bad) 12%,var(--bg-1))}.mistake-question{font-size:16.5px;line-height:1.72;font-weight:600;color:var(--ink);white-space:pre-wrap}.mistake-options{display:flex;flex-direction:column;gap:8px;margin-top:16px}.mistake-option{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:start;padding:11px 14px;border-radius:10px;border:1px solid color-mix(in oklab,var(--line) 55%,transparent);background:color-mix(in oklab,var(--bg) 45%,transparent);transition:border-color .18s ease,background .18s ease}.mistake-option-key{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--ink-2);border:1px solid color-mix(in oklab,var(--line) 70%,transparent);background:var(--bg-1)}.mistake-option-text{font-size:14.5px;line-height:1.62;color:var(--ink-2);white-space:pre-wrap;min-width:0}.mistake-option.is-correct{border-color:color-mix(in oklab,var(--good) 55%,transparent);background:color-mix(in oklab,var(--good) 10%,var(--bg-1))}.mistake-option.is-correct .mistake-option-key{color:#fff;background:var(--good);border-color:var(--good)}.mistake-option.is-correct .mistake-option-text{color:var(--ink)}.mistake-option.is-mine{border-color:color-mix(in oklab,var(--bad) 55%,transparent);background:color-mix(in oklab,var(--bad) 10%,var(--bg-1))}.mistake-option.is-mine .mistake-option-key{color:#fff;background:var(--bad);border-color:var(--bad)}.mistake-option-flag{display:inline-block;margin-left:8px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;vertical-align:1px}.mistake-option.is-correct .mistake-option-flag{color:var(--good)}.mistake-option.is-mine .mistake-option-flag{color:var(--bad)}.mistake-option-why{margin-top:6px;font-size:12.5px;line-height:1.55;color:var(--ink-3)}.mistake-verdict{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px dashed color-mix(in oklab,var(--line) 70%,transparent);font-size:12px;color:var(--ink-3)}.mistake-verdict b{color:var(--ink-2);font-weight:650}.mistake-solution{margin-top:16px;display:grid;gap:12px}.mistake-block{border-radius:10px;border:1px solid color-mix(in oklab,var(--line) 55%,transparent);background:color-mix(in oklab,var(--bg) 45%,transparent);padding:13px 16px}.mistake-block-title{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.mistake-block.trap{border-color:color-mix(in oklab,var(--warn) 40%,transparent);background:color-mix(in oklab,var(--warn) 8%,var(--bg-1))}.mistake-block.trap .mistake-block-title{color:var(--warn)}.mistake-block ul{margin:0;padding-left:18px}.mistake-block li{margin:5px 0}.mistake-prose{font-size:14px;line-height:1.75;color:var(--ink-2)}.mistake-prose>*:first-child{margin-top:0}.mistake-prose>*:last-child{margin-bottom:0}.mistake-prose p,.mistake-prose ul,.mistake-prose ol,.mistake-prose table{margin:0 0 14px}.mistake-prose ul,.mistake-prose ol{padding-left:20px}.mistake-prose li{margin:6px 0}.mistake-prose strong{color:var(--ink);font-weight:650}.mistake-prose h1,.mistake-prose h2,.mistake-prose h3,.mistake-prose h4{font-size:14.5px;font-weight:680;color:var(--ink);margin:16px 0 8px}.mistake-prose code{font-size:12.5px;padding:1px 5px;border-radius:5px;background:color-mix(in oklab,var(--line) 35%,transparent)}.mistake-prose pre{overflow-x:auto;padding:12px 14px;border-radius:8px;background:color-mix(in oklab,var(--line) 25%,transparent)}.mistake-prose table{width:100%;border-collapse:separate;border-spacing:0;display:block;overflow-x:auto;border-radius:8px;border:1px solid color-mix(in oklab,var(--line) 60%,transparent);font-size:13px}.mistake-prose th,.mistake-prose td{padding:9px 13px;border-bottom:1px solid color-mix(in oklab,var(--line) 60%,transparent);border-right:1px solid color-mix(in oklab,var(--line) 60%,transparent);vertical-align:top;text-align:left}.mistake-prose th:last-child,.mistake-prose td:last-child{border-right:none}.mistake-prose tr:last-child td{border-bottom:none}.mistake-prose th{color:var(--ink);background:color-mix(in oklab,var(--bg) 60%,transparent);font-weight:620;white-space:nowrap}.mistake-prose blockquote{margin:0 0 14px;padding-left:12px;border-left:2px solid color-mix(in oklab,var(--line) 70%,transparent);color:var(--ink-3)}.mistake-cloak{visibility:hidden}.mistake-veil{filter:blur(7px);opacity:.5;-webkit-user-select:none;user-select:none;pointer-events:none;transition:filter .18s ease,opacity .18s ease}.mistake-card.answers-hidden .mistake-option.is-correct{border-color:color-mix(in oklab,var(--line) 55%,transparent);background:color-mix(in oklab,var(--bg) 45%,transparent)}.mistake-card.answers-hidden .mistake-option.is-correct .mistake-option-key{color:var(--ink-2);background:var(--bg-1);border-color:color-mix(in oklab,var(--line) 70%,transparent)}.mistake-card.answers-hidden .mistake-option.is-correct .mistake-option-text{color:var(--ink-2)}@media (max-width: 860px){.mistakes-overlay .mock-revision-reader{padding:16px 14px 56px}.mistake-card{padding:18px 16px 16px;border-radius:12px}.mistake-question{font-size:15.5px}.mistake-option{padding:10px 12px;grid-template-columns:24px minmax(0,1fr);gap:10px}.mistake-option-key{width:24px;height:24px}.mistake-reader-title{font-size:21px}}.mistake-tools{position:relative;display:inline-flex;margin-right:4px}.mistake-tools>.btn{padding:3px 9px;font-size:11px}.mistake-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70}.mistake-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:71;min-width:186px;display:grid;gap:2px;padding:5px;border-radius:10px;border:1px solid var(--line);background:var(--bg-1);box-shadow:0 14px 34px #00000061}.mistake-menu button{display:block;width:100%;text-align:left;padding:8px 10px;border:none;border-radius:7px;background:none;color:var(--ink-2);font-size:12.5px;cursor:pointer}.mistake-menu button:hover{background:color-mix(in oklab,var(--line) 45%,transparent);color:var(--ink)}.mistake-list{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:7px;margin:10px 0;align-items:baseline}.mistake-list-mark{color:var(--ink-3);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.mistake-table-wrap{overflow-x:auto;margin:10px 0}.mistake-table{border-collapse:separate;border-spacing:0;border:1px solid color-mix(in oklab,var(--line) 60%,transparent);border-radius:8px;font-size:13.5px;font-weight:400;min-width:min(100%,420px)}.mistake-table th,.mistake-table td{padding:8px 14px;text-align:left;vertical-align:top;border-bottom:1px solid color-mix(in oklab,var(--line) 60%,transparent);border-right:1px solid color-mix(in oklab,var(--line) 60%,transparent);white-space:nowrap}.mistake-table th:last-child,.mistake-table td:last-child{border-right:none}.mistake-table tr:last-child td{border-bottom:none}.mistake-table th{color:var(--ink);background:color-mix(in oklab,var(--bg) 60%,transparent);font-weight:620}.mistake-table td{color:var(--ink-2)}.mistake-question .mistake-table-wrap{font-weight:400}.paper-mode{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;flex-direction:column;background:var(--bg);color:var(--ink)}.paper-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid var(--line)}.paper-title{font-size:17px;font-weight:650;margin-top:2px}.paper-head-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.paper-count{font-family:JetBrains Mono,monospace;font-size:12.5px;color:var(--ink-3)}.paper-clock{font-family:JetBrains Mono,monospace;font-size:15px;font-weight:700;padding:3px 10px;border-radius:6px;border:1px solid var(--line-2);color:var(--ink)}.paper-clock.danger{color:var(--bad);border-color:var(--bad);background:color-mix(in oklab,var(--bad) 12%,transparent)}.paper-clock.warn{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 50%,var(--line-2));background:color-mix(in oklab,var(--warn) 10%,transparent)}.paper-body{flex:1;min-height:0;display:flex}.omr-rail{width:168px;flex:0 0 168px;border-right:1px solid var(--line);overflow-y:auto;background:var(--bg-1);padding-bottom:40px}.omr-rail-head{position:sticky;top:0;z-index:2;background:var(--bg-1);border-bottom:1px solid var(--line);padding:8px 10px;font-family:JetBrains Mono,monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:700}.omr-rows{display:flex;flex-direction:column}.omr-row{display:flex;flex-direction:column;gap:3px;margin:4px 6px;padding:5px 6px;border:1px solid color-mix(in oklab,var(--ink) 9%,transparent);border-radius:7px}.omr-line{display:flex;align-items:center;gap:5px}.omr-row.answered{border-left:2px solid color-mix(in oklab,var(--ink) 35%,transparent)}.omr-row.is-right{border-left:2px solid var(--good);background:color-mix(in oklab,var(--good) 10%,transparent)}.omr-row.is-wrong{border-left:2px solid var(--bad);background:color-mix(in oklab,var(--bad) 10%,transparent)}.omr-num{width:26px;flex:0 0 26px;border:none;background:none;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:11px;text-align:right;padding:0;cursor:pointer}.omr-num.marked{color:var(--warn);font-weight:700}.omr-bubbles{display:flex;gap:3px}.omr-bubble{width:20px;height:20px;border-radius:50%;border:1px solid var(--line-2);background:transparent;color:var(--ink-3);font-size:10px;font-weight:700;line-height:1;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.omr-bubble.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.omr-bubble.on.is-right{background:var(--good);border-color:var(--good);color:#fff}.omr-bubble.on.is-wrong{background:var(--bad);border-color:var(--bad);color:#fff}.omr-row.conflict{background:color-mix(in oklab,var(--warn) 12%,transparent)}.paper-sheet-wrap{flex:1;min-width:0;overflow-y:auto}.scratch-wrap.scratch-paper-fit{flex:1;min-width:0;--paper-pencil-gutter: 20px}.paper-sheet{position:relative;padding:22px 26px 60px;user-select:none;-webkit-user-select:none;pointer-events:none}.paper-page{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);gap:0 30px;align-items:start;padding-bottom:14px;margin-bottom:22px;border-bottom:1px solid var(--line)}.paper-col{min-width:0}.paper-page>.paper-col:first-child{grid-column:1}.paper-page>.paper-col:last-child{grid-column:3}.paper-page>.paper-col:first-child .paper-q,.paper-measure .paper-q{padding-left:calc(10px + var(--paper-pencil-gutter))}.paper-page:before{content:"";grid-column:2;grid-row:1;align-self:stretch;background:var(--line)}.paper-page-foot{grid-column:1 / -1;text-align:center;font-family:JetBrains Mono,monospace;font-size:10.5px;letter-spacing:.06em;color:var(--ink-3);padding-top:10px}.paper-measure{position:absolute;visibility:hidden;pointer-events:none;width:calc(50% - 30px);left:26px;top:0}@media (max-width: 900px){.paper-page{grid-template-columns:1fr}.paper-page:before{display:none}.paper-page>.paper-col:last-child{grid-column:1}.paper-page>.paper-col .paper-q{padding-left:calc(10px + var(--paper-pencil-gutter))}.paper-measure{width:calc(100% - 52px)}.omr-rail{width:150px;flex-basis:150px}}.paper-q{break-inside:avoid;page-break-inside:avoid;margin:0 0 20px;padding:8px 10px;border-radius:8px}.paper-q-head{display:flex;align-items:baseline;gap:8px}.paper-q-num{font-family:JetBrains Mono,monospace;font-size:12.5px;font-weight:700;color:var(--ink-3)}.paper-q-picked{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;color:var(--bg);background:var(--ink);border-radius:4px;padding:0 5px}.paper-q-text{font-size:14.5px;line-height:1.62;margin:4px 0 8px;min-width:0;overflow-wrap:break-word}.paper-q-text .mistake-list{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;margin:5px 0}.paper-q-text .mistake-list-mark{color:var(--ink-3);font-variant-numeric:tabular-nums}.paper-q-text .mistake-table-wrap{max-width:100%;margin:6px 0}.paper-q-text .mistake-table{font-size:12.5px;border-collapse:collapse;width:100%;table-layout:fixed}.paper-q-text .mistake-table th,.paper-q-text .mistake-table td{border:1px solid var(--line);padding:4px 6px;text-align:left;vertical-align:top;white-space:normal;overflow-wrap:break-word;word-break:normal;-webkit-hyphens:auto;hyphens:auto;line-height:1.45}.paper-q-text .mistake-table th{color:var(--ink-2);font-weight:700}.paper-opts{display:flex;flex-direction:column;gap:3px}.paper-opt{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.5;padding:3px 6px;border-radius:6px;border:1px solid transparent}.paper-bubble{flex:0 0 auto;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--ink-3);color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:12px;line-height:1;display:inline-flex;align-items:center;justify-content:center;align-self:center}.paper-bubble.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.paper-opt-text{min-width:0}.paper-opt.picked{background:color-mix(in oklab,var(--ink) 6%,transparent)}.paper-q.flash{animation:paper-flash .9s ease-out 1}@keyframes paper-flash{0%{background:color-mix(in oklab,var(--good) 26%,transparent)}to{background:transparent}}.paper-q.conflict-pulse{animation:paper-conflict-pulse .9s ease-out 1}@keyframes paper-conflict-pulse{0%,to{background:transparent;box-shadow:none}45%{background:color-mix(in oklab,var(--warn) 16%,transparent);box-shadow:0 0 0 1px color-mix(in oklab,var(--warn) 70%,transparent)}}@media (prefers-reduced-motion: reduce){.accuracy-skyline-pillar,.paper-q.conflict-pulse,.paper-q.flash{animation:none}}.chip.paper-mode-toggle{position:fixed;left:12px;bottom:12px;z-index:60;opacity:.82}.chip.paper-mode-toggle:hover{opacity:1}.paper-retry-control:disabled{opacity:.42;cursor:default}.paper-retry-control.ready{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 55%,var(--line))}.paper-overlay,.paper-retry-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1320;display:flex;align-items:stretch;justify-content:flex-end;background:color-mix(in oklab,var(--bg) 38%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.paper-explanation-sheet{width:min(900px,94vw);margin:2vh auto;min-height:0;max-height:96vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line-2);border-radius:14px;background:var(--bg-1);box-shadow:0 24px 70px #00000057}.paper-overlay-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--bg-1)}.paper-overlay-title{margin-top:2px;font-size:18px;font-weight:720}.paper-overlay-note{flex:0 0 auto;padding:8px 16px;color:var(--ink-3);font-size:12px;border-bottom:1px solid var(--line)}.paper-explanation-body{flex:1;min-height:0;overflow:auto;padding:14px 16px 22px}.paper-explanation-body .mcq-layout{min-height:100%}.paper-explanation-body .mcq-right{overflow:visible;max-height:none}.paper-explanation-body>.mcq-layout>.mcq-right>.scratch-wrap>.scratch-toolhold{position:fixed;top:50dvh;left:max(4px,env(safe-area-inset-left,0px),calc(50vw - 498px))}.paper-explanation-body>.mcq-layout>.mcq-right>.scratch-wrap>.scratch-toolhold .scratch-tools{left:0}.paper-retry-tray{width:min(720px,calc(100vw - 52px - env(safe-area-inset-left,0px)));height:100%;min-height:0;display:flex;flex-direction:column;background:var(--bg-1);border-left:1px solid var(--line-2);box-shadow:-20px 0 60px #00000047}.paper-retry-nav{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.paper-retry-layout{flex:1;min-height:0;display:flex}.paper-retry-answer-rail{width:76px;flex:0 0 76px;display:flex;flex-direction:column;align-items:center;gap:10px;padding-bottom:18px;border-right:1px solid var(--line);background:var(--bg-2)}.paper-retry-answer-rail .omr-rail-head{width:100%;text-align:center}.paper-retry-answer-rail .omr-bubble{width:34px;height:34px;font-size:12px}.paper-retry-answer-rail .omr-listen-btn{width:38px;height:28px;font-size:13px;margin-top:4px}.paper-retry-paper{flex:1;min-width:0;overflow:auto;padding:18px 20px 40px}.paper-retry-paper .paper-q{max-width:610px;margin:0 auto}.paper-retry-paper>.scratch-wrap>.scratch-toolhold{position:fixed;top:50dvh;left:max(4px,env(safe-area-inset-left,0px),calc(100vw - 768px))}.paper-retry-paper>.scratch-wrap>.scratch-toolhold .scratch-tools{left:0}@media (max-width: 700px){.paper-head{padding:9px 10px}.paper-head-right{gap:5px}.paper-explanation-sheet{width:calc(100vw - 52px - env(safe-area-inset-left,0px));max-height:100vh;margin:0 4px 0 calc(48px + env(safe-area-inset-left,0px));border-radius:0}.paper-explanation-body>.mcq-layout>.mcq-right>.scratch-wrap>.scratch-toolhold{left:max(4px,env(safe-area-inset-left,0px))}.paper-retry-tray{width:calc(100vw - 52px - env(safe-area-inset-left,0px))}.paper-retry-paper>.scratch-wrap>.scratch-toolhold{left:max(4px,env(safe-area-inset-left,0px))}.paper-retry-nav .btn{padding-inline:8px}}@media (min-width: 701px) and (max-width: 1000px){.paper-explanation-sheet{width:calc(100vw - 54px - env(safe-area-inset-left,0px));margin-inline:calc(48px + env(safe-area-inset-left,0px)) 4px}.paper-explanation-body>.mcq-layout>.mcq-right>.scratch-wrap>.scratch-toolhold{left:max(4px,env(safe-area-inset-left,0px))}}.deep-fact-dialog>.scratch-wrap>.scratch-toolhold{position:fixed;top:50dvh;left:max(4px,env(safe-area-inset-left,0px),calc(50vw - 428px))}.deep-fact-dialog>.scratch-wrap>.scratch-toolhold .scratch-tools{left:0}@media (max-width: 860px){.deep-fact-overlay{padding:16px 8px 16px calc(48px + env(safe-area-inset-left,0px))!important}.deep-fact-dialog{width:100%!important;margin:0!important}.deep-fact-dialog>.scratch-wrap>.scratch-toolhold{left:max(4px,env(safe-area-inset-left,0px))}}.omr-bubble.locked{opacity:.55;cursor:default}.omr-bubble.locked.on{opacity:1}.omr-days{gap:3px;padding-left:22px}.omr-days.waiting{opacity:.38}.omr-days.done{padding-left:22px}.omr-day-done{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;color:var(--good);padding:2px 6px;border-radius:5px;background:color-mix(in oklab,var(--good) 14%,transparent)}.omr-day-done.is-wrong{color:var(--bad);background:color-mix(in oklab,var(--bad) 14%,transparent)}.omr-day{min-width:27px;height:19px;padding:0 2px;border-radius:5px;border:1px solid var(--line-2);background:transparent;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;line-height:1;cursor:pointer}.omr-day:disabled{opacity:.3;cursor:default}.omr-day.on{background:var(--good);border-color:var(--good);color:var(--bg);opacity:1}.omr-explain-line{min-height:20px;height:20px;padding-left:22px;display:grid;grid-template-columns:1fr 28px;gap:4px;align-items:center}.omr-explain{width:100%;height:20px;padding:0 7px;border-radius:5px;border:1px solid color-mix(in oklab,var(--accent) 40%,var(--line-2));background:color-mix(in oklab,var(--accent) 8%,transparent);color:var(--accent);font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:750;line-height:1;cursor:pointer}.omr-explain:disabled{visibility:hidden;pointer-events:none}.omr-listen-btn{height:20px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:5px;font-size:11px;border:1px solid color-mix(in oklab,var(--accent) 40%,var(--line-2));background:color-mix(in oklab,var(--accent) 8%,transparent);color:var(--accent);cursor:pointer}.omr-listen-btn:disabled{visibility:hidden;pointer-events:none}.omr-listen-btn.is-active{background:color-mix(in oklab,var(--good) 18%,transparent);border-color:var(--good);color:var(--good)}.omr-explain.conflict{border-color:var(--warn);background:color-mix(in oklab,var(--warn) 18%,transparent);color:var(--warn)}.paper-mark{margin-left:6px;font-weight:800;font-size:15px;line-height:1}.paper-mark.right{color:var(--good)}.paper-mark.wrong{color:var(--bad)}.paper-opt.is-right{background:color-mix(in oklab,var(--good) 12%,transparent)}.paper-opt.is-wrong{background:color-mix(in oklab,var(--bad) 12%,transparent)}.omr-num.answered{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.paper-note{font-size:11.5px;color:var(--warn);border:1px solid color-mix(in oklab,var(--warn) 45%,transparent);border-radius:999px;padding:2px 9px}.paper-q-retry{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);border:1px solid color-mix(in oklab,var(--accent) 45%,transparent);border-radius:999px;padding:1px 7px}.omr-row.retry{border-left:2px solid color-mix(in oklab,var(--accent) 60%,transparent)}.omr-row.retry .omr-num{color:var(--accent)}.mistake-text-run{white-space:pre-wrap}
