:root{--display:"Bricolage Grotesque", "Figtree", system-ui, sans-serif;--text:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--paper:#fbf7f0;--grid:#1d24330b;--card:#fff;--ink:#1d2433;--ink-2:#3f4859;--muted:#727a8c;--faint:#a7adba;--line:#e9e2d6;--line-2:#d8cfbf;--graphite:#2b3140;--brand:#f7941d;--brand-2:#ea8205;--brand-ink:#a85600;--brand-tint:#fff1de;--on-brand:#1d2433;--ok:#12945a;--ok-tint:#e5f5ec;--bad:#d93a3a;--bad-tint:#fdeaea;--marker:#ffe36e;--map-land:#ece6db;--map-stroke:#fbf7f0;--map-hatch:#3f4859;--marker-ink:#1d2433;--r:16px;--shadow:0 1px 0 #1d24330a, 0 10px 24px -18px #1d243359;--topbar-h:60px;--bottomnav-h:68px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#12151c;--grid:#ffffff08;--card:#1a1e27;--ink:#eef0f5;--ink-2:#c5cad6;--muted:#8d94a5;--faint:#5b6273;--line:#2a303c;--line-2:#39404e;--graphite:#e7e9ef;--brand-ink:#ffb259;--brand-tint:#36260f;--ok:#34c27e;--ok-tint:#12291f;--bad:#f06363;--bad-tint:#33181a;--marker:#6b5a12;--map-land:#262b36;--map-stroke:#12151c;--map-hatch:#c5cad6;--marker-ink:#eef0f5;--shadow:0 1px 0 #0000004d, 0 10px 24px -18px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#12151c;--grid:#ffffff08;--card:#1a1e27;--ink:#eef0f5;--ink-2:#c5cad6;--muted:#8d94a5;--faint:#5b6273;--line:#2a303c;--line-2:#39404e;--graphite:#e7e9ef;--brand-ink:#ffb259;--brand-tint:#36260f;--ok:#34c27e;--ok-tint:#12291f;--bad:#f06363;--bad-tint:#33181a;--marker:#6b5a12;--map-land:#262b36;--map-stroke:#12151c;--map-hatch:#c5cad6;--marker-ink:#eef0f5;--shadow:0 1px 0 #0000004d, 0 10px 24px -18px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{color:var(--ink);font:500 16px/1.55 var(--text);background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:22px 22px;background-attachment:fixed;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.01em;font-weight:700;line-height:1.2}h1{font-size:28px}h2{font-size:21px}h3{font-size:17px}.muted{color:var(--muted)}.small{font-size:14px}.center{text-align:center}.error{color:var(--bad);font-weight:700}.eyebrow{font:600 11.5px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ink-ok{color:var(--ok)}.ink-bad{color:var(--bad)}.ink-brand{color:var(--brand-ink)}.link{cursor:pointer;color:var(--brand-ink);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline;text-decoration-thickness:1.5px}.stack{gap:18px;display:grid}.section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-top:10px;display:flex}.page-head{gap:6px;display:grid}.page-head p{max-width:54ch}.pulse{animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.logo{color:var(--ink);align-items:center;gap:10px;display:inline-flex}.logo-mark{display:block}.logo-dot{fill:var(--brand)}.logo-word{font:800 24px/1 var(--display);letter-spacing:-.03em}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:18px}.btn{cursor:pointer;min-height:46px;font:700 15.5px/1 var(--text);white-space:nowrap;background:0 0;border:1.5px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;transition:background .15s,border-color .15s,transform 80ms,opacity .15s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn.primary{background:var(--brand);color:var(--on-brand)}.btn.primary:hover:not(:disabled){background:var(--brand-2)}.btn.outline{border-color:var(--line-2);color:var(--ink);background:var(--card)}.btn.outline:hover{border-color:var(--ink)}.btn.ghost{color:var(--ink-2)}.btn.ghost:hover{background:var(--paper)}.btn:disabled{background:var(--line);color:var(--faint);cursor:default}.btn.lg{border-radius:14px;min-height:52px;padding:12px 22px;font-size:16.5px}.btn.sm{border-radius:10px;min-height:38px;padding:7px 12px;font-size:14.5px}.icon-btn{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--line);color:var(--ink)}.chip{border:1px solid var(--line);background:var(--card);height:36px;font:700 14px/1 var(--text);color:var(--ink-2);border-radius:99px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.chip.streak b{font-family:var(--mono)}.chip.streak.on{color:var(--brand-ink);border-color:color-mix(in srgb, var(--brand) 50%, var(--line));background:var(--brand-tint)}.sidebar,.rail{display:none}.topbar{z-index:30;height:var(--topbar-h);background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:0 16px;display:flex;position:sticky;top:0}.topbar-right{align-items:center;gap:8px;display:flex}.content-wrap{padding:18px 16px calc(var(--bottomnav-h) + 28px + env(safe-area-inset-bottom))}.page{width:100%;max-width:640px;margin:0 auto}.bottomnav{z-index:30;height:calc(var(--bottomnav-h) + env(safe-area-inset-bottom));padding:6px 8px env(safe-area-inset-bottom);background:var(--card);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.bottom-item{color:var(--muted);align-content:center;justify-items:center;gap:3px;font-size:12px;font-weight:700;display:grid;position:relative}.bottom-item.active{color:var(--ink)}.bottom-item.active:before{content:"";background:var(--brand);border-radius:3px;width:22px;height:3px;position:absolute;top:2px}.switcher{position:relative}.switch-btn{cursor:pointer}.switch-btn:hover{border-color:var(--line-2)}.switch-name{color:var(--ink)}.switch-menu{z-index:40;background:var(--card);border:1px solid var(--line);width:260px;box-shadow:var(--shadow), 0 18px 40px -20px #00000059;border-radius:14px;gap:2px;padding:8px;animation:.14s ease-out rise;display:grid;position:absolute;top:calc(100% + 8px);right:0}.switcher.up .switch-menu{inset:auto auto calc(100% + 8px) 0}.switch-menu .eyebrow{padding:8px 10px 6px}.switch-item{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px;font-weight:700;display:flex}.switch-item span{flex:1}.switch-item small,.switch-item em{font:600 12px var(--mono);color:var(--muted);font-style:normal}.switch-item:hover:not(:disabled){background:var(--paper)}.switch-item.selected{background:var(--brand-tint)}.switch-item:disabled{opacity:.5;cursor:default}@keyframes rise{0%{opacity:0;transform:translateY(4px)}}@media (width>=768px){.bottomnav{display:none}.sidebar{z-index:20;background:var(--card);border-right:1px solid var(--line);flex-direction:column;gap:22px;width:236px;padding:26px 16px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-logo{padding:0 10px}.side-nav{flex:1;align-content:start;gap:4px;display:grid}.side-item{color:var(--muted);border-radius:10px;align-items:center;gap:14px;padding:11px 12px;font-weight:700;display:flex;position:relative}.side-item:hover{background:var(--paper);color:var(--ink)}.side-item.active{background:var(--brand-tint);color:var(--ink)}.side-item.active:before{content:"";background:var(--brand);border-radius:0 4px 4px 0;width:4px;position:absolute;top:10px;bottom:10px;left:-16px}.sidebar .switch-btn{justify-content:flex-start;width:100%;height:44px}.sidebar .switch-name{text-align:left;flex:1}.content{margin-left:236px}.topbar .switcher{display:none}.content-wrap{padding:28px 28px 64px}}@media (width>=1180px){.topbar{display:none}.content-wrap{justify-content:center;gap:36px;padding-top:36px;display:flex}.page{flex:1;margin:0}.rail{flex:none;align-content:start;gap:16px;width:320px;height:fit-content;display:grid;position:sticky;top:36px}}.rail-card{gap:12px;display:grid}.rail-goal{align-items:center;gap:16px;display:flex}.rail-goal h3{margin-bottom:2px}.rail-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.rail-streak{font:600 14px var(--mono);color:var(--brand-ink)}.ring{flex:none;position:relative}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-track{fill:none;stroke:var(--line);stroke-width:6px}.ring-fill{fill:none;stroke:var(--brand);stroke-width:6px;stroke-linecap:round;transition:stroke-dasharray .6s}.ring-fill.full{stroke:var(--ok)}.ring-center{font-family:var(--mono);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-center b{font-size:18px}.ring-center small{color:var(--muted);font-size:11px}.week{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.wd{font:600 10.5px var(--mono);color:var(--muted);text-transform:uppercase;justify-items:center;gap:5px;display:grid}.wd i{width:32px;height:32px;font:700 13px var(--text);color:var(--ink-2);border-radius:50%;place-items:center;font-style:normal;display:grid;position:relative}.wd.active i{background:var(--brand);color:var(--on-brand)}.wd.future i{color:var(--faint)}.wd.today span{color:var(--brand-ink)}.hand-circle{width:calc(100% + 10px);height:calc(100% + 10px);position:absolute;inset:-5px;overflow:visible}.hand-circle path{fill:none;stroke:var(--ink);stroke-width:1.8px;stroke-linecap:round}.hand-circle.draw path{stroke-dasharray:130;stroke-dashoffset:130px;animation:.7s ease-out .35s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}.optik{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ob{border:1.5px solid var(--line-2);background:var(--card);border-radius:50%;flex:none;width:16px;height:16px;transition:background .2s,border-color .2s}.optik.sm .ob{width:12px;height:12px}.ob.done{background:var(--graphite);border-color:var(--graphite)}.ob.ok{background:var(--ok);border-color:var(--ok)}.ob.bad{background:var(--bad);border-color:var(--bad)}.ob.current{border:2px solid var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}.ob.practice{border-style:dashed}.hello{gap:6px;padding-top:4px;display:grid}.hello h1{font-size:30px}.goal-line{align-items:center;gap:12px;margin-top:4px;display:flex}.goal-track{background:var(--line);border-radius:8px;flex:1;height:8px;position:relative;overflow:hidden}.goal-track span{background:var(--brand);border-radius:8px;transition:width .6s;position:absolute;inset:0 auto 0 0}.goal-text{color:var(--muted);white-space:nowrap;font-size:14px}.goal-text b{color:var(--ink);font-family:var(--mono)}.next-card{gap:12px;padding:22px 20px 20px 24px;display:grid;position:relative;overflow:hidden}.next-card:before{content:"";background:var(--c);width:6px;position:absolute;top:0;bottom:0;left:0}.next-card h2{font-size:26px}.next-card .btn{justify-self:start;margin-top:4px}.next-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.next-meta{color:var(--muted);font-size:15px}.next-card.skeleton{height:210px;animation:1.2s ease-in-out infinite pulse}.quick-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.quick{align-items:center;gap:12px;padding:14px 16px;transition:border-color .15s,transform .1s;display:flex}.quick:hover{border-color:var(--line-2)}.quick:active{transform:scale(.99)}.quick>svg:first-child{color:var(--ink-2);flex:none}.quick h3{font-size:16px}.quick p{color:var(--muted);font-size:13.5px}.quick.hot>svg:first-child{color:var(--bad)}.quick.hot p{color:var(--bad);font-weight:700}.quick[aria-disabled=true]{pointer-events:none;opacity:.7}.quick.wide{padding:16px 18px}.quick.wide>div{flex:1}.chapters{gap:12px;display:grid}.chapter{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);display:flex;overflow:hidden}.chapter.weak{border-color:color-mix(in srgb, var(--bad) 35%, var(--line))}.chapter-tab{background:var(--c,var(--line));flex:none;justify-content:center;align-items:flex-start;width:44px;padding-top:18px;display:flex}.chapter-tab span{font:600 13px/1 var(--mono);color:#fff;letter-spacing:.04em}.chapter-body{flex:1;gap:12px;min-width:0;padding:16px 16px 14px;display:grid}.chapter-top{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.chapter-top h3{font-size:19px}.pen-note{font:italic 600 13.5px var(--text);color:var(--bad)}.chapter-progress{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.done-pill{font:600 12px var(--mono);color:var(--ok);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:4px;display:inline-flex}.mastery{gap:6px;display:grid}.mastery-track{background:var(--line);border-radius:6px;height:6px;overflow:hidden}.mastery-track span{background:var(--ok);border-radius:6px;height:100%;display:block}.mastery-track span.low{background:var(--bad)}.chapter-actions{border-top:1px dashed var(--line-2);justify-content:space-between;align-items:center;gap:8px;padding-top:10px;display:flex}.chapter.ghost{box-shadow:none;background:0 0;border-style:dashed}.chapter.ghost .chapter-tab{border-right:1px dashed var(--line-2);background:0 0}.chapter.ghost p{padding:16px;font-size:14.5px}.lesson{flex-direction:column;min-height:100dvh;display:flex}.lesson-head{z-index:10;background:color-mix(in srgb, var(--paper) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);grid-template-columns:40px 1fr 56px;align-items:center;gap:12px;width:100%;padding:12px 16px;display:grid;position:sticky;top:0}.lesson-head .optik{justify-content:center}.q-count{font:600 13px var(--mono);color:var(--muted);text-align:right}.lesson-body{flex:1;align-content:start;gap:18px;width:100%;max-width:640px;margin:0 auto;padding:22px 16px 28px;display:grid}.q-head{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.q-no{font:600 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brand-ink)}.q-note{font:italic 600 14px var(--text);color:var(--ink-2)}.q-note.bad{color:var(--bad)}.q-note.muted{color:var(--muted);font-style:normal}.stem{font:650 21px/1.45 var(--text);letter-spacing:-.005em;white-space:pre-line}@media (width>=768px){.stem{font-size:23px}}.choices{gap:10px;display:grid}.choice{text-align:left;cursor:pointer;border:1.5px solid var(--line);background:var(--card);width:100%;min-height:58px;box-shadow:var(--shadow);font:600 16.5px/1.4 var(--text);color:var(--ink);border-radius:14px;align-items:center;gap:14px;padding:12px 16px;transition:border-color .15s,background .15s,opacity .15s;display:flex}.choice:hover:not(:disabled){border-color:var(--line-2)}.choice:disabled{cursor:default}.choice-text{flex:1}.bubble{border:1.5px solid var(--ink-2);width:32px;height:32px;font:600 13px var(--mono);color:var(--ink-2);border-radius:50%;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.bubble:before{content:"";background:var(--graphite);border-radius:50%;transition:transform .2s cubic-bezier(.3,1.4,.5,1);position:absolute;inset:0;transform:scale(0)}.bubble span{position:relative}.choice.selected{border-color:var(--ink)}.choice.selected .bubble{border-color:var(--graphite);color:var(--paper)}.choice.selected .bubble:before{transform:scale(1)}.choice.correct{border-color:var(--ok);background:var(--ok-tint)}.choice.correct .bubble{border-color:var(--ok);color:#fff}.choice.correct .bubble:before{background:var(--ok);transform:scale(1)}.choice.wrong{border-color:var(--bad);background:var(--bad-tint)}.choice.wrong .bubble{border-color:var(--bad);color:#fff}.choice.wrong .bubble:before{background:var(--bad);transform:scale(1)}.choice.dim{opacity:.5}.choice-mark.ok{color:var(--ok)}.choice-mark.bad{color:var(--bad)}.choices.compact{grid-template-columns:repeat(5,1fr);gap:8px}.choices.compact .choice{flex-direction:column;justify-content:center;gap:8px;min-height:96px;padding:12px 4px;position:relative}.choices.compact .choice-text{font:700 20px/1 var(--display);flex:none}.choices.compact .choice-mark{width:16px;height:16px;position:absolute;top:6px;right:6px}.solution{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--ok);box-shadow:var(--shadow);border-radius:14px;gap:10px;padding:4px 16px 14px;animation:.2s ease-out rise;display:grid}.solution.bad{border-left-color:var(--bad)}.solution-head{cursor:pointer;font:700 15px var(--text);color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:10px 0 0;display:flex}.solution-head span{flex:1}.solution-head .flip{transform:rotate(180deg)}.solution-body{gap:8px;display:grid}.solution-answer{font-size:15.5px}.solution-answer b{color:var(--ok)}.solution-text{white-space:pre-line;color:var(--ink-2);font-size:15.5px;line-height:1.6}.pen-box{background:var(--bad-tint);color:var(--bad);font:italic 600 14.5px var(--text);border-radius:10px;justify-items:start;gap:10px;padding:12px 14px;display:grid}.pen-box .btn{color:var(--ink);background:var(--card);font-style:normal}.lesson-foot{z-index:10;background:var(--card);border-top:1px solid var(--line);position:sticky;bottom:0}.lesson-foot.ok{box-shadow:inset 0 3px 0 var(--ok)}.lesson-foot.bad{box-shadow:inset 0 3px 0 var(--bad)}.foot-inner{width:100%;max-width:640px;padding:14px 16px calc(14px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:14px;margin:0 auto;display:flex}.foot-inner .btn{flex:none}.unsure{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-weight:700;display:inline-flex}.unsure input{opacity:0;pointer-events:none;position:absolute}.unsure-box{border:1.5px solid var(--line-2);color:#0000;border-radius:6px;place-items:center;width:22px;height:22px;transition:background .15s,border-color .15s;display:grid}.unsure input:checked+.unsure-box{background:var(--graphite);border-color:var(--graphite);color:var(--paper)}.unsure input:focus-visible+.unsure-box{outline:2px solid var(--brand);outline-offset:2px}.unsure:has(input:checked){color:var(--ink)}.verdict{align-items:center;gap:14px;min-width:0;display:flex}@media (width<=767px){.foot-inner.answered{flex-wrap:wrap;gap:12px}.foot-inner.answered .verdict,.foot-inner.answered .btn{flex:100%}}.verdict p{color:var(--ink-2);font-size:14px;line-height:1.35}.stamp{font:800 17px/1 var(--display);letter-spacing:.1em;text-transform:uppercase;border:2.5px solid;border-radius:8px;flex:none;align-items:center;gap:6px;padding:6px 12px 5px;animation:.32s cubic-bezier(.2,1.5,.4,1) stamp;display:inline-flex;transform:rotate(-6deg)}.stamp.ok{color:var(--ok)}.stamp.bad{color:var(--bad)}.stamp.brand{color:var(--brand-2)}@keyframes stamp{0%{opacity:0;transform:rotate(-6deg)scale(2)}60%{opacity:1;transform:rotate(-6deg)scale(.95)}to{transform:rotate(-6deg)scale(1)}}.center-screen{min-height:100dvh;padding:32px 16px calc(32px + env(safe-area-inset-bottom));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;max-width:520px;margin:0 auto;display:flex}.center-logo{margin-bottom:8px}.result{justify-content:flex-start;padding-top:28px}.slip{text-align:left;background:var(--card);border:1px solid var(--line);width:100%;box-shadow:var(--shadow), 0 24px 50px -30px #1d243373;border-radius:18px;animation:.35s ease-out rise;overflow:hidden}.slip-head{background:var(--ink);color:var(--paper);justify-content:space-between;align-items:center;gap:10px;padding:12px 18px;display:flex}.slip-head .logo{color:var(--paper)}.slip-head .logo-word{font-size:18px}.slip-meta{font:600 10.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.8;text-align:right}.slip-body{gap:18px;padding:20px 18px;display:grid;position:relative}.slip-title{gap:4px;padding-right:120px;display:grid}.slip-title h1{font-size:24px}.slip-body>.stamp{font-size:15px;position:absolute;top:22px;right:16px}.scores{border:1.5px solid var(--ink);border-radius:12px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.scores div{justify-items:center;gap:2px;padding:12px 6px;display:grid}.scores div+div{border-left:1.5px solid var(--ink)}.scores b{font:700 30px/1.1 var(--display)}.scores span{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.scores .net{background:var(--brand-tint)}.scores .net b{color:var(--brand-ink)}.slip-optik{gap:8px;display:grid}.slip-rows{border-top:1.5px dashed var(--line-2);margin:0;display:grid}.slip-rows div{border-bottom:1px dashed var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.slip-rows dt{color:var(--muted)}.slip-rows dd{font:600 14.5px var(--mono);margin:0}.slip-streak{gap:10px;display:grid}.slip-streak b{font:600 14px var(--mono);color:var(--brand-ink)}.slip-cta{width:100%;margin-top:6px}@media (width>=560px){.slip-cta{width:auto;min-width:220px}}.due-card{flex-wrap:wrap;align-items:center;gap:16px 20px;display:flex}.due-num{border:2px solid var(--line-2);border-radius:50%;align-content:center;justify-items:center;width:84px;height:84px;display:grid}.due-card.hot .due-num{border-color:var(--bad);color:var(--bad)}.due-num b{font:700 30px/1 var(--display)}.due-num span{font:600 11px var(--mono);text-transform:uppercase;color:var(--muted)}.due-text{flex:1;gap:4px;min-width:200px;display:grid}.tally{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);grid-template-columns:repeat(3,1fr);display:grid}.tally div{text-align:center;justify-items:center;padding:14px 6px;display:grid}.tally div+div{border-left:1px dashed var(--line-2)}.tally b{font:700 26px/1.1 var(--display)}.tally span{color:var(--muted);font-size:13px}.score-list{gap:10px;display:grid}.score-row{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--c);box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:10px;padding:14px 12px 14px 18px;display:flex}.score-main{flex:1;gap:7px;display:grid}.score-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.score-top b{font:600 15px var(--mono)}.score-actions{gap:2px;display:flex}.profile-head{align-items:center;gap:16px;display:flex}.profile-head>div{flex:1;gap:2px;display:grid}.profile-head .avatar{border-radius:20px}.cells{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);grid-template-columns:repeat(2,1fr);display:grid;overflow:hidden}@media (width>=560px){.cells{grid-template-columns:repeat(4,1fr)}}.cell{border-right:1px dashed var(--line-2);border-bottom:1px dashed var(--line-2);gap:2px;margin:0 -1px -1px 0;padding:16px;display:grid}.cell b{font:700 26px/1.1 var(--display)}.cell span{color:var(--muted);font-size:13.5px}.week-chart{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.wc-col{justify-items:center;gap:6px;display:grid}.wc-col em{font:600 11px var(--mono);color:var(--muted);height:14px;font-style:normal}.wc-track{background:var(--paper);border-radius:6px;width:100%;max-width:28px;height:120px;position:relative;overflow:hidden}.wc-track span{background:var(--brand);border-radius:6px 6px 0 0;transition:height .5s;position:absolute;inset:auto 0 0}.wc-track span.met{background:var(--ok)}.wc-goal{border-top:1.5px dashed var(--ink-2);opacity:.5;position:absolute;left:0;right:0}.wc-col small{font:600 11px var(--mono);color:var(--muted);text-transform:uppercase}.wc-col.today small{color:var(--brand-ink)}.wc-col.future .wc-track{opacity:.5}.goal-options{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (width>=560px){.goal-options{grid-template-columns:repeat(4,1fr)}}.option-card{text-align:left;cursor:pointer;background:var(--card);border:1.5px solid var(--line);box-shadow:var(--shadow);border-radius:14px;gap:2px;padding:14px;transition:border-color .15s,background .15s;display:grid}.option-card span{color:var(--muted);font-size:14px}.option-card:hover:not(:disabled){border-color:var(--line-2)}.option-card.selected{border-color:var(--brand);background:var(--brand-tint)}.option-card:disabled{opacity:.5;cursor:default}.option-card.row{align-items:center;gap:14px;padding:16px 18px;display:flex}.option-card.row>span{font-family:var(--mono);margin-left:auto;font-size:12.5px}.goal-n{font:700 22px var(--display);width:34px}.setting{cursor:pointer;align-items:center;gap:14px;padding:14px 18px;display:flex}.setting span{flex:1;font-weight:700}.switch{appearance:none;background:var(--line-2);cursor:pointer;border-radius:99px;width:48px;height:28px;margin:0;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0003}.switch:checked{background:var(--brand)}.switch:checked:after{transform:translate(20px)}.text-input{border:1.5px solid var(--line-2);background:var(--card);width:100%;font:600 17px var(--text);border-radius:12px;outline:none;padding:14px 16px}.text-input:focus{border-color:var(--ink)}.text-input.big{padding:16px 18px;font-size:20px}.onboard{flex-direction:column;min-height:100dvh;display:flex}.onboard-head{grid-template-columns:40px 1fr 40px;align-items:center;gap:12px;width:100%;max-width:640px;margin:0 auto;padding:14px 16px;display:grid}.onboard-head .optik{justify-content:center}.onboard-body{flex:1;align-content:start;gap:20px;width:100%;max-width:560px;margin:0 auto;padding:12px 16px 24px;display:grid}.intro{justify-items:start;gap:14px;padding-top:6vh;display:grid}.intro-mark{color:var(--ink)}.intro-title{font:800 72px/.9 var(--display);letter-spacing:-.045em}.intro-lead{font:600 21px/1.4 var(--display);color:var(--ink-2)}.promise{gap:12px;width:100%;margin:10px 0 0;padding:0;list-style:none;display:grid}.promise li{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.promise li>span{background:var(--brand-tint);width:34px;height:34px;color:var(--brand-ink);border-radius:50%;flex:none;place-items:center;display:grid}.promise b{font-family:var(--display)}.promise p{color:var(--muted);font-size:14.5px}.step-title{gap:6px;padding-top:2vh;display:grid}.option-list{gap:10px;display:grid}.onboard-foot{padding:14px 16px calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--paper) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);justify-content:center;display:flex;position:sticky;bottom:0}.onboard-foot .btn{width:100%;max-width:560px}.splash{text-align:center;align-content:center;place-items:center;gap:12px;min-height:100dvh;padding:24px;display:grid}.modal-root{z-index:100;align-items:end;display:grid;position:fixed;inset:0}.modal-backdrop{background:#12151c80;animation:.15s fade;position:absolute;inset:0}.modal-sheet{background:var(--paper);max-height:88dvh;padding:22px 18px calc(22px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:.22s ease-out sheet;position:relative;overflow:auto}.modal-close{position:absolute;top:10px;right:10px}@media (width>=768px){.modal-root{place-items:center}.modal-sheet{border-radius:20px;width:min(580px,92vw);animation:.18s ease-out rise}}@keyframes fade{0%{opacity:0}}@keyframes sheet{0%{transform:translateY(50px)}}.confirm{gap:12px;padding-top:6px;display:grid}.confirm-actions{gap:8px;margin-top:6px;display:grid}.guide{gap:16px;display:grid}.guide-head{align-items:center;gap:14px;padding-right:40px;display:flex}.guide-icon{background:var(--c);color:#fff;border-radius:12px;flex:none;place-items:center;width:46px;height:46px;display:grid}.guide-list{background:var(--card);border:1px solid var(--line);border-radius:14px;margin:0;padding:0;list-style:none;overflow:hidden}.guide-list li{border-left:3px solid color-mix(in srgb, var(--c) 70%, transparent);color:var(--ink-2);padding:12px 16px 12px 22px;font-size:15.5px;line-height:1.6}.guide-list li+li{border-top:1px dashed var(--line-2)}.guide-list mark{background:linear-gradient(transparent 45%, var(--marker) 45%, var(--marker) 92%, transparent 92%);color:var(--ink);padding:0 2px;font-weight:700}.map{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin:0;padding:10px}.map svg{width:100%;height:auto;display:block}.provinces path{fill:var(--map-land);stroke:var(--map-stroke);stroke-width:1.4px;stroke-linejoin:round}.provinces path.hl{fill:url(#hatch)}.hatch-bg{fill:var(--map-land)}.hatch-line{stroke:var(--map-hatch);stroke-width:2.2px}.marker circle{fill:var(--marker-ink);stroke:var(--card);stroke-width:2.5px}.marker rect{fill:var(--card);stroke:var(--marker-ink);stroke-width:2.5px}.marker text{fill:var(--marker-ink);font:700 29px/1 Georgia,Times New Roman,serif}.marker .pname{font:700 24px/1 var(--text);fill:var(--ink);paint-order:stroke;stroke:var(--card);stroke-width:6px}.marker.correct circle{fill:var(--ok)}.marker.correct rect{stroke:var(--ok);fill:var(--ok-tint)}.marker.correct text:not(.pname){fill:var(--ok)}.marker.wrong circle{fill:var(--bad)}.marker.wrong rect{stroke:var(--bad);fill:var(--bad-tint)}.marker.wrong text:not(.pname){fill:var(--bad)}.marker.muted{opacity:.45}.report-btn{cursor:pointer;font:600 12.5px var(--text);color:var(--faint);background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;margin-left:auto;padding:4px 6px;display:inline-flex}.report-btn:hover:not(:disabled){color:var(--bad);background:var(--bad-tint)}.report-btn:disabled{cursor:default;color:var(--ok)}textarea.text-input{resize:vertical;font-size:15px;line-height:1.5}.admin{gap:16px;max-width:980px;margin:0 auto;padding:20px 16px 60px;display:grid}.admin.center-screen{gap:16px;max-width:420px;min-height:80dvh}.admin-login{width:100%}.admin-head{align-items:center;gap:14px;display:flex}.admin-head h1{flex:1;font-size:24px}.admin-table{padding:0;overflow-x:auto}.admin-table table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th{text-align:left;font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--line);padding:10px 12px}.admin-table td{border-bottom:1px dashed var(--line);font-variant-numeric:tabular-nums;padding:10px 12px}.admin-table tbody tr{cursor:pointer}.admin-table tbody tr:hover,.admin-table tbody tr.on{background:var(--brand-tint)}.admin-filters{flex-wrap:wrap;gap:8px;display:flex}.admin-filters .chip{cursor:pointer}.admin-filters .chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.admin-q{gap:10px;display:grid}.admin-q.retired{opacity:.65}.admin-q-top{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.admin-q-top code{font:600 12.5px var(--mono)}.pill{font:600 11px var(--mono);text-transform:uppercase;background:var(--ok-tint);color:var(--ok);border-radius:6px;padding:3px 8px}.pill.retired{background:var(--bad-tint);color:var(--bad)}.admin-reports{background:var(--bad-tint);color:var(--ink);border-radius:10px;gap:4px;margin:0;padding:10px 12px 10px 28px;font-size:14px;display:grid}.admin-stem{text-align:left;cursor:pointer;font:600 16px/1.5 var(--text);white-space:pre-line;background:0 0;border:0;padding:0}.admin-options{gap:4px;margin:0;padding-left:0;font-size:15px;list-style:none;display:grid}.admin-options li{border-radius:8px;padding:6px 10px}.admin-options li.right{background:var(--ok-tint);color:var(--ok);font-weight:700}.admin-expl{white-space:pre-line;color:var(--ink-2);border-left:3px solid var(--line-2);padding-left:12px;font-size:14.5px}.admin-actions{flex-wrap:wrap;gap:8px;display:flex}.math .katex{font-size:1.08em}.math-block{margin:6px 0;display:block;overflow-x:auto}.qfig{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);border-radius:14px;place-items:center;margin:0;padding:12px;display:grid}.qfig svg{width:100%;max-width:420px;height:auto}.qfig svg text{font-family:var(--text);fill:currentColor}.lesson-body{position:relative}.scratch-canvas{z-index:4;pointer-events:none;position:absolute;inset:0}.scratch-canvas.on{pointer-events:auto;touch-action:none;cursor:crosshair}.lesson-body.scratching{-webkit-user-select:none;user-select:none}.scratch-space{border:1.5px dashed var(--line-2);background-image:radial-gradient(var(--line-2) 1px, transparent 1px);background-size:18px 18px;border-radius:14px;justify-content:flex-end;align-items:flex-start;height:340px;padding:8px 12px;display:flex}.scratch-space span{font:600 11px var(--mono);text-transform:uppercase;color:var(--faint);letter-spacing:.08em}.scratch-btn{cursor:pointer;font:600 12.5px var(--text);color:var(--muted);background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;margin-left:auto;padding:4px 8px;display:inline-flex}.scratch-btn:hover{background:var(--paper);color:var(--ink)}.scratch-btn.on{background:var(--ink);color:var(--paper)}.q-head .report-btn{margin-left:0}.scratch-tools{z-index:20;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));background:var(--ink);border-radius:14px;gap:4px;max-width:calc(100vw - 24px);padding:6px;display:flex;position:fixed;overflow-x:auto;transform:translate(-50%);box-shadow:0 12px 30px -10px #00000080}.scratch-tool{color:var(--paper);font:700 13px var(--text);cursor:pointer;white-space:nowrap;opacity:.75;background:0 0;border:0;border-radius:10px;padding:8px 10px}.scratch-tool.on{background:var(--brand);color:var(--on-brand);opacity:1}.scratch-tool:hover{opacity:1}.scratch-tool.close{place-items:center;display:grid}.lesson.kids .stem{font-size:26px;line-height:1.4}.lesson.kids .choice{min-height:64px}.lesson.kids .choice-text{font-size:24px;font-weight:650}.lesson.kids .qfig svg{max-width:520px}.listen-btn{color:var(--brand-ink,var(--brand))}.subject-group+.subject-group{margin-top:18px}.group-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 8px;font-size:14px;display:flex}.group-head b{font-family:var(--display,inherit)}.group-head span{color:var(--muted,inherit);font-size:12.5px}.switch-group+.switch-group{border-top:1px dashed var(--line);margin-top:8px;padding-top:8px}.login .onboard-body{align-content:center}.login-card{text-align:center;box-sizing:border-box;background:var(--card);border:1.5px solid var(--brand);width:100%;box-shadow:var(--shadow);border-radius:18px;justify-self:stretch;justify-items:center;gap:10px;margin:22px 0 6px;padding:22px 18px;display:grid}.login-card h2{margin:0;font-size:21px}.login-card p{max-width:34ch;margin:0 0 4px}.google-signin{justify-items:center;gap:6px;width:100%;display:grid}.g-wrap{width:100%;max-width:400px;position:relative}.g-face{pointer-events:none;gap:12px}.g-wrap:hover .g-face{background:var(--brand-2)}.g-wrap:active .g-face{transform:scale(.98)}.g-wrap:focus-within .g-face{outline:2px solid var(--ink);outline-offset:2px}.g-wrap.busy{pointer-events:none}.g-wrap.busy .g-face{opacity:.7}.g-logo{background:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.g-overlay{opacity:.0001;border-radius:14px;position:absolute;inset:0;overflow:hidden}.g-overlay>div{transform-origin:0 0;transform:scaleY(1.5)}.card.account{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.card.account p{margin:2px 0 0}.age-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:10px;display:grid}.age-chip{border:1.5px solid var(--line);background:var(--card);min-height:58px;color:var(--ink);font:700 22px/1 var(--display,inherit);cursor:pointer;border-radius:14px}.age-chip.wide{grid-column:span 2;font-size:17px}.age-chip.selected{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 16%, var(--card))}.age-chip:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.age-select{width:auto;min-width:120px;margin-left:auto}.login-legal{text-align:center;margin-top:18px}.login-legal a{color:var(--brand)}.lesson-notice{background:color-mix(in srgb, var(--bad,#e5484d) 14%, var(--card));max-width:640px;color:var(--ink);border:1px solid color-mix(in srgb, var(--bad,#e5484d) 45%, transparent);border-radius:12px;margin:0 auto 10px;padding:10px 14px;font-size:14.5px;font-weight:600}.map-loading{background:var(--paper,var(--card));border-radius:14px;min-height:220px}.switch-menu{max-height:min(72vh,620px);overflow-y:auto}.switch-sub{font:700 12.5px/1.3 var(--text);color:var(--ink-2,var(--ink));margin:6px 10px 2px}.switch-sub span,.group-sub span{color:var(--muted);font-weight:500}.switch-item.soon{cursor:default;opacity:.62}.switch-item.soon span{gap:1px;display:grid}.soon-note{font:500 12px/1.3 var(--text);color:var(--muted);display:block}.group-sub{margin:4px 2px 0;font-size:13.5px}.option-card.row.soon{opacity:.6;cursor:default}.option-card.row.soon b{flex:1;gap:2px;display:grid}.switch-menu{width:min(330px,100vw - 32px)}.admin-cells{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.admin-users td{vertical-align:top;white-space:nowrap}.admin-users td:first-child{white-space:normal;min-width:190px}.admin-users tbody tr{cursor:default}.admin-users .pill{margin-left:6px}.admin-link{color:var(--ink);border-color:var(--brand);gap:2px;text-decoration:none;display:grid}.admin-link:hover{background:var(--brand-tint)}.switch-item .soon-note{font:500 12px/1.3 var(--text);color:var(--muted)}.boot-msg{text-align:center;max-width:320px;color:var(--muted,#8a8f9c);opacity:0;margin:40vh auto 0;font:500 15px/1.5 system-ui,sans-serif;animation:.3s 5s forwards boot-show}html[data-boot=ok] .boot-msg{display:none}@keyframes boot-show{to{opacity:1}}.q-grid,.q-main,.q-side{align-content:start;gap:18px;min-width:0;display:grid}@media (width>=768px){.lesson-body{max-width:900px;padding:26px 28px 32px}.foot-inner,.lesson-notice{max-width:900px;padding-left:28px;padding-right:28px}}@media (width>=960px){.lesson-body,.foot-inner,.lesson-notice{max-width:1200px}.q-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:36px}.q-grid .stem{font-size:24px}.qfig svg{max-width:520px}}.q-head .scratch-btn~.scratch-btn{margin-left:0}.sound-btn{padding:4px 6px}.sound-btn[aria-pressed=false]{color:var(--faint)}.lesson.large-text .stem{font-size:25px;line-height:1.5}.lesson.large-text .choice{min-height:64px;font-size:19px}.lesson.large-text .solution-text,.lesson.large-text .solution-answer{font-size:17.5px}@media (width>=768px){.lesson.large-text .stem{font-size:27px}}.lesson.kids.large-text .stem{font-size:30px}.lesson.kids.large-text .choice-text{font-size:27px}.scratch-hint{z-index:21;left:50%;bottom:calc(150px + env(safe-area-inset-bottom));text-align:center;background:var(--card);border:1.5px solid var(--brand);border-radius:14px;justify-items:center;gap:8px;width:max-content;max-width:calc(100vw - 24px);padding:12px 14px;font-size:14px;font-weight:600;animation:.2s ease-out rise;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 14px 34px -12px #00000073}.scratch-tool.close{opacity:1;background:color-mix(in srgb, var(--paper) 16%, transparent);align-items:center;gap:4px;display:inline-flex}.set-group{padding:0;display:grid;overflow:hidden}.set-row{color:var(--ink);flex-wrap:wrap;align-items:center;gap:12px 14px;padding:14px 18px;display:flex}.set-row+.set-row{border-top:1px dashed var(--line-2)}.set-row.column{flex-direction:column;align-items:stretch}.set-row.column .set-text{flex:none}.set-row.nowrap{flex-wrap:nowrap}.set-row.nowrap .set-text{flex-basis:0}label.set-row{cursor:pointer}.set-text{flex:200px;gap:2px;min-width:0;display:grid}.set-text b{font-size:15.5px}.set-text small{overflow-wrap:anywhere;font-size:13px;line-height:1.4}.set-row .switch,.set-row .avatar{flex:none}.link-row{text-decoration:none}.link-row:hover{background:var(--paper)}.link-row>span[aria-hidden]{color:var(--muted);font-size:22px}.segmented{background:var(--paper);border:1px solid var(--line);border-radius:11px;gap:2px;padding:3px;display:inline-flex}.segmented button{font:700 13.5px var(--text);color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 14px}.segmented button.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.segmented button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.btn.danger{color:var(--bad)}.btn.primary.danger{background:var(--bad);color:#fff}.btn.primary.danger:hover:not(:disabled){background:color-mix(in srgb, var(--bad) 85%, #000)}.btn.primary.danger:disabled{background:var(--line);color:var(--faint)}.subj-progress{padding:0;display:grid;overflow:hidden}.subj-progress>p{margin:0;padding:16px 18px}.sp-row{color:var(--ink);align-items:center;gap:14px;padding:13px 18px;text-decoration:none;display:flex}.sp-row+.sp-row{border-top:1px dashed var(--line-2)}.sp-row:hover{background:var(--paper)}.sp-main{flex:1;gap:6px;min-width:0;display:grid}.sp-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.sp-top b{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.sp-top span{font-family:var(--mono);flex:none}.sp-bar{background:var(--line);border-radius:99px;height:8px;overflow:hidden}.sp-bar span{background:var(--ok);border-radius:inherit;min-width:0;height:100%;transition:width .3s;display:block}.avatar{background:var(--a,var(--brand));color:#fff;font-family:var(--display);-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;font-weight:700;line-height:1;display:inline-grid}@media (width<=420px){.scratch-tools{gap:2px;padding:5px}.scratch-tool{padding:8px;font-size:12.5px}.scratch-tool.close .lbl{display:none}}.guard-rules{gap:6px;display:grid}.guard-rules ul{color:var(--ink-2);gap:4px;margin:0;padding-left:18px;display:grid}.admin-actions .btn{white-space:nowrap}.switch-name{white-space:nowrap;text-overflow:ellipsis;max-width:44vw;overflow:hidden}.switch-name em{color:var(--muted);font-style:normal;font-weight:600}.sidebar .switch-btn{height:auto;min-height:44px;padding-top:6px;padding-bottom:6px}.sidebar .switch-name{white-space:normal;max-width:none;line-height:1.25}.sidebar .switch-name em{font-size:11.5px;display:block}.switch-foot{margin:8px 10px 4px;line-height:1.35}.switch-exam-head{cursor:pointer;text-align:left;width:100%;font:700 14px var(--text);color:var(--ink);background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;padding:9px 10px;display:flex}.switch-exam-head>span{flex:1;gap:1px;display:grid}.switch-exam-head:hover{background:var(--paper)}.switch-exam-head svg{color:var(--muted);transition:transform .15s}.switch-exam.open .switch-exam-head svg{transform:rotate(180deg)}.switch-exam-head .dot{background:var(--brand);border-radius:50%;width:8px;height:8px}.switch-exam.open{background:color-mix(in srgb, var(--paper) 60%, transparent);border-radius:12px;padding-bottom:4px}.switch-exam .switch-item{width:100%;padding-left:18px}.exam-card .exam-head b{flex:1;gap:2px;display:grid}.exam-card .exam-head svg.flip{transform:rotate(180deg)}.exam-card.open>.option-card:not(.exam-head){margin-left:18px}.fc-title{justify-content:center;align-items:center;gap:6px;min-width:0;font-weight:700;display:flex}.fc-title span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fc-center{text-align:center;min-height:60vh;color:var(--ink);align-content:center;justify-items:center}.fc-center h1{margin:0}.fc-bar{background:var(--line);border-radius:99px;width:min(360px,100%);height:8px;overflow:hidden}.fc-bar span{background:var(--ok);height:100%;display:block}.fc-start{justify-items:center;gap:10px;width:min(360px,100%);display:grid}.fc-start .btn.lg{width:100%}.fc-body{align-content:center;justify-items:center;min-height:60vh}.fc-left{justify-self:center;margin:0}.fc-card{cursor:pointer;perspective:1200px;width:min(560px,100%);min-height:280px;font:inherit;color:inherit;background:0 0;border:0;padding:0;position:relative}.fc-face{text-align:center;background:var(--card);border:1.5px solid var(--line);box-shadow:var(--shadow);backface-visibility:hidden;border-radius:20px;place-items:center;padding:28px 26px;transition:transform .45s cubic-bezier(.3,.7,.3,1);display:grid;position:absolute;inset:0}.fc-front{font:700 23px/1.4 var(--display)}.fc-back{font:500 17.5px/1.6 var(--text);border-color:var(--brand);background:color-mix(in srgb, var(--brand-tint) 55%, var(--card));transform:rotateY(180deg)}.fc-card.flipped .fc-front{transform:rotateY(-180deg)}.fc-card.flipped .fc-back{transform:rotateY(0)}.fc-actions{justify-content:center}.fc-actions .btn.lg{flex:1 1 0;max-width:260px}@media (width>=768px){.fc-card{min-height:320px}.fc-front{font-size:27px}.fc-back{font-size:19px}}@media (prefers-reduced-motion:reduce){.fc-face{transition:none}}.resume-grid{gap:14px;display:grid}@media (width>=720px){.resume-grid:not(.single){grid-template-columns:repeat(2,minmax(0,1fr))}.resume-grid>.resume-card:first-child:nth-last-child(odd){grid-column:1/-1}}.resume-card{border-radius:var(--r);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);gap:12px;padding:18px 20px 18px 24px;display:grid;position:relative;overflow:hidden}.resume-card:before{content:"";background:var(--c);width:6px;position:absolute;top:0;bottom:0;left:0}.resume-grid.single .resume-card{gap:14px;padding:24px 26px 22px 30px}.resume-top{align-items:center;gap:14px;display:flex}.resume-name{flex:1;gap:2px;min-width:0;display:grid}.resume-name small{font:600 11.5px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.resume-name b{font:700 21px/1.15 var(--display)}.resume-grid.single .resume-name b{font-size:27px}.resume-pct{font:700 15px var(--mono);color:var(--c)}.resume-bar{background:var(--line);border-radius:99px;height:8px;overflow:hidden}.resume-bar span{background:var(--c);border-radius:inherit;height:100%;display:block}.resume-next{gap:1px;margin:0;display:grid}.resume-next span{color:var(--muted);font-size:12.5px}.resume-next b{font-size:16px}.resume-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.resume-grid.single .resume-actions .btn.primary{border-radius:14px;min-height:50px;padding:12px 24px;font-size:16.5px}.exam-badge{background:color-mix(in srgb, var(--c) 16%, var(--card));min-width:48px;height:48px;color:var(--c);font:800 13px var(--display);letter-spacing:.02em;border:1.5px solid color-mix(in srgb, var(--c) 35%, transparent);border-radius:14px;flex:none;place-items:center;padding:0 8px;display:grid}.exam-badge.sm{border-radius:12px;min-width:42px;height:42px;font-size:12px}.exam-cat,.exam-grid{gap:10px;display:grid}.exam-panel{grid-column:1/-1}.exam-panel.at-row{display:none}@media (width>=720px){.exam-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-panel.at-card{display:none}.exam-panel.at-row{display:grid}}.exam-card{cursor:pointer;text-align:left;background:var(--card);border:1.5px solid var(--line);width:100%;box-shadow:var(--shadow);color:var(--ink);font:inherit;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,transform .15s;display:flex}.exam-card:hover{border-color:color-mix(in srgb, var(--c) 55%, var(--line))}.exam-card.on{border-color:var(--c);background:color-mix(in srgb, var(--c) 7%, var(--card))}.exam-card-body{flex:1;gap:2px;min-width:0;display:grid}.exam-card-body b{font:700 16.5px var(--display)}.exam-card-body small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.exam-card>svg{color:var(--muted);flex:none;transition:transform .15s}.exam-card.on>svg{color:var(--c);transform:rotate(180deg)}.exam-panel{border-radius:var(--r);border:1.5px solid var(--c);background:color-mix(in srgb, var(--c) 5%, var(--card));gap:12px;padding:16px;animation:.18s ease-out rise;display:grid}.exam-panel-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.exam-panel-head b{font:700 17px var(--display)}.sec-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,136px),1fr));gap:10px;display:grid}.sec-card{cursor:pointer;text-align:left;background:var(--card);border:1.5px solid var(--line);color:var(--ink);font:inherit;border-radius:14px;align-content:start;gap:6px;padding:12px 14px;transition:border-color .15s;display:grid}.sec-card:hover:not(:disabled),.sec-card.current{border-color:var(--c)}.sec-card:disabled{opacity:.5;cursor:default}.sec-card-top{color:var(--c);justify-content:space-between;align-items:center;display:flex}.sec-card-top em{font:600 11px var(--mono);text-transform:uppercase;color:var(--c);font-style:normal}.sec-card b{font:700 15.5px var(--display)}.sec-card small{color:var(--muted);font-size:12px}.sec-bar{background:var(--line);border-radius:99px;height:6px;display:block;overflow:hidden}.sec-bar span{background:var(--c);height:100%;display:block}.exam-later{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 0;font-size:13px;display:flex}.exam-later span{font-weight:700}.exam-later em{border:1px dashed var(--line-2);border-radius:99px;padding:4px 10px;font-style:normal}.section-page-head{gap:4px;display:grid}.section-page-head h1{margin:0;font-size:28px}.section-page-head .link{justify-self:start}.q-context{background:var(--brand-tint);border-left:4px solid var(--brand);border-radius:14px;margin:0 0 14px;padding:12px 16px}.q-context-label{font:600 11.5px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--brand-ink);margin-bottom:6px;display:block}.q-context-text{font:450 16.5px/1.6 var(--text);white-space:pre-line;color:var(--ink)}.lesson.large-text .q-context-text{font-size:19px}.year-card .year-no{font:800 19px var(--display);color:var(--ink)}.sec-code{font:600 11px var(--mono);color:var(--muted);letter-spacing:.02em}.panel-back{cursor:pointer;color:var(--c);background:0 0;border:0;padding:0;font-weight:700}.switch-sub{font:600 11px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:8px 14px 2px}.welcome{border-radius:var(--r);background:linear-gradient(135deg, color-mix(in srgb, var(--brand) 14%, var(--card)), var(--card) 60%);border:1px solid var(--line);box-shadow:var(--shadow);grid-template-columns:1fr auto;align-items:center;gap:18px 24px;padding:22px 24px;display:grid}.welcome-text{justify-items:start;gap:8px;display:grid}.welcome-text h1{font:800 clamp(26px, 4vw, 34px)/1.1 var(--display);margin:0}.welcome-sub{color:var(--muted);margin:0 0 6px;font-size:15.5px}.welcome-goal{width:112px;height:112px;position:relative}.welcome-goal .ring-bg{fill:none;stroke:var(--line);stroke-width:8px}.welcome-goal .ring-fg{fill:none;stroke:var(--brand);stroke-width:8px;stroke-linecap:round;transition:stroke-dasharray .4s}.welcome-goal-n{text-align:center;place-content:center;line-height:1;display:grid;position:absolute;inset:0}.welcome-goal-n b{font:800 28px var(--display)}.welcome-goal-n span{font:600 13px var(--mono);color:var(--muted)}.welcome-goal-n small{color:var(--muted);margin-top:4px;font-size:11.5px}.welcome-stats{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.welcome-stats div{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 12px}.welcome-stats dt{font:600 11px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.welcome-stats dd{font:800 19px var(--display);margin:2px 0 0}.welcome-week{grid-column:1/-1}@media (width<=640px){.welcome{grid-template-columns:1fr;padding:18px}.welcome-goal{justify-self:start;width:84px;height:84px;position:absolute;top:18px;right:18px}.welcome-goal svg{width:84px;height:84px}.welcome-goal-n b{font-size:21px}.welcome{position:relative}.welcome-text{padding-right:92px}.welcome-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.welcome-week{display:none}}.explorer{gap:12px;scroll-margin-top:80px;display:grid}.crumbs-app{flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:14px;display:flex}.crumbs-app button{cursor:pointer;color:var(--brand-ink);font:inherit;background:0 0;border:0;padding:4px 2px;font-weight:700}.crumbs-app button.here{color:var(--ink);cursor:default}.crumbs-app i{color:var(--muted);font-style:normal}.explorer-level{border-radius:var(--r);border:1.5px solid var(--c);background:color-mix(in srgb, var(--c) 5%, var(--card));gap:12px;padding:16px;animation:.18s ease-out rise;display:grid}.explorer-head{align-items:center;gap:12px;display:flex}.explorer-head div{gap:2px;display:grid}.explorer-head b{font:800 19px var(--display)}.explorer-head small{color:var(--muted);font-size:13px}.exam-card>svg:last-child{color:var(--muted)}.home .exam-card.on>svg{transform:none}html,body{max-width:100%;overflow-x:clip}.topbar>:first-child{flex:none}.topbar-right{flex:1;justify-content:flex-end;min-width:0}.topbar-right>*{flex:none}.topbar-right>.switcher{flex:0 auto;min-width:0}.topbar .switch-btn{min-width:0;max-width:100%}.topbar .switch-name{flex:auto;min-width:0;max-width:none}.welcome{grid-template-columns:minmax(0,1fr) auto}.welcome-text{min-width:0}.welcome-text .btn{white-space:normal;text-align:left;max-width:100%;height:auto;min-height:48px;line-height:1.25}@media (width<=640px){.welcome{grid-template-columns:minmax(0,1fr)}}.resume-name,.exam-card-body,.explorer-head div{min-width:0}.resume-name b,.explorer-head b{overflow-wrap:anywhere}.sp-row,.sp-top{min-width:0}.sp-top b{flex:auto;min-width:0}.past-panel{gap:10px;display:grid}.past-years{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:10px;display:grid}.past-year{gap:10px;padding:14px 16px;display:grid}.past-year h3{font:800 17px var(--display);margin:0}.past-exams{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.past-exam{border:1.5px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px;gap:2px;min-width:0;padding:10px;text-decoration:none;display:grid}.past-exam b{font-size:14.5px}.past-exam small{color:var(--muted);overflow-wrap:anywhere;font-size:11.5px}a.past-exam:hover{border-color:var(--brand)}.past-exam.soon{opacity:.55}.onboard-body .explorer{margin-top:4px}.onboard-chosen{background:var(--brand-tint);color:var(--ink);overflow-wrap:anywhere;border-radius:12px;margin:6px 0 0;padding:10px 14px;font-size:14.5px}.onboard-body{grid-template-columns:minmax(0,1fr);min-width:0}.exam-page{flex-direction:column;min-height:100dvh;display:flex}.exam-head{z-index:20;background:color-mix(in srgb, var(--paper) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 16px;display:grid;position:sticky;top:0}.exam-head b{font:700 16px var(--display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.exam-clock{font:700 15px var(--mono);color:var(--muted)}.exam-main{flex:1;grid-template-columns:minmax(0,1fr);align-content:start;gap:14px;width:100%;max-width:860px;margin:0 auto;padding:16px 16px 120px;display:grid}.exam-sheet{grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;display:grid}@media (width<=480px){.exam-sheet{grid-template-columns:repeat(5,minmax(0,1fr))}}.sheet-cell{aspect-ratio:1;border:1.5px solid var(--line);background:var(--card);font:700 14px var(--mono);color:var(--ink);cursor:pointer;border-radius:10px;place-items:center;padding:0;text-decoration:none;display:grid;position:relative}.sheet-cell small{color:var(--brand-ink);font-size:10px;position:absolute;bottom:2px;right:4px}.sheet-cell.filled{background:var(--brand-tint);border-color:color-mix(in srgb, var(--brand) 50%, var(--line))}.sheet-cell.current{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand) 35%, transparent)}.sheet-cell.ok{background:color-mix(in srgb, var(--ok) 22%, var(--card));border-color:var(--ok)}.sheet-cell.bad{background:color-mix(in srgb, #e5484d 20%, var(--card));border-color:#e5484d}.sheet-cell.blank{opacity:.6;border-style:dashed}.exam-q{gap:12px;padding:18px;display:grid}.exam-q .q-no,.exam-review-item .q-no{font:600 12px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--brand-ink);margin:0}.exam-foot{z-index:20;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);grid-template-columns:auto auto 1fr;gap:8px;display:grid;position:fixed;inset:auto 0 0}.exam-foot .btn.primary{justify-self:end}@media (width>=900px){.exam-foot{border:1px solid var(--line);border-radius:16px 16px 0 0;max-width:860px;left:50%;transform:translate(-50%)}}.exam-slip{gap:12px;display:grid}.exam-slip .scores{grid-template-columns:repeat(4,minmax(0,1fr))}.exam-actions{flex-wrap:wrap;gap:8px;display:flex}.exam-review{gap:12px;margin:0;padding:0;list-style:none;display:grid}.exam-review-item{border-left:5px solid var(--line);gap:10px;padding:16px;scroll-margin-top:70px;display:grid}.exam-review-item.ok{border-left-color:var(--ok)}.exam-review-item.bad{border-left-color:#e5484d}.small-stem{font-size:17px!important}.review-opts{gap:4px;margin:0;padding:0;list-style:none;display:grid}.review-opts li{border-radius:10px;align-items:baseline;gap:6px;padding:6px 10px;display:flex}.review-opts li.right{background:color-mix(in srgb, var(--ok) 18%, transparent);font-weight:600}.review-opts li.wrong{background:#e5484d29;text-decoration:line-through}.review-opts li svg{flex:none;margin-left:auto}.login-links{flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:4px 0 0;font-size:14px;font-weight:600;display:flex}.login-links a{color:var(--brand-ink);text-decoration:none}.login-links a:hover{text-decoration:underline}.sec-card-wrap{gap:4px;min-width:0;display:grid}.sec-card-wrap>.sec-card{width:100%}.sec-card[aria-pressed=true]{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 9%, var(--card))}.mine-btn{cursor:pointer;font:600 12.5px var(--text);color:var(--muted);background:0 0;border:0;justify-self:start;padding:2px 4px}.mine-btn.on{color:var(--brand-ink)}.mine-btn:hover{color:var(--ink)}.onboard-chosen{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chosen-chip{border:1.5px solid var(--brand);background:var(--card);color:var(--ink);font:600 13px var(--text);cursor:pointer;text-align:left;border-radius:99px;align-items:center;gap:6px;max-width:100%;padding:5px 10px;display:inline-flex}.chosen-chip b{color:var(--muted)}.my-courses{gap:8px;margin:0;padding:0;list-style:none;display:grid}.my-course{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--c);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.my-course-main{text-align:left;cursor:pointer;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;gap:3px;padding:0;display:grid}.my-course-main small{font:600 11px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.my-course-main b{font:700 16px var(--display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.my-course-main .resume-bar{height:5px}.my-course-pct{font:700 13px var(--mono);color:var(--c)}@media (width<=480px){.my-course{grid-template-columns:auto minmax(0,1fr) auto}.my-course-pct{display:none}}.my-waiting{background:var(--paper);border:1px dashed var(--line-2);border-radius:10px;margin:-4px 0 4px;padding:8px 12px}.study-tabs{width:100%;display:flex}.study-tabs button{white-space:normal;flex:1;min-width:0}.topic-list{gap:10px;display:grid}.topic-row{text-align:left;color:inherit;border-left:4px solid var(--c,var(--brand));cursor:pointer;font:inherit;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:14px 16px;text-decoration:none;display:grid}.topic-row span{gap:2px;min-width:0;display:grid}.topic-row b{overflow-wrap:anywhere}.empty-mine{justify-items:start;gap:10px;display:grid}.empty-mine h2{margin:0}.stack-sm{gap:10px;display:grid}.field{text-align:left;gap:6px;display:grid}.field>span{font:600 13px var(--text);color:var(--ink-2)}.pill.wait{background:var(--brand-tint);color:var(--brand-ink)}.access-bar{border:1px solid var(--line);background:var(--card);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;font-size:14.5px;display:flex}.access-bar>span{flex:1;min-width:180px}.access-bar.trial{border-color:color-mix(in srgb, var(--brand) 40%, var(--line));background:var(--brand-tint);color:var(--brand-ink)}.access-bar.trial.out{border-color:var(--brand)}.access-bar.trial b{color:var(--ink)}.access-bar.owned{color:var(--ok);background:var(--ok-tint);border-color:#0000}.access-bar.owned.soon{color:var(--brand-ink);background:var(--brand-tint)}.access-bar.wait{color:var(--brand-ink);background:var(--brand-tint);border-color:#0000}.paywall-icon{background:var(--brand-tint);width:60px;height:60px;color:var(--brand-ink);border-radius:50%;place-items:center;display:grid}.paywall h1{margin:0;font-size:26px}.purchase{width:100%;max-width:560px;padding:18px 16px calc(40px + env(safe-area-inset-bottom));box-sizing:border-box;gap:16px;margin:0 auto;display:grid}.purchase .back{justify-self:start;align-items:center;gap:6px;display:inline-flex}.purchase-skel{height:220px}.purchase-card{gap:12px;padding:20px;display:grid}.purchase-card h2,.purchase-steps h2{margin:0;font-size:20px}.purchase-card.ok{justify-items:start}.purchase-badge{background:var(--ok-tint);width:36px;height:36px;color:var(--ok);border-radius:50%;place-items:center;display:grid}.purchase-card.wait .purchase-badge{background:var(--brand-tint);color:var(--brand-ink)}.purchase-price{gap:2px;display:grid}.purchase-price b{font:800 40px/1 var(--display);letter-spacing:-.02em}.purchase-list,.ln-price ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.purchase-list li,.ln-price li{align-items:flex-start;gap:8px;display:flex}.purchase-list svg,.ln-price li svg{color:var(--ok);flex:none;margin-top:3px}.purchase-steps{gap:14px;padding:20px;display:grid}.purchase-steps ol{gap:12px;margin:0;padding-left:20px;display:grid}.pay-info{background:var(--paper);border:1px dashed var(--line-2);border-radius:12px;grid-template-columns:auto 1fr;gap:6px 12px;margin:10px 0 4px;padding:12px 14px;display:grid}.pay-info dt{font:600 12px var(--mono);text-transform:uppercase;color:var(--muted);align-self:center}.pay-info dd{overflow-wrap:anywhere;margin:0}.pay-info code{font:600 14px var(--mono)}.pay-info .iban{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.purchase-req{justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:14.5px;display:flex}.btn.block{width:100%}.admin-settings{gap:10px;max-width:560px;margin:16px 0;padding:16px;display:grid}.price-input{max-width:110px;padding:8px 10px;font-size:15px}.admin-grants{gap:10px;margin:12px 0;padding:14px 16px;display:grid}.admin-grant-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.admin-grant-list li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-grant-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-grant-form select{max-width:360px;padding:8px 10px;font-size:14.5px}.landing{width:100%;max-width:1080px;padding:0 16px calc(24px + env(safe-area-inset-bottom));box-sizing:border-box;gap:56px;margin:0 auto;display:grid}.ln-nav{z-index:5;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:16px;padding:12px 0;display:flex;position:sticky;top:0}.ln-brand{color:var(--ink);align-items:center;gap:8px;text-decoration:none;display:flex}.ln-brand b{font:800 26px/1 var(--display);letter-spacing:-.04em}.ln-nav nav{gap:18px;margin-left:auto;display:flex}.ln-nav nav a{color:var(--ink-2);font-size:15px;font-weight:600;text-decoration:none}.ln-nav nav a:hover{color:var(--brand-ink)}.ln-hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:32px;padding-top:4vh;display:grid}.ln-hero h1{font:800 clamp(34px, 5.2vw, 56px)/1.02 var(--display);letter-spacing:-.035em;margin:10px 0 16px}.ln-hero h1 span{color:var(--brand-ink)}.ln-lead{color:var(--ink-2);max-width:46ch;font-size:18px;line-height:1.55}.ln-stats{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.ln-stats span{background:var(--card);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;padding:8px 12px;font-size:14px}.ln-stats b{font-family:var(--display);color:var(--ink)}.ln-login{margin:0;padding:26px 20px}.ln-login .login-legal{margin:4px 0 0}.ln-section{gap:18px;display:grid}.ln-section h2{font:800 clamp(26px, 3.4vw, 34px)/1.1 var(--display);letter-spacing:-.025em;margin:0}.ln-exams{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.ln-exam{align-items:flex-start;gap:14px;padding:16px;display:flex}.ln-exam h3{margin:0 0 4px;font-size:17px}.ln-exam .exam-badge{background:color-mix(in srgb, var(--c) 16%, var(--card));color:var(--c)}.ln-steps{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.ln-steps li{counter-increment:step;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:18px 18px 18px 64px;position:relative}.ln-steps li:before{content:counter(step);background:var(--brand);width:32px;height:32px;color:var(--on-brand);font:800 16px var(--display);border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;left:18px}.ln-steps b{font-family:var(--display);font-size:17px}.ln-steps p,.ln-features p{color:var(--muted);margin:4px 0 0;font-size:14.5px;line-height:1.5}.ln-features{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.ln-features li{background:var(--card);border:1px solid var(--line);border-radius:16px;grid-template-columns:40px 1fr;column-gap:12px;padding:16px;display:grid}.ln-features li>span{background:var(--brand-tint);width:40px;height:40px;color:var(--brand-ink);border-radius:12px;grid-row:span 2;place-items:center;display:grid}.ln-features b{font-family:var(--display);font-size:16.5px}.ln-price{border:2px solid var(--brand);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:24px;padding:26px;display:grid}.ln-price-tag{font:800 54px/1 var(--display);letter-spacing:-.03em;margin:6px 0 10px}.ln-price-tag small{font:600 17px var(--text);color:var(--muted);letter-spacing:0}.ln-faq{gap:8px;max-width:760px;display:grid}.ln-faq-item{padding:0;overflow:hidden}.ln-faq-item button{width:100%;font:700 16.5px var(--display);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:12px;padding:16px 18px;display:flex}.ln-faq-item button span{font:600 20px var(--mono);color:var(--brand-ink)}.ln-faq-item p{color:var(--ink-2);margin:0;padding:0 18px 16px;line-height:1.55}.ln-cta{background:var(--graphite);color:var(--paper);text-align:center;border-radius:24px;justify-items:center;gap:16px;padding:40px 16px;display:grid}.ln-cta h2{font:800 clamp(28px, 4vw, 40px)/1.05 var(--display);color:var(--paper);margin:0}.ln-foot{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:8px 18px;padding:8px 0 12px;font-size:14px;display:flex}.ln-foot a{color:var(--ink-2)}@media (width<=820px){.landing{gap:40px}.ln-nav nav{display:none}.ln-nav .btn{margin-left:auto}.ln-hero{grid-template-columns:1fr;padding-top:2vh}.ln-steps,.ln-price{grid-template-columns:1fr}}.solution-hide{text-align:left;color:var(--muted);margin-top:10px;display:block}.solution-note{background:var(--brand-tint);color:var(--brand-ink);border-radius:10px;margin:8px 0 0;padding:10px 12px;line-height:1.45}.ln-notice{background:var(--bad-tint);color:var(--bad);text-align:left;border-radius:10px;margin:0 0 4px;padding:10px 12px;font-size:14px;line-height:1.45}.exam-picker{gap:16px;display:grid}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;display:grid}.picker-card{text-align:left;border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;font:inherit;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:14px;transition:border-color .15s,box-shadow .15s;display:grid}.picker-card:hover{border-color:color-mix(in srgb, var(--c) 50%, var(--line))}.picker-card.on{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb, var(--c) 18%, transparent)}.picker-card .exam-badge,.picker-aof .exam-badge,.exam-board .exam-badge{background:color-mix(in srgb, var(--c) 16%, var(--card));color:var(--c)}.picker-body{gap:3px;min-width:0;display:grid}.picker-body b{font-family:var(--display);font-size:17px}.picker-body small{color:var(--ink-2);font-size:13px;line-height:1.4}.picker-check{border:1.5px solid var(--line-2);border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.picker-card.on .picker-check{background:var(--c);border-color:var(--c);color:#fff}.picker-aof{border:1.5px dashed color-mix(in srgb, var(--c) 45%, var(--line));border-radius:16px;gap:12px;padding:16px;display:grid}.picker-aof-head{align-items:center;gap:12px;display:flex}.picker-aof-head div{gap:2px;display:grid}.picker-programs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.picker-programs .chip.on{background:var(--c,var(--brand));color:#fff;border-color:#0000}.picker-classes{justify-items:start;gap:10px;display:grid}.resume-hint{margin:6px 0 0}.due-banner{color:var(--ink);border-left:4px solid var(--brand);align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}.due-banner span{flex:1;gap:2px;display:grid}.exam-board{border-top:4px solid var(--c);gap:16px;padding:20px;display:grid}.board-head{align-items:center;gap:14px;display:flex}.board-title{flex:1;gap:2px;min-width:0;display:grid}.board-title h2{margin:0;font-size:22px}.board-title p{margin:0}.board-pct{justify-items:end;display:grid}.board-pct b{font:800 28px/1 var(--display);color:var(--c)}.board-pct small{color:var(--muted);font-size:12px}.board-bar,.ders-bar{background:color-mix(in srgb, var(--c) 14%, var(--line));border-radius:99px;height:8px;display:block;overflow:hidden}.board-bar span,.ders-bar span{border-radius:inherit;background:var(--c);height:100%;display:block}.ders-bar{height:6px}.ders-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.ders-tile{text-align:left;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,transform .15s;display:grid}.ders-tile:hover{border-color:var(--c);transform:translateY(-1px)}.ders-icon{background:color-mix(in srgb, var(--c) 14%, var(--card));width:40px;height:40px;color:var(--c);border-radius:12px;place-items:center;display:grid}.ders-main{gap:5px;min-width:0;display:grid}.ders-main b{font-family:var(--display);font-size:16px}.ders-chip{font:600 11.5px var(--text);white-space:nowrap;border-radius:99px;align-items:center;gap:4px;padding:4px 8px;display:inline-flex}.ders-chip.ok{background:var(--ok-tint);color:var(--ok)}.ders-chip.trial,.ders-chip.wait{background:var(--brand-tint);color:var(--brand-ink)}.ders-chip.lock{background:var(--bad-tint);color:var(--bad)}.board-actions{flex-wrap:wrap;gap:10px;display:flex}.choose-exam{gap:12px;padding:20px;display:grid}.choose-exam h2{margin:0}.center-note{text-align:center}@media (width<=520px){.board-head{flex-wrap:wrap}.exam-board{padding:16px}.board-actions .btn{flex:1}}.register .onboard-body{max-width:720px}.reg-logo{color:var(--ink);place-items:center;display:grid}.reg-progress{justify-items:center;gap:4px;display:grid}.reg-summary{gap:0;margin:0;padding:4px 16px;display:grid}.reg-summary div{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr auto;align-items:baseline;gap:10px;padding:12px 0;display:grid}.reg-summary div:last-child{border-bottom:0}.reg-summary dt{font:600 12px var(--mono);text-transform:uppercase;color:var(--muted)}.reg-summary dd{margin:0;font-weight:600}.reg-check{border:1.5px solid var(--line);background:var(--card);cursor:pointer;border-radius:14px;align-items:flex-start;gap:12px;padding:14px 16px;line-height:1.5;display:flex}.reg-check input{width:22px;height:22px;accent-color:var(--brand);flex:none;margin-top:1px}.reg-check .link{font-weight:700}.terms-text{gap:8px;max-height:60vh;margin-bottom:12px;padding-right:4px;font-size:15px;line-height:1.55;display:grid;overflow:auto}.terms-text h2{margin:0;font-size:21px}.terms-text ol,.terms-text ul{gap:8px;margin:0;padding-left:20px;display:grid}@media (width<=520px){.reg-summary div{grid-template-columns:1fr auto}.reg-summary dt{grid-column:1/-1}}.program-modal{gap:10px;display:grid}.program-modal h2{margin:0}.program-list{gap:6px;max-height:55vh;padding-right:2px;display:grid;overflow:auto}.program-row{text-align:left;border:1.5px solid var(--line);background:var(--card);color:var(--ink);font:inherit;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.program-row span{gap:2px;display:grid}.program-row:hover{border-color:#5b6ee1}.program-row.on{background:color-mix(in srgb, #5b6ee1 10%, var(--card));color:var(--ink);border-color:#5b6ee1}.program-row.on svg{color:#5b6ee1}@media (width>=768px){.side-nav{flex:none}.side-courses{border-top:1px solid var(--line);overscroll-behavior:contain;flex:1;grid-template-columns:minmax(0,1fr);align-content:start;gap:14px;margin:0 -6px;padding:16px 6px 0;display:grid;overflow:hidden auto}.side-group{grid-template-columns:minmax(0,1fr);gap:2px;display:grid}.side-group .eyebrow{padding:0 10px 4px}.side-course{color:var(--ink-2);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.side-course span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.side-course small{font:600 11.5px var(--mono);color:var(--muted)}.side-course:hover{background:var(--paper);color:var(--ink)}.side-course.active{background:var(--brand-tint);color:var(--ink)}.side-add{color:var(--brand-ink);padding:10px;font-weight:700}}.sidebar .side-courses,.sidebar .side-add{display:none}@media (width>=768px){.sidebar .side-courses{display:grid}.sidebar .side-add{display:block}}.study{gap:16px}.back-link{justify-self:start;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.ders-hero{border-top:4px solid var(--c);gap:16px;padding:20px;display:grid}.ders-hero-top{align-items:center;gap:14px;display:flex}.ders-hero-icon{background:color-mix(in srgb, var(--c) 15%, var(--card));width:56px;height:56px;color:var(--c);border-radius:16px;flex:none;place-items:center;display:grid}.ders-hero-title{flex:1;gap:2px;min-width:0;display:grid}.ders-hero-title h1{margin:0;font-size:clamp(24px,4vw,30px);line-height:1.1}.ders-hero .ring-center b{font:800 18px var(--display)}.ders-hero-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin:0;display:grid}.ders-hero-stats div{background:var(--paper);border-radius:12px;gap:2px;padding:10px 12px;display:grid}.ders-hero-stats dt{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.ders-hero-stats dd{font:800 19px var(--display);margin:0}.ders-next{background:color-mix(in srgb, var(--c) 9%, var(--card));border:1px solid color-mix(in srgb, var(--c) 30%, var(--line));border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.ders-next>div{gap:3px;min-width:0;display:grid}.ders-next b{font:800 19px/1.2 var(--display)}.ders-next.done{background:var(--ok-tint);border-color:#0000}.next-skel{border-radius:14px;height:84px}.ders-quick{flex-wrap:wrap;gap:8px;display:flex}.chip-btn{border:1px solid var(--line);background:var(--card);color:var(--ink-2);border-radius:99px;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.chip-btn small{font:inherit}.chip-n{font:700 12px var(--mono);background:var(--bad);color:#fff;text-align:center;border-radius:99px;min-width:22px;padding:2px 6px;font-style:normal}.chip-btn:hover{border-color:var(--line-2);color:var(--ink)}.chip-btn.hot{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 40%, var(--line));background:var(--bad-tint)}.chip-btn[aria-disabled=true]{opacity:.55;pointer-events:none}.study-tabs2{background:var(--card);border:1px solid var(--line);top:calc(var(--topbar-h) + 8px);z-index:5;border-radius:16px;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;display:grid;position:sticky}.study-tabs2:before{content:"";background:var(--paper);height:10px;position:absolute;bottom:100%;left:-2px;right:-2px}.study-tabs2{box-shadow:0 6px 14px -8px #00000059}@media (width>=1180px){.study-tabs2{top:12px}.study-tabs2:before{height:14px}}.study-tabs2 button{color:var(--muted);font:700 14px var(--text);cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:10px 8px;display:flex}.study-tabs2 button small{font:600 11px var(--mono);background:var(--paper);color:var(--muted);border-radius:99px;padding:2px 6px}.study-tabs2 button.on{background:color-mix(in srgb, var(--c) 13%, var(--card));color:var(--ink)}.study-tabs2 button.on svg{color:var(--c)}.study-tabs2 button.on small{background:var(--card);color:var(--ink)}@media (width<=420px){.study-tabs2 button{flex-direction:column;gap:3px;font-size:12.5px}}.tab-hint{margin:-4px 4px 0}.topic-rows{gap:10px;margin:0;padding:0;list-style:none;display:grid}.topic-row2{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 14px 14px 16px;display:grid}.topic-row2.weak{border-color:color-mix(in srgb, var(--bad) 35%, var(--line))}.topic-no{width:40px;height:40px;font:700 14px var(--mono);background:color-mix(in srgb, var(--c) 15%, var(--card));color:var(--c);border-radius:12px;place-items:center;display:grid}.topic-row2.done .topic-no{background:var(--ok-tint);color:var(--ok)}.topic-main{gap:6px;min-width:0;display:grid}.topic-main b{font:700 16.5px/1.25 var(--display);overflow-wrap:anywhere}.topic-bar{background:color-mix(in srgb, var(--c) 14%, var(--line));border-radius:99px;height:6px;display:block;overflow:hidden}.topic-bar span{background:var(--c);border-radius:inherit;height:100%;display:block}.topic-row2.done .topic-bar span{background:var(--ok)}.weak-note{color:var(--bad);font-style:normal;font-weight:700}.topic-acts{align-items:center;gap:4px;display:flex}.icon-btn.sm{width:36px;height:36px;color:var(--ink-2)}.topic-done-pill{background:var(--ok-tint);color:var(--ok);border-radius:99px;align-items:center;gap:4px;padding:6px 10px;font-size:13px;font-weight:700;display:inline-flex}.topic-skel{height:76px}@media (width<=520px){.topic-row2{grid-template-columns:auto 1fr;align-items:start;gap:6px 12px;padding:12px}.topic-no{border-radius:10px;width:34px;height:34px;font-size:13px}.topic-acts{grid-column:2}.topic-acts .btn,.topic-acts .topic-done-pill{margin-left:auto}.ders-hero{gap:14px;padding:16px}.ders-hero-icon{border-radius:14px;width:48px;height:48px}.ders-hero-stats{gap:6px}.ders-hero-stats div{padding:8px}.ders-hero-stats dt{letter-spacing:.02em;font-size:10px}.ders-hero-stats dd{font-size:16px}.ders-next{padding:14px}.ders-next .btn{width:100%}.ders-quick{grid-template-columns:1fr 1fr;display:grid}.chip-btn{justify-content:center;padding:10px 8px;font-size:13.5px}.chip-btn small{display:none}}.card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.deck{color:var(--ink);box-shadow:5px 5px 0 -1px var(--card), 5px 5px 0 0 var(--line);gap:10px;margin:0 5px 5px 0;padding:16px;text-decoration:none;transition:transform .15s,border-color .15s;display:grid;position:relative}.deck:hover{border-color:var(--c);transform:translateY(-2px)}.deck-top{justify-content:space-between;align-items:center;display:flex}.deck-stack{background:color-mix(in srgb, var(--c) 15%, var(--card));width:40px;height:40px;color:var(--c);border-radius:12px;place-items:center;display:grid}.deck-count{font:600 12px var(--mono);color:var(--muted)}.deck b{font:700 16px/1.25 var(--display)}.deck-bar{background:var(--line);border-radius:99px;height:6px;display:block;overflow:hidden}.deck-bar span{background:var(--c);height:100%;display:block}.deck-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.deck-go{color:var(--c);align-items:center;gap:4px;font-size:14px;font-weight:700;display:inline-flex}.summary-list{gap:10px;display:grid}.summary-card{text-align:left;cursor:pointer;font:inherit;color:var(--ink);border-left:4px solid var(--c);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.summary-card:hover{border-color:var(--c)}.summary-no{font:700 14px var(--mono);color:var(--c)}.summary-main{gap:3px;min-width:0;display:grid}.summary-main b{font:700 16px var(--display)}.summary-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.summary-meta{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.guide-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.empty-tab{text-align:center;justify-items:center;gap:8px;padding:28px 16px;display:grid}.empty-tab>span{background:var(--paper);width:52px;height:52px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.ders-hero .ring-fill{stroke:var(--c)}.ders-hero .ring-fill.full{stroke:var(--ok)}.ders-hero .ring-center{flex-direction:column;line-height:1.05}.home{grid-template-columns:minmax(0,1fr)}.home>*{min-width:0}.exam-board{grid-template-columns:minmax(0,1fr)}.ders-grid{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr))}.ders-main b{overflow-wrap:anywhere}@media (width<=520px){.exam-board{padding:16px}.board-head{gap:12px}.board-title h2{font-size:20px}.board-pct b{font-size:22px}}.board-actions .btn{white-space:normal;text-align:center;max-width:100%;height:auto;min-height:46px;line-height:1.25}@media (width<=520px){.board-actions .btn{flex:100%}}@media (width>=768px){.topbar>a:first-child{visibility:hidden}}.ln-price ul.ln-price-list{border-top:1px solid var(--line);gap:0;margin-top:14px}.ln-price ul.ln-price-list li{border-bottom:1px dashed var(--line);justify-content:space-between;gap:12px;padding:8px 0;font-size:14.5px}.ln-price-list li b{font-family:var(--mono);white-space:nowrap}.fresh-note{background:var(--brand-tint);border:1px solid color-mix(in srgb, var(--brand) 35%, var(--line));border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.fresh-note>span:last-child{gap:2px;min-width:0;display:grid}.fresh-dot{background:var(--brand);min-width:44px;height:44px;color:var(--on-brand);font:800 15px var(--mono);border-radius:12px;flex:none;place-items:center;padding:0 8px;display:grid}.fresh-chip{background:var(--brand);color:var(--on-brand);font:700 11.5px var(--text);vertical-align:2px;white-space:nowrap;border-radius:99px;margin-left:8px;padding:2px 8px;display:inline-block}.topic-row2.fresh{border-color:color-mix(in srgb, var(--brand) 55%, var(--line))}.fresh-banner{border:1.5px solid color-mix(in srgb, var(--brand) 55%, var(--line));background:color-mix(in srgb, var(--brand) 7%, var(--card));gap:12px;padding:16px;display:grid}.fresh-banner-head{align-items:center;gap:12px;display:flex}.fresh-banner-head>span:last-child{gap:2px;min-width:0;display:grid}.fresh-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.fresh-list button{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.fresh-list button:hover{border-color:var(--brand)}.fresh-list button>svg{color:var(--brand-ink);flex:none}.fresh-list button>span{flex:1;gap:1px;min-width:0;display:grid}.fresh-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fresh-list em{font:800 14px var(--mono);color:var(--brand-ink);font-style:normal}.fresh-actions{flex-wrap:wrap;gap:8px;display:flex}.ders-chip.fresh{background:var(--brand);color:var(--on-brand)}.board-access{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:6px;font-size:13px;display:flex}.board-access .link{font-weight:700}.verdict.praise .stamp{letter-spacing:.04em;font-size:19px}.praise-line{color:var(--brand-2);font-weight:800}.slip-praise{font:800 17px var(--display);color:var(--brand-2);margin:6px 0 0}.fast-block{border:1.5px solid color-mix(in srgb, var(--bad) 55%, var(--line));background:var(--bad-tint);border-radius:14px;gap:6px;margin-bottom:12px;padding:14px 16px;animation:.2s ease-out rise;display:grid}.fast-block b{font:800 18px var(--display);color:var(--bad)}.fast-block p{color:var(--ink-2);margin:0;font-size:14.5px}.fast-block.done{border-color:color-mix(in srgb, var(--ok) 50%, var(--line));background:var(--ok-tint)}.fast-block.done b{color:var(--ok);font-size:15px}.fast-bar{background:color-mix(in srgb, var(--bad) 18%, var(--line));border-radius:99px;height:6px;display:block;overflow:hidden}.fast-bar span{background:var(--bad);height:100%;transition:width .25s linear;display:block}.choices.locked{opacity:.55;pointer-events:none}:where(a,button,[role=tab],[role=radio],input,select,textarea,summary):focus-visible{outline:2.5px solid var(--brand);outline-offset:2px}.nav-badge{font:700 10.5px/1 var(--mono);background:var(--bad);color:#fff;text-align:center;border-radius:99px;min-width:18px;padding:3px 5px;font-style:normal}.bottom-item .nav-badge{position:absolute;top:4px;left:calc(50% + 6px)}.side-item .nav-badge{margin-left:auto}.side-due{font:700 11px var(--mono);background:var(--bad-tint);color:var(--bad);border-radius:99px;padding:2px 6px;font-style:normal}.chip.streak{color:inherit;text-decoration:none}.chip.streak small{color:var(--muted);margin-left:-2px;font-size:11px}.rail-due{gap:4px;margin:6px 0 10px;padding:0;list-style:none;display:grid}.rail-due button{background:var(--paper);width:100%;color:var(--ink);font:600 13.5px var(--text);cursor:pointer;text-align:left;border:0;border-radius:9px;align-items:center;gap:8px;padding:7px 8px;display:flex}.rail-due button:hover{background:var(--bad-tint)}.rail-due span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rail-due b{font:700 12.5px var(--mono);color:var(--bad)}button.quick{font:inherit;color:inherit;text-align:left;cursor:pointer;width:100%}.review-courses{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:8px;display:grid}.review-course{align-items:center;gap:10px;padding:10px 12px;display:flex}.review-course.on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand) inset}.review-course-main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:0;display:flex}.review-course-text{gap:1px;min-width:0;display:grid}.review-course-text b{font:700 15px var(--display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review-course .ders-icon{width:38px;height:38px}.review-ok{background:var(--ok-tint);width:30px;height:30px;color:var(--ok);border-radius:50%;flex:none;place-items:center;display:grid}.slip-actions{gap:10px;width:100%;max-width:440px;display:grid}.slip-actions .slip-cta{text-align:left;justify-content:space-between;width:100%;min-width:0;height:auto;min-height:56px}.slip-actions .slip-cta.outline{justify-content:center}.slip-cta-text{gap:2px;min-width:0;display:grid}.slip-cta-text b{font-size:17px}.slip-cta-text small{opacity:.8;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.slip-goal{background:var(--ok-tint);color:var(--ok);text-align:center;border-radius:12px;margin:0;padding:10px 12px;font-weight:800}.slip-review{text-align:left;width:100%;max-width:640px;padding:0;overflow:hidden}.slip-review summary{cursor:pointer;font:700 15px var(--display);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:14px 16px;list-style:none;display:flex}.slip-review summary:after{content:"+";font-family:var(--mono);color:var(--muted)}.slip-review[open] summary:after{content:"−"}.slip-review summary::-webkit-details-marker{display:none}.slip-review ol{gap:8px;margin:0;padding:0 12px 12px;list-style:none;display:grid}.ans-row{background:var(--paper);border:1px solid var(--line);border-radius:12px;grid-template-columns:auto 1fr;gap:10px;padding:12px;display:grid}.ans-row.bad{border-color:color-mix(in srgb, var(--bad) 40%, var(--line))}.ans-mark{color:#fff;background:var(--ok);border-radius:50%;place-items:center;width:24px;height:24px;margin-top:2px;display:grid}.ans-row.bad .ans-mark{background:var(--bad)}.ans-main{gap:6px;min-width:0;display:grid}.ans-stem{-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:14.5px;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.ans-line{color:var(--ink-2);margin:0;font-size:13.5px}.ans-row.bad .ans-line:not(.ok) b{color:var(--bad)}.ans-line.ok b{color:var(--ok)}.ans-main .link{justify-self:start;padding:0}.ans-exp{color:var(--ink-2);background:var(--card);border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.55}.fc-card{touch-action:pan-y;transition:transform .2s}.fc-card.yes .fc-back{box-shadow:0 0 0 3px var(--ok) inset}.fc-card.no .fc-back{box-shadow:0 0 0 3px var(--bad) inset}.board-more{justify-self:center;padding:4px 8px}@media (width<=520px){.ders-tile{gap:10px;padding:10px 12px}.ders-tile .ders-icon{border-radius:10px;width:34px;height:34px}.ders-main b{font-size:15px}}.offline-bar{z-index:100;text-align:center;background:var(--bad);color:#fff;padding:8px 16px;font-size:13.5px;font-weight:700;position:fixed;top:0;left:0;right:0}.demo-pill{font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.06em;background:var(--brand-tint);color:var(--brand-ink);vertical-align:1px;border-radius:99px;margin-right:8px;padding:3px 7px;font-style:normal}.ders-next.demo{background:color-mix(in srgb, var(--brand) 10%, var(--card));border-color:color-mix(in srgb, var(--brand) 40%, var(--line))}.pay-methods{background:var(--card);border:1px solid var(--line);border-radius:14px;grid-template-columns:1fr 1fr;gap:6px;padding:5px;display:grid}.pay-methods button{color:var(--muted);font:700 15px var(--text);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:11px 8px}.pay-methods button.on{background:var(--brand-tint);color:var(--ink)}.shopier-code{border:1.5px dashed var(--brand);background:var(--brand-tint);border-radius:12px;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;display:flex}.shopier-code code{font:800 22px var(--mono);letter-spacing:.08em;color:var(--ink);flex:1}.shopier-go{margin-top:10px}.shopier-wait{color:var(--brand-ink);align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.pulse-dot{background:var(--brand);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.shopier-assign{gap:6px;min-width:230px;display:grid}.shopier-assign .text-input{width:100%;padding:8px 10px;font-size:14px}.admin-test-note{background:var(--brand-tint);border-color:color-mix(in srgb, var(--brand) 40%, var(--line));margin:0;padding:12px 14px;font-size:14px;font-weight:600}.shopier-status{gap:8px;padding:12px 14px;display:grid}.shopier-status p{margin:0}.shopier-actions{flex-wrap:wrap;gap:8px;display:flex}.shopier-wait-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.cm{gap:12px;display:grid}.cm-empty{margin:0;padding:16px 18px}.cm-exam{border-left:3px solid var(--c);gap:12px;padding:16px 18px;display:grid}.cm-head{align-items:center;gap:12px;display:flex}.cm-head .exam-badge,.cm-add .exam-badge{background:color-mix(in srgb, var(--c) 16%, var(--card));color:var(--c);flex:none}.cm-title{flex:1;gap:2px;min-width:0;display:grid}.cm-title b{font-family:var(--display);overflow-wrap:anywhere;font-size:17px}.cm-title small{font-size:13px}.cm-head .btn{flex:none}.cm-caret{transition:transform .15s}.cm-caret.up{transform:rotate(180deg)}.cm-confirm{background:var(--bad-tint);color:var(--ink);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;padding:12px 14px;font-size:14.5px;line-height:1.45;display:flex}.cm-confirm-actions{gap:8px;margin-left:auto;display:flex}.cm-group{gap:8px;display:grid}.cm-group+.cm-group{border-top:1px dashed var(--line-2);padding-top:10px}.cm-group-head{justify-content:space-between;align-items:baseline;gap:10px;font-size:14px;display:flex}.cm-chips{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.cm-chip{border:1.5px solid var(--line);background:var(--paper);color:var(--ink-2);font:inherit;text-align:left;cursor:pointer;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 12px;transition:border-color .15s,background .15s,opacity .15s;display:grid}.cm-chip:hover:not(:disabled){border-color:color-mix(in srgb, var(--c) 50%, var(--line))}.cm-chip:not(.on){opacity:.62}.cm-chip:not(.on) .cm-chip-text b{text-decoration:line-through;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint)}.cm-chip.on{border-color:color-mix(in srgb, var(--c) 70%, var(--line));background:color-mix(in srgb, var(--c) 8%, var(--card));color:var(--ink)}.cm-chip:disabled{cursor:not-allowed}.cm-chip-icon{color:var(--c);place-items:center;display:grid}.cm-chip-text{gap:1px;min-width:0;display:grid}.cm-chip-text b{overflow-wrap:anywhere;font-size:14.5px;line-height:1.3}.cm-chip-text small{color:var(--muted);font-size:12.5px}.cm-chip-check{border:1.5px solid var(--line-2);border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.cm-chip.on .cm-chip-check{background:var(--c);border-color:var(--c);color:#fff}.cm-summary,.cm-hint{margin:0}.cm-cat{gap:8px;display:grid}.cm-cat h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-family:var(--mono);margin:4px 0 0}.cm-add-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;display:grid}.cm-add{border:1.5px solid var(--line);background:var(--card);color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s;display:flex}.cm-add:hover{border-color:color-mix(in srgb, var(--c) 55%, var(--line))}.cm-add .cm-title b{font-size:15.5px}.cm-plus{color:var(--c);background:color-mix(in srgb, var(--c) 12%, transparent);border-radius:99px;flex:none;padding:5px 11px;font-size:13px;font-weight:700}.cm-plus:before{content:"+ "}@media (width<=560px){.cm-exam{padding:14px}.cm-chips{grid-template-columns:1fr 1fr}.cm-head .btn{padding:7px 10px}}@media (width<=380px){.cm-chips{grid-template-columns:1fr}}.oabt-alan{border:1.5px dashed var(--line-2);background:var(--paper);border-radius:12px;gap:6px;padding:12px 14px;display:grid}.oabt-alan.need{border-color:color-mix(in srgb, var(--brand) 55%, var(--line));background:var(--brand-tint)}.oabt-alan-row{cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.oabt-alan-text{flex:220px;gap:2px;min-width:0;display:grid}.oabt-alan-text b{font-size:15px}.oabt-alan-text small{font-size:13px}.oabt-select{flex:260px;min-width:0;max-width:100%}.oabt-alan-note{font-size:13px;line-height:1.45}.es-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.es-row{border-left:3px solid var(--c);align-items:center;gap:12px;padding:12px 16px;display:flex}.es-row .exam-badge{background:color-mix(in srgb, var(--c) 16%, var(--card));color:var(--c)}.es-text{gap:2px;min-width:0;display:grid}.es-text b{font-family:var(--display);overflow-wrap:anywhere;font-size:16px}.es-text small{font-size:13px}.es-alan{color:var(--ink-2)}.es-alan.need{color:var(--brand-ink);font-weight:700}.es-empty{margin:0;padding:16px 18px}.es-edit{justify-self:start}.exam-setup{padding-bottom:96px}.es-back{justify-self:start}.es-lead{color:var(--ink-2);margin:0}.es-steps{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.es-step{border:1.5px solid var(--line);background:var(--card);width:100%;color:var(--ink-2);font:inherit;cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:700;display:flex}.es-step:disabled{cursor:not-allowed;opacity:.55}.es-num{width:24px;height:24px;font:700 13px var(--mono);background:var(--paper);border:1.5px solid var(--line-2);border-radius:50%;flex:none;place-items:center;display:grid}.es-steps li.on .es-step{border-color:var(--brand);color:var(--ink)}.es-steps li.on .es-num{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.es-steps li.done .es-num{background:color-mix(in srgb, var(--brand) 20%, var(--card));border-color:#0000}.es-bar{z-index:5;background:linear-gradient(to top, var(--paper) 75%, transparent);align-items:center;gap:12px;margin-top:8px;padding:12px 0;display:flex;position:sticky;bottom:0}.es-bar-note{text-align:center;flex:1}@media (width<=560px){.es-step{gap:6px;padding:8px;font-size:12.5px}.es-bar-note{display:none}.es-bar{justify-content:space-between}}.creator-badge{z-index:50;background:color-mix(in srgb, var(--card) 88%, transparent);border:1.5px solid var(--brand);pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:99px;align-items:center;gap:8px;padding:7px 12px;font-size:13px;display:flex;position:fixed;bottom:14px;right:14px;box-shadow:0 4px 14px #0000002e}.creator-badge span{color:var(--ink-2);font-weight:700}.creator-badge b{color:var(--brand-ink);font-family:var(--display);font-size:15px}@media (width<=760px){.creator-badge{bottom:76px;right:10px}}.cr-pick{grid-template-columns:1fr 1fr;gap:12px;padding:14px 16px;display:grid}.cr-field{gap:6px;font-size:14px;font-weight:700;display:grid}.cr-bar{z-index:6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex;position:sticky;top:8px}.cr-q{border:1.5px solid var(--line);gap:10px;padding:14px 16px;display:grid}.cr-q.on{border-color:var(--brand)}.cr-q-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.cr-context{background:var(--paper);border-radius:10px;padding:10px 12px;font-size:14.5px}.cr-stem{font-weight:600}.cr-opts{gap:4px;margin:0;padding:0;list-style:none;display:grid}.cr-opts li{border-radius:8px;padding:6px 10px}.cr-opts li.right{background:color-mix(in srgb, var(--good,#2e9e5b) 16%, transparent);font-weight:700}.cr-exp{color:var(--ink-2);margin:0}@media (width<=560px){.cr-pick{grid-template-columns:1fr}}.vote{gap:2px;margin-left:auto;display:inline-flex}.vote-btn{cursor:pointer;font:600 12.5px var(--text);color:var(--faint);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:8px;align-items:center;gap:4px;padding:4px 7px;display:inline-flex}.vote-btn:hover{background:var(--line);color:var(--ink)}.vote-btn.up.on{color:var(--ok)}.vote-btn.down.on{color:var(--bad)}.vote+.report-btn,.q-head .vote{margin-left:0}.level-pick{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (width>=640px){.level-pick{grid-template-columns:repeat(4,1fr)}}.level-pick .option-card span{font-size:13px}.level-pick.compact .option-card{padding:10px 12px}.level-ask{border:1.5px solid var(--brand);gap:12px;display:grid}.level-ask>div{gap:2px;display:grid}
