:root{color-scheme:light;--bg: #f6f7fb;--panel: #ffffff;--text: #1a1d26;--muted: #6b7280;--border: #e3e6ee;--accent: #2d5bff;--accent-soft: #e6ecff;--ok: #15803d;--ok-soft: #dcfce7;--bad: #b91c1c;--bad-soft: #fee2e2;--warn: #b45309;--warn-soft: #fef3c7;--easy: #15803d;--medium: #b45309;--hard: #b91c1c;--radius: 10px}:root[data-theme=dark]{color-scheme:dark;--bg: #11131a;--panel: #1a1d27;--text: #e8eaf1;--muted: #9aa0b0;--border: #2b3040;--accent: #6d8bff;--accent-soft: #212a4a;--ok-soft: #10301c;--bad-soft: #3a1515;--warn-soft: #3a2a0c;--ok: #4ade80;--bad: #f87171;--easy: #4ade80;--medium: #fbbf24;--hard: #f87171}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent)}h1{font-size:1.7rem;margin:0 0 .75rem}h2{font-size:1.2rem;margin:2rem 0 .5rem}button,.button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--panel);color:var(--text);padding:.5rem .9rem;border-radius:8px}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.large{padding:.8rem 1.6rem;font-size:1.05rem}button.danger{color:var(--bad);border-color:var(--bad)}button.link{border:none;background:none;color:var(--accent);padding:.25rem .4rem}input[type=text],input[type=number],.search,textarea{font:inherit;padding:.5rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text)}.search{width:100%;max-width:480px}kbd{background:var(--panel);border:1px solid var(--border);border-radius:4px;padding:0 .35em;font-size:.85em}code{background:var(--accent-soft);padding:.1em .35em;border-radius:4px}.topnav{display:flex;gap:.25rem;align-items:center;padding:.5rem 1.25rem;background:var(--panel);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.topnav a{text-decoration:none;color:var(--muted);padding:.4rem .7rem;border-radius:6px}.topnav a.active{color:var(--text);background:var(--accent-soft)}.topnav .theme-toggle{margin-left:auto;border:none;background:none;font-size:1.15rem;padding:.3rem .5rem}.topnav .brand{font-weight:800;color:var(--accent);margin-right:.75rem;font-size:1.1rem}.page{max-width:1100px;margin:0 auto;padding:1.5rem 1.25rem 4rem}.page.with-sidebar{display:grid;grid-template-columns:270px 1fr;gap:1.5rem;max-width:1300px}@media (max-width: 800px){.page.with-sidebar{grid-template-columns:1fr}}.muted{color:var(--muted)}.small{font-size:.875rem}.spacer{flex:1}.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin:.75rem 0}.error{color:var(--bad)}.error-box{background:var(--bad-soft);border:1px solid var(--bad);padding:1rem;border-radius:var(--radius);margin:1rem 0}.ok{color:var(--ok);font-weight:700}.bad{color:var(--bad);font-weight:700}.lead{font-size:1.1rem;color:var(--muted);max-width:640px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:1.5rem}.card{display:block;text-decoration:none;color:inherit;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;transition:border-color .15s}.card:hover{border-color:var(--accent)}.card h3{margin:0 0 .35rem;font-size:1.05rem}.card p{margin:0;color:var(--muted);font-size:.92rem}.stats-row{display:flex;gap:1rem;flex-wrap:wrap;margin:1rem 0}.stat{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem 1.2rem;min-width:140px}.stat-value{font-size:1.6rem;font-weight:700}.stat-label{color:var(--muted);font-size:.85rem}.filters{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;align-self:start;position:sticky;top:64px;max-height:calc(100vh - 80px);overflow:auto;font-size:.92rem}.filter-group{margin-bottom:1.1rem}.filter-title{display:block;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.4rem}.check{display:flex;gap:.45rem;align-items:center;padding:.15rem 0;cursor:pointer}.check.small{font-size:.85rem;color:var(--muted)}.skills{padding-left:1.4rem;margin-bottom:.35rem}.filter-head{display:flex;align-items:baseline;justify-content:space-between}.filter-head .filter-title{margin-bottom:.4rem}.filter-head .link{padding:0;font-size:.8rem}.hint{margin:-.2rem 0 .4rem}.domain-name{font-weight:600}.check .grow{flex:1}.check .count{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:400}.seg{display:flex;gap:.3rem;flex-wrap:wrap}.seg button{flex:1;padding:.4rem .5rem}.seg button.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.seg button.active.diff-E{color:var(--easy);border-color:var(--easy);background:var(--ok-soft)}.seg button.active.diff-M{color:var(--medium);border-color:var(--medium);background:var(--warn-soft)}.seg button.active.diff-H{color:var(--hard);border-color:var(--hard);background:var(--bad-soft)}.seg.big{max-width:640px;margin:1rem 0}.seg.big button{padding:.8rem 1rem;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem}.seg.big small{color:var(--muted);font-weight:400}.badge{display:inline-block;font-size:.75rem;padding:.1rem .5rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:600}.badge.subtle{background:transparent;border:1px solid var(--border);color:var(--muted)}.badge.diff-E{background:var(--ok-soft);color:var(--easy)}.badge.diff-M{background:var(--warn-soft);color:var(--medium)}.badge.diff-H{background:var(--bad-soft);color:var(--hard)}:root{--bb-blue: #324dc7;--bb-blue-soft: #dfe6ff;--bb-ink: #1e1e1e;--bb-rule: #c8c8c8;--bb-head: #f0f0f0;--bb-serif: "Noto Serif", Georgia, "Times New Roman", serif;--bb-sans: "Noto Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}:root[data-theme=dark]{--bb-blue: #7d93ff;--bb-blue-soft: #26305a;--bb-ink: #e8eaf1;--bb-rule: #3a4052;--bb-head: #232735}.bb-screen{display:flex;flex-direction:column;min-height:calc(100vh - 57px);font-family:var(--bb-sans);color:var(--bb-ink)}.bb-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.6rem 1.5rem;background:var(--panel)}.bb-section-title{font-weight:700;font-size:1.05rem}.bb-directions{font-size:.85rem;margin-top:.1rem}.bb-top-center{justify-self:center}.bb-top-right{justify-self:end;display:flex;gap:1.25rem}.bb-tool{display:flex;flex-direction:column;align-items:center;gap:.05rem;font:inherit;font-size:.8rem;background:none;border:none;padding:0;color:var(--bb-ink);text-decoration:none;cursor:pointer}.bb-tool-icon{font-size:1.15rem;line-height:1.2}.bb-timer{display:flex;align-items:center;gap:.6rem}.bb-clock{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:400;min-width:4.2rem;text-align:center;display:inline-flex;justify-content:center}.bb-timer.low .bb-clock{color:#c0392b;font-weight:700}.bb-pill{font:inherit;font-size:.8rem;font-weight:600;padding:.2rem .8rem;border-radius:999px;border:1px solid var(--bb-ink);background:var(--panel);color:var(--bb-ink);cursor:pointer}.bb-practice-rule{position:relative;border-top:2px dashed var(--bb-ink);margin:0;height:0}.bb-practice-rule span{position:absolute;left:50%;top:-.65rem;transform:translate(-50%);background:var(--bg);padding:0 .6rem;font-size:.7rem;letter-spacing:.08em;font-weight:600}.bb-main{flex:1;padding:1.5rem 1.5rem 2rem}.bb-question{font-family:var(--bb-serif);font-size:1.05rem;line-height:1.6;max-width:1400px;margin:0 auto}.bb-question.split{display:grid;grid-template-columns:1fr 10px 1fr;align-items:start}.bb-question.single{max-width:760px}.bb-divider{width:2px;height:100%;min-height:60vh;background:var(--bb-rule);justify-self:center}.bb-pane{min-width:0}.bb-pane-body{padding:.75rem 1.75rem 1rem 1.5rem}.bb-passage .bb-pane-body{padding-top:1.25rem}.bb-prompt .bb-pane-body{padding-left:1.75rem}@media (max-width: 900px){.bb-question.split{grid-template-columns:1fr}.bb-divider{width:100%;height:2px;min-height:0;margin:1rem 0}.bb-pane-body{padding-left:.25rem;padding-right:.25rem}}.bb-qhead{display:flex;align-items:center;gap:.9rem;background:var(--bb-head);border-bottom:2px solid var(--bb-ink);padding:0 .75rem 0 0;font-family:var(--bb-sans)}.bb-qnum{background:var(--bb-ink);color:var(--panel);font-weight:700;font-size:1rem;padding:.35rem .8rem;min-width:2.4rem;text-align:center}.bb-mark{display:inline-flex;align-items:center;gap:.4rem;font:inherit;font-size:.9rem;background:none;border:none;padding:0;color:var(--bb-ink);cursor:pointer}.bb-mark.on{color:#c0392b;font-weight:600}.bb-mark.on svg{color:#c0392b}.bb-abc{margin-left:auto;font:inherit;font-size:.75rem;font-weight:700;letter-spacing:.02em;background:var(--panel);color:var(--bb-ink);border:1.5px solid var(--bb-ink);border-radius:4px;padding:.1rem .35rem;cursor:pointer}.bb-abc span{text-decoration:line-through}.bb-abc.on{background:var(--bb-ink);color:var(--panel)}.bb-figure{margin:0 0 1rem;overflow-x:auto}.bb-stem{margin:0 0 1.1rem}.bb-choices{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.25rem}.bb-choice{display:flex;align-items:center;gap:.6rem;position:relative}.bb-choice-main{flex:1;display:flex;align-items:center;gap:.9rem;text-align:left;font:inherit;color:var(--bb-ink);background:var(--panel);border:1.5px solid var(--bb-ink);border-radius:8px;padding:.5rem .8rem;cursor:pointer;min-height:3rem}.bb-choice-main:hover:not(:disabled){background:var(--bb-blue-soft)}.bb-choice-main:disabled{cursor:default;opacity:1}.bb-letter{flex:none;width:1.6rem;height:1.6rem;border-radius:50%;border:1.5px solid var(--bb-ink);display:grid;place-items:center;font-family:var(--bb-sans);font-weight:700;font-size:.85rem}.bb-choice.selected .bb-choice-main{border:2.5px solid var(--bb-blue);padding:calc(.5rem - 1px) calc(.8rem - 1px)}.bb-choice.selected .bb-letter{background:var(--bb-blue);border-color:var(--bb-blue);color:#fff}.bb-choice.correct .bb-choice-main{border:2.5px solid var(--ok);background:var(--ok-soft);padding:calc(.5rem - 1px) calc(.8rem - 1px)}.bb-choice.correct .bb-letter{background:var(--ok);border-color:var(--ok);color:#fff}.bb-choice.wrong .bb-choice-main{border:2.5px solid var(--bad);background:var(--bad-soft);padding:calc(.5rem - 1px) calc(.8rem - 1px)}.bb-choice.wrong .bb-letter{background:var(--bad);border-color:var(--bad);color:#fff}.bb-choice.eliminated .bb-choice-main{opacity:.45}.bb-choice.eliminated:before{content:"";position:absolute;left:0;right:3.2rem;top:50%;border-top:2px solid var(--bb-ink);pointer-events:none}.bb-elim{flex:none;width:2.6rem;font:inherit;font-family:var(--bb-sans);font-size:.8rem;background:none;border:none;padding:0;color:var(--bb-ink);cursor:pointer;text-decoration:underline}.bb-elim-letter{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;border:1.5px solid var(--bb-ink);text-decoration:line-through;font-weight:700}.bb-choice-text p:last-child{margin-bottom:0}.bb-spr{margin-bottom:1.25rem}.bb-spr input{font:inherit;font-family:var(--bb-serif);font-size:1.1rem;width:14rem;padding:.45rem .6rem;border:1.5px solid var(--bb-ink);border-radius:4px;background:var(--panel);color:var(--bb-ink)}.bb-spr input.correct{border-color:var(--ok);background:var(--ok-soft)}.bb-spr input.wrong{border-color:var(--bad);background:var(--bad-soft)}.bb-spr-preview{font-family:var(--bb-sans);font-size:.85rem;color:var(--muted);margin-top:.5rem}.bb-spr-preview .serif{font-family:var(--bb-serif);font-size:1.05rem;color:var(--bb-ink)}.bb-spr-answer{margin-top:.75rem;font-family:var(--bb-sans)}.bb-check{font:inherit;font-family:var(--bb-sans);font-weight:600;font-size:.95rem;background:var(--bb-blue);color:#fff;border:none;border-radius:999px;padding:.55rem 1.4rem;cursor:pointer}.bb-check:disabled{opacity:.45;cursor:default}.bb-recorded{font-family:var(--bb-sans);color:var(--muted);font-style:italic}.bb-feedback{margin-top:1.25rem;border-left:4px solid;padding:.75rem 1rem;background:var(--panel);border-radius:0 6px 6px 0}.bb-feedback.is-ok{border-color:var(--ok)}.bb-feedback.is-bad{border-color:var(--bad)}.bb-feedback-title{font-family:var(--bb-sans);font-weight:700;margin-bottom:.2rem}.bb-feedback.is-ok .bb-feedback-title{color:var(--ok)}.bb-feedback.is-bad .bb-feedback-title{color:var(--bad)}.bb-tags{font-family:var(--bb-sans);font-size:.8rem;color:var(--muted);margin-bottom:.6rem}.bb-note{width:100%;min-height:56px;margin-top:.75rem;font:inherit;font-family:var(--bb-sans);font-size:.9rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text)}.bb-tutor-open{margin-top:.75rem;font:inherit;font-family:var(--bb-sans);font-size:.9rem;font-weight:600;color:var(--bb-blue);background:none;border:1.5px solid var(--bb-blue);border-radius:999px;padding:.4rem 1rem;cursor:pointer}.bb-tutor{margin-top:.9rem;font-family:var(--bb-sans);font-size:.95rem;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.bb-tutor-head{display:flex;justify-content:space-between;align-items:center;padding:.5rem .8rem;font-weight:700;border-bottom:1px solid var(--border);position:relative}.bb-tutor-head .bb-nav-close{position:static}.bb-tutor-code{padding:.7rem .8rem;border-bottom:1px solid var(--border);display:flex;gap:.6rem;align-items:flex-end;flex-wrap:wrap}.bb-tutor-code label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.bb-tutor-code input{font:inherit;padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--text)}.bb-tutor-log{padding:.7rem .8rem;display:flex;flex-direction:column;gap:.5rem;max-height:22rem;overflow-y:auto}.bb-tutor-hint{margin:0;color:var(--muted);font-size:.85rem}.bb-msg{max-width:92%;padding:.5rem .75rem;border-radius:10px;white-space:pre-wrap;line-height:1.5}.bb-msg.user{align-self:flex-end;background:var(--bb-blue);color:#fff;border-bottom-right-radius:3px}.bb-msg.assistant{align-self:flex-start;background:var(--panel);border:1px solid var(--border);border-bottom-left-radius:3px}.bb-msg.thinking{color:var(--muted);font-style:italic}.bb-tutor-error{padding:0 .8rem .4rem;color:var(--bad);font-size:.85rem}.bb-tutor-input{display:flex;gap:.5rem;align-items:center;padding:.6rem .8rem;border-top:1px solid var(--border)}.bb-tutor-input input{flex:1;font:inherit;padding:.45rem .7rem;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--text)}.bb-tutor-input .bb-check{padding:.45rem 1rem}.bb-bottom{position:sticky;bottom:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.7rem 1.5rem;background:var(--panel);border-top:2px solid var(--bb-ink)}.bb-bottom-left{font-weight:700}.bb-qnav-btn{justify-self:center;font:inherit;font-weight:700;background:var(--bb-ink);color:var(--panel);border:none;border-radius:6px;padding:.5rem 1rem;cursor:pointer}.bb-qnav-btn .caret{font-size:.7rem;margin-left:.3rem}.bb-bottom-right{justify-self:end;display:flex;gap:.6rem}.bb-btn{font:inherit;font-weight:700;background:var(--bb-blue);color:#fff;border:none;border-radius:999px;padding:.5rem 1.4rem;cursor:pointer}.bb-btn:disabled{opacity:.4;cursor:default}.bb-outline{font:inherit;font-weight:600;background:var(--panel);color:var(--bb-blue);border:1.5px solid var(--bb-blue);border-radius:999px;padding:.45rem 1.2rem;cursor:pointer}.bb-nav-popup{position:fixed;left:50%;bottom:4.5rem;transform:translate(-50%);width:min(560px,calc(100vw - 2rem));background:var(--panel);border:1px solid var(--bb-rule);border-radius:8px;box-shadow:0 10px 30px #0000002e;padding:1rem 1.25rem 1.25rem;z-index:20;display:flex;flex-direction:column;align-items:center;gap:.9rem}.bb-nav-popup:after{content:"";position:absolute;left:50%;bottom:-8px;width:14px;height:14px;background:var(--panel);border-right:1px solid var(--bb-rule);border-bottom:1px solid var(--bb-rule);transform:translate(-50%) rotate(45deg)}.bb-nav-head{width:100%;display:flex;justify-content:center;position:relative;border-bottom:1px solid var(--bb-rule);padding-bottom:.6rem}.bb-nav-close{position:absolute;right:0;top:-.3rem;font:inherit;font-size:1.4rem;line-height:1;background:none;border:none;cursor:pointer;color:var(--bb-ink)}.bb-nav-legend{display:flex;gap:1.1rem;flex-wrap:wrap;font-size:.8rem;justify-content:center}.bb-nav-legend i{display:inline-block;width:12px;height:12px;vertical-align:-1px;margin-right:.25rem}.legend-current{border-bottom:10px solid var(--bb-ink);border-left:6px solid transparent;border-right:6px solid transparent;width:0!important;height:0!important}.legend-unanswered{border:1.5px dashed var(--bb-ink)}.legend-review{background:#c0392b;clip-path:polygon(0 0,100% 0,75% 50%,100% 100%,0 100%)}.legend-ok{background:var(--ok);border-radius:2px}.legend-bad{background:var(--bad);border-radius:2px}.bb-nav-grid{display:grid;grid-template-columns:repeat(auto-fill,2.4rem);gap:.9rem .6rem;justify-content:center;width:100%;padding-top:.5rem}.bb-navcell{position:relative;width:2.4rem;height:2.4rem;font:inherit;font-weight:700;border-radius:4px;cursor:pointer;background:var(--panel);color:var(--bb-ink)}.bb-navcell.unanswered{border:1.5px dashed var(--bb-ink)}.bb-navcell.answered{border:1.5px solid var(--bb-blue);background:var(--bb-blue);color:#fff}.bb-navcell.is-ok{border-color:var(--ok);background:var(--ok)}.bb-navcell.is-bad{border-color:var(--bad);background:var(--bad)}.bb-navcell.current:before{content:"";position:absolute;left:50%;top:-10px;transform:translate(-50%);border-top:8px solid var(--bb-ink);border-left:5px solid transparent;border-right:5px solid transparent}.bb-navcell.flagged:after{content:"";position:absolute;top:-4px;right:-4px;width:10px;height:10px;background:#c0392b;clip-path:polygon(0 0,100% 0,75% 50%,100% 100%,0 100%)}.html img,.html svg{max-width:100%;height:auto}.html table{border-collapse:collapse;margin:.5rem 0}.html td,.html th{border:1px solid var(--border);padding:.25rem .6rem}.html p{margin:0 0 .75rem}.cell{width:2.1rem;height:2.1rem;padding:0;border-radius:6px;font-size:.85rem;position:relative}.cell.current{outline:2px solid var(--accent);outline-offset:1px}.cell.ok{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.cell.bad{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.cell.done{background:var(--accent-soft);border-color:var(--accent)}.cell.skipped{opacity:.6}.cell.flag:after{content:"";position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:var(--warn)}.review-grid{display:flex;gap:.4rem;flex-wrap:wrap;margin:1rem 0 1.5rem}.qtable{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;font-size:.92rem}.qtable th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.6rem .8rem;border-bottom:1px solid var(--border)}.qtable td{padding:.55rem .8rem;border-bottom:1px solid var(--border);vertical-align:top}.qtable tbody tr:hover{background:var(--accent-soft)}.qtable tbody tr{cursor:pointer}.pager{display:flex;gap:1rem;align-items:center;justify-content:center;margin-top:1rem}.bar{height:8px;background:var(--border);border-radius:4px;overflow:hidden}.bar-fill{height:100%;background:var(--accent)}.sr-only,.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-account{position:relative;margin-left:.5rem}.topnav .theme-toggle+.nav-account{margin-left:.25rem}.google-btn{display:inline-flex;align-items:center;gap:.55rem;font:inherit;font-weight:600;font-size:.9rem;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:999px;padding:.4rem .95rem;cursor:pointer}.google-btn:hover{border-color:var(--accent)}.avatar-btn{padding:0;border:none;background:none;border-radius:50%;cursor:pointer;display:block}.avatar-btn img,.user-cell img{width:34px;height:34px;border-radius:50%;display:block}.avatar-fallback{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:700}.account-pop{position:absolute;right:0;top:calc(100% + .4rem);min-width:220px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0000001f;padding:.8rem .9rem;z-index:30;display:flex;flex-direction:column;gap:.2rem}.account-name{font-weight:700}.account-role{margin:.3rem 0 .5rem}.notice{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.25rem;margin:1rem 0;max-width:560px}.notice p{margin:.35rem 0 .8rem;color:var(--muted)}.user-cell{display:flex;gap:.65rem;align-items:center}.admin-table{margin-top:.75rem}.admin-table tbody tr{cursor:default}.switch{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer}.switch input{width:1.1rem;height:1.1rem}:root{--dom-cas: #4f46e5;--dom-ini: #0f766e;--dom-sec: #b45309;--dom-eoi: #be185d}:root[data-theme=dark]{--dom-cas: #8b8cf6;--dom-ini: #2dd4bf;--dom-sec: #fbbf24;--dom-eoi: #f472b6}.dom-cas{--dom: var(--dom-cas)}.dom-ini{--dom: var(--dom-ini)}.dom-sec{--dom: var(--dom-sec)}.dom-eoi{--dom: var(--dom-eoi)}.guide{max-width:900px}.guide h3{margin:0;font-size:1.05rem}.card.disabled{opacity:.55;cursor:default}.crumbs{font-size:.85rem;color:var(--muted);margin-bottom:.75rem}.crumbs a{color:var(--muted)}.crumb-sep{margin:0 .4rem}.guide-facts{padding-left:1.2rem;margin:1rem 0 0}.guide-facts li{margin-bottom:.45rem}.module-flow{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.mf-box{background:var(--panel);border:1.5px solid var(--border);border-radius:var(--radius);padding:.7rem 1rem;min-width:190px}.mf-title{font-weight:700}.mf-sub{font-size:.85rem;color:var(--muted)}.mf-arrow{font-size:1.6rem;color:var(--muted)}.mf-branch{display:flex;flex-direction:column;gap:.5rem}.mf-box.harder{border-color:var(--hard)}.mf-box.easier{border-color:var(--easy)}@media (max-width: 560px){.mf-arrow{transform:rotate(90deg);margin:0 auto}.module-flow{flex-direction:column;align-items:stretch}}.module-strip{display:flex;gap:3px;margin:1rem 0 1.25rem;border-radius:8px;overflow:hidden}.ms-seg{flex-basis:0;min-width:0;background:var(--dom);color:#fff;padding:.55rem .6rem;display:flex;flex-direction:column;gap:.1rem}:root[data-theme=dark] .ms-seg{color:#111}.ms-name{font-weight:700;font-size:.82rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis}.ms-range{font-size:.75rem;opacity:.9}.module-strip.mini{margin:.5rem 0 0}.module-strip.mini .ms-seg{padding:.35rem .5rem}.module-strip.mini .ms-seg.off{opacity:.25}@media (max-width: 560px){.module-strip:not(.mini){flex-direction:column}.module-strip:not(.mini) .ms-seg{flex-direction:row;justify-content:space-between}.module-strip.mini .ms-name{font-size:0}}.module-map{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.9rem}.module-map>li{background:var(--panel);border:1px solid var(--border);border-left:5px solid var(--dom);border-radius:var(--radius);padding:.9rem 1rem}.mm-head{display:flex;align-items:center;gap:.75rem}.mm-num{flex:none;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--dom);color:#fff;display:grid;place-items:center;font-weight:700}:root[data-theme=dark] .mm-num{color:#111}.mm-title{flex:1;min-width:0}.mm-practice{font-size:.85rem;font-weight:600;text-decoration:none;border:1px solid var(--border);border-radius:999px;padding:.25rem .8rem;color:var(--text)}.mm-practice:hover{border-color:var(--dom)}.mm-blurb{margin:.5rem 0 .6rem;color:var(--muted);font-size:.92rem}.mm-skills{display:flex;flex-wrap:wrap;gap:.45rem}.skill-chip{display:inline-flex;align-items:center;gap:.4rem;text-decoration:none;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.3rem .8rem;font-size:.9rem}.skill-chip:hover{border-color:var(--dom);color:var(--dom)}.chip-arrow{color:var(--muted)}.dom-tag{display:inline-block;font-size:.78rem;font-weight:700;color:var(--dom);border:1.5px solid var(--dom);border-radius:999px;padding:.1rem .6rem;margin-bottom:.5rem}.g-section{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.2rem;margin-top:1rem}.g-section h2{margin:0 0 .5rem;font-size:1.05rem}.g-section p{margin:0 0 .5rem}.g-empty{border-style:dashed;background:transparent}.stem-list{margin:0;padding-left:1.1rem;font-family:var(--bb-serif)}.stem-list li{margin-bottom:.4rem}.g-steps,.g-traps{margin:0;padding-left:1.2rem}.g-steps li,.g-traps li{margin-bottom:.45rem}.g-example p{font-family:var(--bb-serif)}.g-time{font-weight:600}.g-actions{margin-top:1.25rem}.primary-link{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;padding:.55rem 1.2rem;border-radius:999px}.g-pager{display:flex;justify-content:space-between;gap:1rem;margin-top:1.75rem;padding-top:1rem;border-top:1px solid var(--border)}.g-pager a{text-decoration:none;font-weight:600}.nav-links{display:flex;gap:.25rem;align-items:center}.gb-short{display:none}@media (max-width: 640px){.topnav{flex-wrap:wrap;padding:.45rem .75rem .35rem;row-gap:.3rem}.nav-links{order:3;width:100%;overflow-x:auto;scrollbar-width:none;margin:0 -.25rem}.nav-links::-webkit-scrollbar{display:none}.nav-links a{flex:none;padding:.3rem .6rem}.gb-long{display:none}.gb-short{display:inline}.google-btn{padding:.35rem .75rem}}.setup-list{list-style:none;padding:0;margin:.25rem 0 0;display:grid;gap:.3rem}.setup-list .done{color:var(--ok)}.setup-list .todo{color:var(--text)}
