:root{--bg: #f6f7f8;--surface: #ffffff;--ink: #1a2333;--ink-soft: #55606f;--ink-faint: #8a94a3;--line: #dfe3e9;--brand: #1c2f4e;--brand-soft: #e9eef6;--priority: #b45309;--priority-soft: #fdf2e3;--blind: #b91c1c;--blind-soft: #fdecec;--reassure: #1d4ed8;--reassure-soft: #e8effc;--ok: #15803d;--gold: #b8860b;--warn: #b45309;--bad: #b91c1c;--radius: 10px;--shadow: 0 1px 2px rgba(20, 40, 30, .06), 0 4px 16px rgba(20, 40, 30, .05);--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--topbar-h: 57px}*{box-sizing:border-box}body{-webkit-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select,[contenteditable=true]{-webkit-user-select:text;-ms-user-select:text;user-select:text}img{-webkit-user-drag:none;user-drag:none}html,body{max-width:100%;overflow-x:hidden;margin:0;padding:0}body{background:var(--bg);color:var(--ink);font:16px/1.55 Futura,Futura PT,Century Gothic,Avenir Next,Trebuchet MS,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.25;margin:0 0 .5em;letter-spacing:-.01em}h1{font-size:1.7rem}h2{font-size:1.25rem}h3{font-size:1rem}p{margin:0 0 1em}a{color:var(--brand)}.shell{max-width:940px;margin:0 auto;padding:0 20px 80px}.shell.narrow{max-width:560px}.topbar{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar-inner{max-width:940px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:16px;min-width:0}.logo{font-weight:700;color:var(--brand);text-decoration:none;letter-spacing:.01em;display:inline-flex;align-items:center;gap:9px}.logo img{height:30px;width:auto;display:block}.topnav{display:flex;gap:4px;margin-left:auto;align-items:center;flex-wrap:wrap}.topnav a{color:var(--ink-soft);text-decoration:none;padding:6px 10px;border-radius:7px;font-size:.92rem}.topnav a:hover{background:var(--bg)}.topnav a[aria-current=page]{background:var(--brand-soft);color:var(--brand);font-weight:600}.topnav a.nav-gold{color:#8a6d14}.topnav a.nav-gold:hover,.topnav a.nav-gold[aria-current=page]{background:#f7e9bf;color:#6d550f}.banner{background:#fff8e1;border-bottom:1px solid #f0e2b6;color:#6b5312;font-size:.85rem;padding:7px 20px;text-align:center}.banner strong{font-weight:700}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:16px}.card h2{margin-top:0}.card-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:12px}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint);font-size:.86rem}button,.btn{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:9px 16px;cursor:pointer;text-decoration:none;display:inline-block;transition:background .12s,border-color .12s}button:hover:not(:disabled),.btn:hover{background:var(--bg)}button:disabled{opacity:.45;cursor:not-allowed}.btn-primary,button.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.btn-primary:hover,button.primary:hover:not(:disabled){background:#0f3d21}.btn-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}label{display:block;font-size:.9rem;font-weight:600;margin-bottom:5px}input[type=text],input[type=password],select{font:inherit;width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}input:focus,select:focus,button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.field{margin-bottom:14px}.error{background:var(--blind-soft);border:1px solid #f3c9c9;color:var(--blind);padding:10px 12px;border-radius:8px;font-size:.9rem;margin-bottom:14px}.notice{background:var(--brand-soft);border:1px solid #cfe2d6;color:#1d4732;padding:10px 12px;border-radius:8px;font-size:.9rem;margin-bottom:14px}.bar{height:9px;background:#e9ece9;border-radius:99px;overflow:hidden;position:relative}.bar>i{display:block;height:100%;border-radius:99px;background:var(--brand);transition:width .4s ease}.bar.lg{height:14px}.bar .ceil{position:absolute;top:-3px;bottom:-3px;width:2px;background:repeating-linear-gradient(to bottom,var(--ink-faint) 0 3px,transparent 3px 6px)}.barline{display:flex;align-items:center;gap:12px;padding:7px 0;min-height:46px;box-sizing:border-box}.barline .name{flex:1 1 auto;min-width:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.barline .name b{font-weight:600}.barline .barwrap{flex:0 0 190px;position:relative}.barline .barwrap .bar{width:100%}.barline>.bar{flex:0 0 190px}.barline .val{flex:0 0 46px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.barline .chg{flex:0 0 42px;text-align:right;font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.barline .chg.up{color:var(--ok)}.barline .chg.down{color:var(--bad)}.barline.size-hero{padding:10px 0 14px}.barline.size-hero .name b{font-size:1.6rem;font-weight:700;letter-spacing:-.02em}.barline.size-hero .bar{flex:1 1 100%;order:3;height:22px}.barline.size-hero .val{font-size:1.9rem;flex:0 0 auto}.barline.size-hero{flex-wrap:wrap}.barline.size-hero .name{flex:1 1 auto}.barline.size-large .name b{font-size:1.15rem;font-weight:700}.barline.size-large .bar{height:12px;flex:0 0 220px}.barline.size-large .val{font-size:1.05rem}.tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:2px 7px;border-radius:5px;background:var(--bg);color:var(--ink-soft);border:1px solid var(--line);vertical-align:middle}.tag.keystone{background:var(--brand-soft);color:var(--brand);border-color:#cfe2d6}.tag.easy{background:#eaf6ee;color:var(--ok);border-color:#cfe6d7}.tag.medium{background:var(--priority-soft);color:var(--priority);border-color:#f0dcbd}.tag.hard{background:var(--blind-soft);color:var(--blind);border-color:#f3c9c9}.panels{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));align-items:start}.panel{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.panel h2{font-size:1.05rem;margin-bottom:2px}.panel .sub{font-size:.84rem;color:var(--ink-soft);margin-bottom:12px}.panel.priority{border-top-color:var(--priority)}.panel.priority h2{color:var(--priority)}.panel.blind{border-top-color:var(--blind)}.panel.blind h2{color:var(--blind)}.panel.reassure{border-top-color:var(--reassure)}.panel.reassure h2{color:var(--reassure)}.panel ol{margin:0;padding:0;list-style:none}.panel li{padding:9px 0;border-top:1px solid var(--line);font-size:.92rem}.panel li:first-child{border-top:0}.panel li .row1{display:flex;gap:8px;align-items:baseline}.panel li .row1 b{flex:1 1 auto;font-weight:600}.panel li .row1 b a{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor}.panel li .row1 b a:hover{border-bottom-style:solid}.panel li .metric{font-variant-numeric:tabular-nums;font-size:.82rem;color:var(--ink-faint)}.panel .empty{font-size:.9rem;color:var(--ink-faint);font-style:italic;padding:6px 0}.exam{font-family:Arial,Helvetica,sans-serif}.exam .stem{color:#111;font-size:1.02rem;line-height:1.5}.exam .opt{border:1px solid transparent;background:transparent;padding:8px 12px;border-radius:6px;align-items:baseline}.exam .opt .letter{flex:0 0 26px;height:auto;background:none;border:none;border-radius:0;display:block;text-align:left;font-weight:700;font-size:1rem;color:#111}.exam .opt:hover:not(:disabled){background:var(--brand-soft);border-color:transparent}.exam .opt.chosen{background:var(--brand-soft);border-color:var(--brand)}.exam .opt.chosen .letter{background:none;color:var(--brand)}.exam .opt.right{background:#eef8f1;border-color:var(--ok)}.exam .opt.right .letter{background:none;color:var(--ok)}.exam .opt.wrong{background:var(--blind-soft);border-color:var(--bad)}.exam .opt.wrong .letter{background:none;color:var(--bad)}.streak{display:inline-flex;align-items:center;gap:5px;background:var(--priority-soft);color:var(--priority);font-weight:700;font-size:.85rem;padding:3px 11px;border-radius:99px;animation:streak-pop .25s ease}@keyframes streak-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.sitefoot{text-align:center;color:var(--ink-faint);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;padding:34px 0 12px}.qmeta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px;font-size:.85rem;color:var(--ink-soft)}.stem{font-size:1.06rem;margin-bottom:18px}.options{display:grid;gap:8px;margin-bottom:18px}.opt{display:flex;gap:11px;align-items:flex-start;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface);cursor:pointer}.opt:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}.opt .letter{flex:0 0 24px;height:24px;border-radius:50%;background:var(--bg);border:1px solid var(--line);display:grid;place-items:center;font-size:.8rem;font-weight:700}.opt.chosen{border-color:var(--brand);background:var(--brand-soft)}.opt.chosen .letter{background:var(--brand);border-color:var(--brand);color:#fff}.opt.right{border-color:var(--ok);background:#eef8f1}.opt.right .letter{background:var(--ok);border-color:var(--ok);color:#fff}.opt.wrong{border-color:var(--bad);background:var(--blind-soft)}.opt.wrong .letter{background:var(--bad);border-color:var(--bad);color:#fff}.opt:disabled{cursor:default;opacity:1}.explain{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:16px}.explain .why-right{padding:16px;background:#f4faf6;border-bottom:1px solid var(--line)}.explain .why-right h3{color:var(--ok);margin-bottom:8px}.explain .why-right .body{white-space:pre-wrap;font-size:.94rem}.explain .why-wrong{padding:16px}.explain .why-wrong h3{color:var(--ink-soft);margin-bottom:8px}.explain .why-wrong ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}.explain .why-wrong li{font-size:.9rem;display:flex;gap:9px}.explain .why-wrong .l{flex:0 0 18px;font-weight:700;color:var(--ink-faint)}.deeper{font-size:.84rem;color:var(--ink-soft);margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.deeper-btn{margin-top:12px;font-size:.9rem;border-color:var(--ok);color:var(--ok);font-weight:600;background:#fff}.deeper-btn:hover{background:#eef8f1}.deeper-body{margin-top:12px;padding-top:12px;border-top:1px solid #d6ead e;border-top-color:#d6eade;animation:reveal .2s ease}@keyframes reveal{0%{opacity:0;transform:translateY(-3px)}}.progress-dots{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:16px}.progress-dots .dot{width:100%;max-width:20px;flex:1 1 10px;height:10px;padding:0;border-radius:99px;background:var(--line);border:1px solid transparent;cursor:pointer;transition:transform .12s,background .12s}.progress-dots .dot:hover{transform:scaleY(1.5);background:var(--ink-faint)}.progress-dots .dot.done{background:var(--brand)}.progress-dots .dot.retry{background:repeating-linear-gradient(45deg,var(--line) 0 3px,var(--priority-soft) 3px 6px)}.progress-dots .dot.done.retry{background:var(--priority)}.progress-dots .dot.starred{box-shadow:0 0 0 2px var(--priority-soft)}.progress-dots .dot.now{background:var(--priority);border-color:var(--ink);transform:scaleY(1.6)}.iconbtn{font-size:.8rem;padding:3px 9px;border-radius:7px;color:var(--ink-soft);background:var(--surface)}.iconbtn.on{background:var(--priority-soft);border-color:#f0dcbd;color:var(--priority);font-weight:700}.tag.retry-tag{background:var(--priority-soft);color:var(--priority);border-color:#f0dcbd;text-transform:none;letter-spacing:0}.linkish{border:0;background:none;padding:0;color:var(--brand);text-decoration:underline;font-size:inherit;cursor:pointer}.famgroup{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.famgroup:first-of-type{border-top:0;margin-top:0;padding-top:0}.famgroup>h3{margin-bottom:10px}.famhead{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--line)}.famtitle{font-size:1.22rem;font-weight:700;letter-spacing:-.01em;color:var(--ink);text-decoration:none}.famtitle:hover{color:var(--brand);text-decoration:underline}.famscore{font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink-soft);background:var(--bg);border:1px solid var(--line);border-radius:99px;padding:1px 10px;font-size:.85rem}.famhead .btn-sm{margin-left:auto;padding:5px 12px;font-size:.82rem}.famgroup .barline .name{padding-left:4px;font-size:.95rem}.slider-row{display:flex;align-items:center;gap:14px;padding:7px 0}.slider-row .name{flex:1 1 auto;font-size:.94rem;min-width:0}.slider-wrap{flex:0 0 200px;position:relative;border-radius:99px}.slider-wrap input[type=range]{width:100%;display:block;accent-color:var(--brand)}.slider-wrap.wave:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:99px;pointer-events:none;background:linear-gradient(90deg,transparent 20%,rgba(21,128,61,.28) 50%,transparent 80%);background-size:60% 100%;background-repeat:no-repeat;background-position:-60% 0;opacity:0;animation:slider-wave 1.5s ease-in-out var(--wave-delay, .6s) 3}@keyframes slider-wave{0%{background-position:-60% 0;opacity:0}15%{opacity:1}85%{opacity:1}to{background-position:160% 0;opacity:0}}@media(prefers-reduced-motion:reduce){.slider-wrap.wave:after{animation:none}}.slider-row .v{flex:0 0 30px;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.scale-row{padding:0 0 2px}.slider-scale{flex:0 0 200px;display:flex;justify-content:space-between;font-size:.74rem;color:var(--ink-faint)}.deltacard{border-left:4px solid var(--line)}.deltacard.up{border-left-color:var(--ok);background:linear-gradient(180deg,#f4faf6,var(--surface))}.deltacard.down{border-left-color:var(--bad);background:linear-gradient(180deg,#fdf5f5,var(--surface))}.deltacard.up h2{color:var(--ok)}.deltacard.down h2{color:var(--bad)}.deltabar{display:flex;align-items:center;gap:12px}.deltabar .from,.deltabar .to{font-variant-numeric:tabular-nums;font-weight:700;font-size:1.05rem;flex:0 0 34px}.deltabar .from{text-align:right;color:var(--ink-faint)}.deltabar .to{color:var(--ink)}.deltabar .track{flex:1 1 auto;position:relative;height:14px;background:#e9ece9;border-radius:99px;overflow:hidden}.deltabar .track .base{position:absolute;left:0;top:0;bottom:0;background:var(--ink-faint);opacity:.45}.deltabar .track .change{position:absolute;top:0;bottom:0;background:var(--ok);transition:width .6s ease}.deltacard.down .track .change{background:var(--bad)}.tip{position:relative}.tip:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--ink);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.01em;text-transform:none;line-height:1.3;padding:4px 8px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:30;box-shadow:0 2px 8px #0000002e}.tip:before{content:"";position:absolute;bottom:calc(100% + 1px);left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--ink);pointer-events:none;opacity:0;visibility:hidden;z-index:30}.tip:hover:after,.tip:hover:before,.tip:focus-visible:after,.tip:focus-visible:before{opacity:1;visibility:visible}.pagehead{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}.pagehead h1{flex:1 1 auto}.disclosure{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:none;padding:0;font:inherit;cursor:pointer;color:var(--ink)}.disclosure b{font-size:1.25rem}.disclosure .tw{color:var(--ink-faint);width:14px}.disclosure:hover b{color:var(--brand)}.sessions{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:14px;table-layout:fixed}.sessions th{text-align:left;color:var(--ink-faint);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;padding-bottom:6px}.sessions td{padding:9px 0;border-top:1px solid var(--line);vertical-align:top}.sessions td:first-child,.sessions td:nth-child(2),.sessions td:nth-child(3){padding-top:11px}.sessions th:nth-child(2){width:42%}.sessions th:nth-child(3){width:66px}.sessions td:nth-child(2){overflow:hidden;text-overflow:ellipsis}.sessions td a{color:var(--ink);text-decoration:none;border-bottom:1px dotted var(--ink-faint)}.sessions td a:hover{color:var(--brand);border-bottom-color:var(--brand)}.kindchip{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--brand-soft);color:var(--brand);border:1px solid #cfdcee;font-size:.95rem;cursor:help}.kindchip.diag{background:var(--priority-soft);color:var(--priority);border-color:#f0dcbd}.topicchips{display:flex;align-items:center;gap:2px;flex-wrap:wrap;min-height:20px}.morechip{background:none;border:1px dashed var(--line);border-radius:999px;padding:1px 8px;margin-left:2px;font-size:.76rem;font-weight:600;color:var(--ink-soft);cursor:pointer;line-height:1.5}.morechip:hover{border-style:solid;border-color:var(--brand);color:var(--brand)}.pager{display:flex;align-items:center;gap:12px;margin-top:12px}.pager button{padding:4px 12px;font-size:1rem;line-height:1.2}.topicdelta{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:.9rem;border-top:1px solid var(--line)}.topicdelta:first-of-type{border-top:0}.topicdelta .name{flex:1 1 auto;min-width:0;color:var(--ink);text-decoration:none;border-bottom:1px dotted var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topicdelta .name:hover{color:var(--brand)}.topicdelta .was,.topicdelta .now,.topicdelta .chg{font-variant-numeric:tabular-nums;font-weight:700}.topicdelta .was{flex:0 0 26px;text-align:right;color:var(--ink-faint)}.topicdelta .now{flex:0 0 26px;color:var(--ink)}.topicdelta .chg{flex:0 0 56px;text-align:right;color:var(--ink-faint);white-space:nowrap}.topicdelta.up .now,.topicdelta.up .chg{color:var(--ok)}.topicdelta.down .now,.topicdelta.down .chg{color:var(--bad)}.deltabar.mini{flex:0 0 150px;gap:0}.deltabar.mini .track{height:7px}.topicdelta.down .deltabar .track .change{background:var(--bad)}.countrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.count{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 12px;font-size:.85rem;color:var(--ink-soft)}.count b{font-size:1.05rem;color:var(--ink);margin-right:3px}.count.warn{background:var(--blind-soft);border-color:#f3c9c9;color:var(--blind)}.count.warn b{color:var(--blind)}.count.plain{font:inherit;font-size:.85rem;cursor:pointer}.count.plain:hover{border-color:var(--brand)}.launcher{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;align-items:end;margin-top:auto}.launcher .lf{min-width:0}.launcher .lf label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.launcher .lf-go{grid-column:1 / -1;text-align:center;white-space:nowrap;padding:10px 16px}.grid2>.card{display:flex;flex-direction:column}.alltoggle{display:flex;gap:9px;align-items:center;font-weight:400;padding:8px 10px;margin-bottom:8px;background:var(--bg);border:1px solid var(--line);border-radius:8px;cursor:pointer}.alltoggle span:last-child{margin-left:auto;font-size:.82rem}.alltoggle.pending{opacity:.55;cursor:not-allowed}.statgrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.statgrid>div{display:flex;flex-direction:column;gap:1px}.statgrid .stat{font-size:1.5rem;line-height:1.1}.statgrid .faint{font-size:.8rem}.barline .name a{color:inherit;text-decoration:none}.barline .name a:hover{color:var(--brand)}.grid2{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.stat{font-size:2rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.center{text-align:center}.spacer{height:22px}hr{border:0;border-top:1px solid var(--line);margin:18px 0}details summary{cursor:pointer;font-size:.9rem;color:var(--ink-soft);padding:4px 0}@media(max-width:620px){.barline .bar{flex:0 0 100px}.slider-wrap,.slider-scale{flex:0 0 130px}}.hero{max-width:620px;margin:28px auto 24px;text-align:center}.hero h1{margin:0 0 12px}.hero p{color:var(--ink-soft);font-size:.98rem;line-height:1.6;margin:0 0 12px}.hero p:last-child{margin-bottom:0}.hero blockquote{margin:16px auto;padding:12px 0;max-width:540px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-style:italic;font-size:1.06rem;line-height:1.6;color:var(--ink)}@media(max-width:620px){.hero{margin-top:26px;text-align:left}.hero blockquote{text-align:center}}.topicname{background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer;border-bottom:1px dashed var(--line)}.topicname:hover,.topicname[aria-expanded=true]{color:var(--brand);border-bottom-color:var(--brand)}.topicname .what{display:inline-block;width:15px;height:15px;margin-left:6px;border:1px solid currentColor;border-radius:50%;font-size:.66rem;line-height:13px;text-align:center;opacity:.55;vertical-align:1px}.topicname:hover .what,.topicname[aria-expanded=true] .what{opacity:1}.covers{margin:2px 0 14px;padding:12px 14px;border-left:3px solid var(--brand);background:var(--bg);border-radius:0 8px 8px 0}.covers .anchor{margin:0 0 8px;font-size:.8rem;color:var(--ink-soft);font-style:italic}.covers .lead{margin:0 0 6px;font-size:.86rem;font-weight:600;color:var(--ink)}.covers ul{margin:0;padding-left:18px;columns:2;column-gap:26px}.covers li{font-size:.85rem;line-height:1.5;color:var(--ink-soft);break-inside:avoid;margin-bottom:2px}@media(max-width:620px){.covers ul{columns:1}}.hero .step{margin-top:14px;margin-bottom:0;font-size:1.02rem;line-height:1.7;color:var(--ink)}.morewrap{position:relative;display:inline-flex}.topicpop{position:absolute;top:calc(100% + 6px);right:0;z-index:40;min-width:232px;max-height:300px;overflow-y:auto;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 26px #00000029;text-align:left}.topicpop .pophead{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);padding-bottom:7px;margin-bottom:6px;border-bottom:1px solid var(--line)}.topicpop ul{list-style:none;margin:0;padding:0}.topicpop li{display:flex;align-items:center;gap:8px;padding:3px 0}.topicpop li a{font-size:.85rem;color:var(--ink);text-decoration:none;border-bottom:0;white-space:nowrap}.topicpop li a:hover{color:var(--brand)}.herocta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px}.herocta .faint{font-size:.88rem}.barline .bar i.hold{position:absolute;left:0;top:0;bottom:0;background:var(--ink-faint);opacity:.45;border-radius:999px 0 0 999px}.barline .bar i.hold:only-child{border-radius:999px}.barline .bar i.moved{position:absolute;top:0;bottom:0;border-radius:0 999px 999px 0}.barline .bar i.moved.up{background:var(--ok)}.barline .bar i.moved.down{background:var(--bad)}.nextsteps{border-left:4px solid var(--brand)}.qnav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0}.qnav button{padding:7px 14px;font-size:.9rem}.qnav button:disabled{opacity:.4;cursor:default}.sessiontopics{display:inline-flex;align-items:center;gap:3px;margin-left:6px;vertical-align:-4px}.barline .bar i.shine{background:linear-gradient(100deg,#b8860b,#e8c14a 22%,#fff3c4,#e8c14a 46%,#b8860b 70%)!important;background-size:260% 100%!important;animation:cumshine 3.6s linear infinite;box-shadow:0 0 10px #d8a82a8c}@keyframes cumshine{0%{background-position:160% 0}to{background-position:-60% 0}}.barline.cumlaude .val{color:#a97a09;font-weight:800}.cumstar{margin-left:5px;font-size:.82rem;vertical-align:1px}@media(prefers-reduced-motion:reduce){.barline .bar i.shine{animation:none;background-position:40% 0}}.egbox{margin-top:12px;padding:12px 14px;border-left:3px solid var(--bad);background:var(--bg);border-radius:0 8px 8px 0}.egbox .eghead{margin:0 0 6px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint)}.egbox .egstem{margin:0 0 8px;font-size:.9rem;line-height:1.5}.egbox .egline{margin:0 0 6px;font-size:.88rem}.egbox .egline .wrong{color:var(--bad)}.egbox .egwhy{margin:0 0 8px;font-size:.86rem;color:var(--ink-soft);font-style:italic}.egbox a{font-size:.82rem;text-decoration:none}.cltopics{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2px 18px}.cltopic{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:.92rem;cursor:pointer;min-height:38px}.cltopic.locked{opacity:.45;cursor:not-allowed}.cltopic .clname{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cltopic .clstate{flex:0 0 auto;font-size:.76rem;color:var(--ink-faint);white-space:nowrap}.cltopic .clstate.open{color:#a97a09;font-weight:600}.mistpager{justify-content:center;gap:18px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.askreview{border-left:4px solid var(--gold);margin-top:28px}.homechart{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.exitbtn{margin-left:auto;background:none;border:1px solid var(--line);border-radius:7px;padding:3px 10px;font-size:.8rem;color:var(--ink-soft);cursor:pointer}.exitbtn:hover{border-color:var(--bad);color:var(--bad)}.exitcard,.retakewarn{border-left:4px solid var(--warn)}.resumecard{border-left:4px solid var(--brand);margin-top:24px}.topnav a.nav-teacher{color:var(--brand);font-weight:700;background:var(--brand-soft)}.prose h2{font-size:1.05rem;margin:22px 0 6px}.prose h2:first-child{margin-top:0}.prose p,.prose li{font-size:.95rem;line-height:1.6;max-width:68ch}.prose ul{margin:0 0 6px;padding-left:20px}.footsep{margin:0 6px;opacity:.5}.countdown{margin:14px 0 0;font-size:.95rem;color:var(--ink-soft)}.countdown b{color:var(--ink)}@media(max-width:620px){:root{--topbar-h: 52px}.shell{padding:0 14px 64px}.topbar-inner{padding:9px 14px;gap:10px}.topnav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:2px;min-width:0}.topnav::-webkit-scrollbar{display:none}.topnav a{padding:6px 8px;font-size:.86rem;white-space:nowrap}.logo span{display:none}.logo img{height:26px}.opt{min-height:48px;padding:12px 13px;align-items:center}.btn-row button,.btn-row .btn{min-height:44px}.progress-dots{gap:5px}.progress-dots .dot{height:14px;max-width:26px;flex:1 1 14px}.barline{flex-wrap:wrap;min-height:0;padding:9px 0;gap:6px 10px}.barline .name{flex:1 1 100%;font-size:.92rem;-webkit-line-clamp:3;line-clamp:3}.barline .barwrap,.barline>.bar{flex:1 1 auto;min-width:0}.barline .val{flex:0 0 38px}.barline .chg{flex:0 0 34px}.prose p,.prose li{max-width:none}.tablewrap{margin:0;padding:0}.hero blockquote{font-size:1rem}.card{padding:14px}}@media(max-width:620px){.card.exam{margin-left:-14px;margin-right:-14px;width:calc(100% + 28px);border-radius:0;border-left:0;border-right:0;box-shadow:none;padding:14px 16px 18px}.card.exam .stem{font-size:1.08rem;line-height:1.5;margin-bottom:16px}.card.exam .qmeta{font-size:.78rem;gap:6px;margin-bottom:10px}.card.exam .opt{border-radius:12px;font-size:.98rem;line-height:1.4}.progress-dots{gap:0;margin-bottom:10px;border-radius:999px;overflow:hidden;background:var(--line)}.progress-dots .dot{height:6px;max-width:none;flex:1 1 0;border-radius:0;border:0;min-width:0}.card.exam .navrow{position:sticky;bottom:0;background:var(--surface);padding:10px 0 4px;margin:0 0 8px;gap:8px;border-top:1px solid var(--line);z-index:5}.card.exam .navrow button,.card.exam .navrow .btn{flex:1 1 0;min-height:48px;justify-content:center}.card.exam .navrow .faint{display:none}}.verdict{margin:0 0 12px;padding:10px 13px;border-radius:10px;font-weight:700;font-size:1rem;background:var(--blind-soft);color:var(--blind);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;animation:verdict-in .22s ease-out both}.verdict.right{background:#e7f6ec;color:var(--ok)}.verdict.waiting{background:var(--brand-soft);color:var(--ink-soft);font-weight:600}.verdict-cue{margin-left:auto;font-size:.8rem;font-weight:600;opacity:.75}@keyframes verdict-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.verdict{animation:none}}
