@import"https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400&display=swap";:root{color-scheme:light dark;--paper: #ffffff;--page: #f6f7f9;--ink: #14213d;--ink-2: #4b5567;--rule: #d5dbe6;--grid: #e9edf3;--accent: #e8640c;--accent-ink: #ffffff;--easy: #1f7a4d;--medium: #a86b00;--hard: #b3261e;--tint-easy: #e4f3eb;--tint-medium: #fbf0d9;--tint-hard: #fbe3e1;--wa: #1f8a4c;--max: 44rem;--font: "Atkinson Hyperlegible", "Segoe UI", Roboto, system-ui, sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #1b2130;--page: #121722;--ink: #eef1f6;--ink-2: #aeb6c6;--rule: #333c4e;--grid: #1f2634;--tint-easy: #173626;--tint-medium: #3a2d10;--tint-hard: #3b1b19;--easy: #6fd19a;--medium: #f0bb55;--hard: #f28b85}}:root[data-theme=dark]{--paper: #1b2130;--page: #121722;--ink: #eef1f6;--ink-2: #aeb6c6;--rule: #333c4e;--grid: #1f2634;--tint-easy: #173626;--tint-medium: #3a2d10;--tint-hard: #3b1b19;--easy: #6fd19a;--medium: #f0bb55;--hard: #f28b85}*,*:before,*:after{box-sizing:border-box}html{scroll-padding-top:4rem;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);font-size:1.0625rem;line-height:1.55;color:var(--ink);background:var(--page);padding-bottom:calc(3.75rem + env(safe-area-inset-bottom,0px))}@media(min-width:48rem){body{padding-bottom:0}}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}h1,h2,h3{line-height:1.2;margin:0 0 .5em}h1{font-size:clamp(1.6rem,4.5vw,2.2rem)}h2{font-size:1.35rem;margin-top:2rem}h3{font-size:1.1rem;margin-top:1.5rem}p,ul,ol{margin:0 0 1em}small,.muted{color:var(--ink-2)}.wrap{max-width:var(--max);margin:0 auto;padding:0 1rem}main.wrap{padding-top:1.25rem;padding-bottom:2.5rem}.site-header{background:var(--paper);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:24px 24px;border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:10}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:3.5rem}.brand{font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.brand span{border-left:4px solid var(--accent);padding-left:.5rem}.site-nav{display:none;gap:1.25rem}.site-nav a{text-decoration:none;font-weight:700}@media(min-width:48rem){.site-nav{display:flex}}.bottom-bar{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(4,1fr);background:var(--paper);border-top:1px solid var(--rule);padding-bottom:env(safe-area-inset-bottom,0px)}.bottom-bar a{text-decoration:none;text-align:center;font-size:.8rem;font-weight:700;padding:.55rem 0 .5rem}.bottom-bar a.tutor{color:var(--accent)}@media(min-width:48rem){.bottom-bar{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;padding:.5rem 1rem;border-radius:.5rem;border:1px solid var(--rule);background:var(--paper);color:var(--ink);font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-accent:hover{color:var(--accent-ink);filter:brightness(.95)}.btn-wa{background:var(--wa);border-color:var(--wa);color:#fff}.btn-wa:hover{color:#fff;filter:brightness(.95)}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0 1rem}.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0 1rem}.chip{border:1px solid var(--rule);border-radius:999px;padding:.3rem .8rem;background:var(--paper);font:inherit;font-size:.9rem;cursor:pointer}.chip[aria-pressed=true]{border-color:var(--accent);color:var(--accent);font-weight:700}.qcard{background:#fff;color:#14213d;border:1px solid var(--rule);border-left:6px solid var(--accent);border-radius:.5rem;margin:1rem 0;overflow:hidden}.qcard .meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;padding:.6rem .9rem;border-bottom:1px solid #e3e8f0;font-size:.9rem;color:#4b5567}.qcard .meta strong{color:#14213d}.qcard .crop{display:block;width:100%;height:auto;background:#fff}.qcard .crop-link{display:block;padding:1rem .9rem}.qcard .actions{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem .9rem;border-top:1px solid #e3e8f0}.qcard .reveal{border-top:1px solid #e3e8f0;padding:.75rem .9rem;background:#fbfbfc}.qcard .reveal[hidden]{display:none}.qcard .reveal h4{margin:0 0 .5rem;font-size:.95rem;color:#4b5567}.qcard .text{padding:.75rem .9rem;font-size:.95rem}.pill{display:inline-block;border-radius:999px;padding:.1rem .6rem;font-size:.8rem;font-weight:700}.pill-easy{background:var(--tint-easy);color:var(--easy)}.pill-medium{background:var(--tint-medium);color:var(--medium)}.pill-hard{background:var(--tint-hard);color:var(--hard)}.qcard .pill-easy{background:#e4f3eb;color:#1f7a4d}.qcard .pill-medium{background:#fbf0d9;color:#a86b00}.qcard .pill-hard{background:#fbe3e1;color:#b3261e}.where{background:var(--paper);border:1px solid var(--rule);border-radius:.5rem;padding:.9rem 1rem;margin:1rem 0 1.5rem}.where dl{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0}.where dt{color:var(--ink-2)}.where dd{margin:0}table{width:100%;border-collapse:collapse;font-size:.95rem;margin:1rem 0}th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--rule);vertical-align:top}th{color:var(--ink-2);font-weight:700}.table-wrap{overflow-x:auto}.lead-block{background:var(--paper);border:1px solid var(--rule);border-top:4px solid var(--accent);border-radius:.5rem;padding:1.25rem 1rem;margin-top:2.5rem}.lead-block h2{margin-top:0}.lead-block form{display:grid;gap:.75rem;margin-top:1rem}.lead-block label{display:grid;gap:.25rem;font-size:.95rem}.lead-block input,.lead-block select,.lead-block textarea{font:inherit;padding:.55rem .65rem;border:1px solid var(--rule);border-radius:.4rem;background:var(--page);color:var(--ink)}.lead-block textarea{min-height:5.5rem}.lead-block .two{display:grid;gap:.75rem}@media(min-width:36rem){.lead-block .two{grid-template-columns:1fr 1fr}}.hidden{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}details.form-toggle summary{cursor:pointer;font-weight:700;margin-top:.5rem}.site-footer{border-top:1px solid var(--rule);color:var(--ink-2);font-size:.9rem;padding:1.5rem 0 2rem}.site-footer .wrap{display:grid;gap:.5rem}.site-footer a{text-decoration:none}.topic-list{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.topic-list li a{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;background:var(--paper);border:1px solid var(--rule);border-radius:.5rem;padding:.7rem .9rem;text-decoration:none}.topic-list li a:hover{border-color:var(--accent);color:inherit}.topic-list .strand{font-size:.85rem;color:var(--ink-2);white-space:nowrap}.strand-head{margin-top:1.5rem}.search{width:100%;font:inherit;padding:.65rem .8rem;border:1px solid var(--rule);border-radius:.5rem;background:var(--paper);color:var(--ink);margin:.5rem 0 1rem}details.solution{border:1px solid var(--rule);border-radius:.5rem;padding:.5rem .9rem;margin:.75rem 0;background:var(--paper)}details.solution summary{cursor:pointer;font-weight:700}@media(prefers-reduced-motion:no-preference){details .reveal{transition:none}}@media print{.site-header,.bottom-bar,.lead-block,.site-footer,.chips,.qcard .actions{display:none!important}.qcard .reveal[hidden]{display:block!important}body{background:#fff;color:#000;padding:0}}.ms-wrap{position:relative}.ms-band{position:absolute;left:0;width:6px;background:var(--accent);border-radius:3px;pointer-events:none}.qcard .meta a{font-size:.85rem}.spec-list{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.5rem}.spec-list label{display:grid;grid-template-columns:1.5rem 1fr;gap:.6rem;align-items:start;background:var(--paper);border:1px solid var(--rule);border-radius:.5rem;padding:.7rem .8rem;cursor:pointer}.spec-list input{width:1.25rem;height:1.25rem;margin-top:.15rem;accent-color:var(--accent)}.spec-list .pill{margin-left:.4rem}.small-text{font-size:.9rem}.spec-list label:has(input:checked){border-color:var(--easy)}.calc{display:grid;gap:.75rem;background:var(--paper);border:1px solid var(--rule);border-radius:.5rem;padding:1rem;margin:1rem 0}.calc label{display:grid;gap:.25rem}.calc input,.calc select{font:inherit;padding:.5rem .6rem;border:1px solid var(--rule);border-radius:.4rem;background:var(--page);color:var(--ink);max-width:14rem}.calc .result{font-size:1.25rem;font-weight:700}.countdown{font-size:2rem;font-weight:700;color:var(--accent)}.panel{background:var(--paper);border:1px solid var(--rule);border-radius:.5rem;padding:1rem;margin:1rem 0;display:grid;gap:.9rem}.panel h3{margin:0;font-size:1rem}.markrow{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-top:.75rem}.markrow span{margin-right:.3rem;font-size:.9rem;color:#4b5567}.qcard .markrow .chip{background:#fff;color:#14213d;border-color:#d5dbe6}.qcard .markrow .chip[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.playbar{position:sticky;top:3.5rem;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--paper);border:1px solid var(--rule);border-radius:.5rem;padding:.5rem .9rem;margin:1rem 0;font-weight:700}.playbar .timer{color:var(--accent);font-variant-numeric:tabular-nums}.summary{display:grid;gap:.4rem}.summary .bar{height:.5rem;background:var(--rule);border-radius:999px;overflow:hidden}.summary .bar i{display:block;height:100%;background:var(--accent)}.score-note{background:var(--paper);border:1px solid var(--rule);border-left:4px solid var(--accent);border-radius:.5rem;padding:.6rem .9rem;margin:1rem 0}.tutor-head{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.tutor-photo{width:7rem;height:7rem;border-radius:50%;object-fit:cover;border:3px solid var(--accent)}blockquote.review{margin:1rem 0;padding:.9rem 1rem;background:var(--paper);border:1px solid var(--rule);border-left:4px solid var(--accent);border-radius:.5rem}blockquote.review p{margin:0 0 .5rem}blockquote.review footer{color:var(--ink-2);font-size:.9rem}.flash{margin:1rem 0}.card3d{background:var(--paper);border:1px solid var(--rule);border-left:6px solid var(--accent);border-radius:.5rem;padding:1.25rem 1rem;min-height:12rem;cursor:pointer}.card3d h2{margin:0 0 .75rem;font-size:1.3rem}.card3d .examiner{background:var(--tint-medium);color:var(--ink);border-radius:.4rem;padding:.5rem .7rem;margin-top:.75rem;font-size:.95rem}.deck-print{display:none}.match{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:1rem 0}.match .col{display:grid;gap:.5rem;align-content:start}.tile{font:inherit;font-size:.9rem;text-align:left;padding:.6rem .7rem;border:1px solid var(--rule);border-radius:.5rem;background:var(--paper);color:var(--ink);cursor:pointer;min-height:3rem}.tile.sel{border-color:var(--accent);color:var(--accent)}.tile.done{opacity:.35;border-color:var(--easy)}.tile.wrong{border-color:var(--hard);background:var(--tint-hard)}@media print{.flash,.playbar,#verdict,.chips{display:none!important}.deck-print{display:block!important}.pcard{break-inside:avoid;border-top:1px solid #ccc;padding:.5rem 0}}.areachart{width:100%;height:auto;display:block;margin:1rem 0}.timeline{display:grid;gap:.35rem;margin:1rem 0}.tl-row{display:grid;grid-template-columns:9rem 1fr;gap:.5rem;align-items:center}.tl-row .lab{font-size:.85rem}.tl-strip{display:flex;height:1.4rem;border-radius:.3rem;overflow:hidden;border:1px solid var(--rule)}.tl-strip a{display:block;height:100%;min-width:2px}.tl-key{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.85rem;margin:.5rem 0 1rem}.tl-key i{display:inline-block;width:.9rem;height:.9rem;border-radius:.2rem;vertical-align:middle;margin-right:.3rem}.ico{width:1.15em;height:1.15em;vertical-align:-.2em;flex:none}.btn .ico,.chip .ico{margin-right:.35rem}.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin:1rem 0 1.5rem}@media(min-width:36rem){.tiles{grid-template-columns:repeat(3,1fr)}}.tile-card{display:block;background:var(--paper);border:1px solid var(--rule);border-radius:.6rem;padding:.9rem;text-decoration:none;color:inherit}.tile-card:hover{border-color:var(--accent);color:inherit}.tile-card .ico{width:1.6rem;height:1.6rem;color:var(--accent);display:block;margin-bottom:.5rem}.tile-card strong{display:block;margin-bottom:.2rem}.tile-card span{font-size:.9rem;color:var(--ink-2)}.site-nav a{display:inline-flex;align-items:center;gap:.35rem}.bottom-bar a{display:flex;flex-direction:column;align-items:center;gap:.1rem}.bottom-bar .ico{width:1.3rem;height:1.3rem}.badge{display:inline-block;font-size:.75rem;font-weight:700;padding:.1rem .5rem;border-radius:999px;color:#fff;vertical-align:middle}.badge-1{background:#2b5fb3}.badge-2{background:#1f7a4d}.badge-3{background:#7b3fb3}.badge-4{background:#a86b00}.topic-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.motif{width:12rem;max-width:40%;height:auto;color:var(--rule);flex:none}:root[data-theme=dark] .motif,:root:not([data-theme=light]) .motif{color:var(--ink-2);opacity:.45}@media(max-width:36rem){.motif{display:none}}.topic-list li a .badge{margin-left:.5rem}.filterbar{position:sticky;top:3.5rem;z-index:6;background:var(--page);margin:0 -1rem;padding:.5rem 1rem;border-bottom:1px solid var(--rule)}.filterbar .chips{margin:0}.filterbar .count{font-size:.85rem;color:var(--ink-2);margin-top:.35rem}.jump{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0 1rem}.jump a{display:inline-block;min-width:2.2rem;text-align:center;padding:.25rem .5rem;border:1px solid var(--rule);border-radius:.4rem;background:var(--paper);text-decoration:none;font-size:.9rem;font-weight:700}.jump a:hover{border-color:var(--accent)}.qcard img.crop{cursor:zoom-in}.zoom{position:fixed;inset:0;z-index:50;background:#000000eb;overflow:auto;-webkit-overflow-scrolling:touch;padding:3rem .5rem 1rem}.zoom img{width:170%;max-width:none;height:auto;background:#fff;border-radius:.25rem}@media(min-width:48rem){.zoom img{width:100%;max-width:60rem;display:block;margin:0 auto}}.zoom .close{position:fixed;top:calc(.75rem + env(safe-area-inset-top,0px));right:.75rem;z-index:51}.hint{display:flex;justify-content:space-between;gap:1rem;align-items:center;background:var(--tint-medium);color:var(--ink);border-radius:.5rem;padding:.6rem .9rem;margin:.75rem 0;font-size:.95rem}.hint button{font:inherit;background:none;border:0;color:inherit;font-weight:700;cursor:pointer}.progress-box{background:var(--paper);border:1px solid var(--rule);border-left:4px solid var(--accent);border-radius:.6rem;padding:.9rem 1rem;margin:1rem 0}.progress-box dl{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:.5rem 0}.progress-box dt{font-size:.8rem;color:var(--ink-2)}.progress-box dd{margin:0;font-weight:700;font-size:1.1rem}.search-toggle{font:inherit;background:none;border:1px solid var(--rule);border-radius:.5rem;padding:.3rem .6rem;cursor:pointer;color:inherit;display:inline-flex;align-items:center;gap:.3rem}.search-panel{background:var(--paper);border-bottom:1px solid var(--rule)}.search-panel .wrap{padding:.75rem 1rem 1rem}.search-results{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.3rem}.search-results a{display:flex;justify-content:space-between;gap:1rem;padding:.5rem .7rem;border:1px solid var(--rule);border-radius:.4rem;text-decoration:none;background:var(--page)}.search-results .kind{font-size:.8rem;color:var(--ink-2);white-space:nowrap}.toast{position:fixed;left:50%;bottom:calc(4.5rem + env(safe-area-inset-bottom,0px));transform:translate(-50%);background:var(--ink);color:var(--paper);padding:.5rem .9rem;border-radius:999px;font-size:.9rem;z-index:60;opacity:0;transition:opacity .2s;pointer-events:none}.toast.show{opacity:1}@media print{.filterbar,.jump,.hint,.search-panel,.search-toggle{display:none!important}}.heatmap{border-collapse:separate;border-spacing:2px;font-size:.85rem}.heatmap th,.heatmap td{border:0;padding:.35rem .4rem;text-align:center;border-radius:.25rem}.heatmap thead th{color:var(--ink-2);font-weight:700;white-space:nowrap}.heatmap tbody th{text-align:left;font-weight:400;white-space:nowrap;position:sticky;left:0;background:var(--page);max-width:14rem;overflow:hidden;text-overflow:ellipsis}.heatmap td{background:var(--paper);min-width:2.6rem;font-variant-numeric:tabular-nums}.heatmap td.tot{font-weight:700;color:var(--ink-2)}.tool-strip{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem 0 .5rem;margin:.75rem 0 1rem;scrollbar-width:none}.tool-strip::-webkit-scrollbar{display:none}.tool-strip a{flex:none;display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .8rem;border:1px solid var(--rule);border-radius:999px;background:var(--paper);text-decoration:none;font-weight:700;font-size:.95rem}.tool-strip a .ico{color:var(--accent)}.tool-strip a:hover{border-color:var(--accent);color:inherit}[hidden]{display:none!important}.qcard details.stem{margin:.25rem 0 .6rem;border:1px dashed var(--rule);border-radius:.5rem;background:var(--paper)}.qcard details.stem summary{cursor:pointer;padding:.5rem .75rem;font-weight:600;font-size:.92rem;display:flex;align-items:center;gap:.4rem;list-style:none}.qcard details.stem summary::-webkit-details-marker{display:none}.qcard details.stem summary:before{content:"▸";color:var(--accent)}.qcard details.stem[open] summary:before{content:"▾"}.qcard details.stem img.crop{margin:0 .5rem .5rem;width:calc(100% - 1rem)}.spec-list b{font-weight:600}.spec-list ul{margin:.25rem 0 0 1rem;padding:0}
