:root{--navy:#101e2c;--ink:#172a3a;--muted:#687784;--bg:#f3f5f7;--line:#e1e7eb;--lime:#c9f477;--teal:#14786c;--radius:18px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.6}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a{color:var(--teal);text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #267ee0;outline-offset:4px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.25;letter-spacing:-.035em}h1{font-size:clamp(1.8rem,2.4vw,2.6rem);margin-bottom:10px;font-weight:700}h2{font-size:1.35rem}h3{font-size:1.12rem}p{color:var(--muted);line-height:1.7}small,.small{font-size:.82rem}.muted{color:var(--muted)}.eyebrow{font-size:.73rem;letter-spacing:.12em;font-weight:750;color:var(--muted);margin-bottom:12px}.sidebar{background:var(--navy);position:fixed;inset:0 auto 0 0;width:236px;color:#e5edf4;padding:36px 22px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:10px;font-size:42px;font-weight:750;text-decoration:none;color:#fff;line-height:1;letter-spacing:-3px}.brand-symbol{width:40px;height:40px;border:1px solid #607a62;color:var(--lime);border-radius:12px;text-align:center;font-size:39px;line-height:32px;letter-spacing:0}.brand-dot{color:var(--lime);margin-left:-10px}.brand-sub{font-size:10px;letter-spacing:.2em;color:#9eaeba;margin:14px 0 45px 52px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;border:0;background:none;color:#afbdc9;text-align:left;padding:13px 14px;border-radius:10px;font-size:.88rem;min-height:48px}.nav-item:hover{background:#1c2b39}.nav-item.active{color:var(--lime);background:#293a36}.nav-icon{font-size:23px;line-height:1;width:23px;text-align:center}.sidebar-bottom{margin-top:auto;padding:30px 12px 0;border-top:1px solid #2b3b48}.sidebar-bottom .small{color:#859aa7;letter-spacing:.1em;font-size:.7rem}.sidebar-bottom strong{display:block;line-height:1.5;font-size:1.05rem;margin:14px 0}.sidebar-bottom .muted{font-size:.75rem;color:#a0b0be}.signal-bars{display:flex;gap:5px;align-items:flex-end;height:30px;margin:15px 0}.signal-bars i{width:6px;background:var(--lime);border-radius:2px;height:20%}.signal-bars i:nth-child(2){height:40%}.signal-bars i:nth-child(3){height:60%}.signal-bars i:nth-child(4){height:80%;opacity:.4}.signal-bars i:nth-child(5){height:100%;opacity:.2}.workspace{margin-left:236px}.topbar{height:79px;border-bottom:1px solid var(--line);padding:0 42px;display:flex;justify-content:space-between;align-items:center;background:#fff;font-size:.7rem;letter-spacing:.07em;color:var(--muted)}.topbar b{font-weight:500;letter-spacing:0;text-transform:none}.topbar>div{display:flex;align-items:center;gap:8px;letter-spacing:0;font-size:.78rem}.topbar-divider{padding:0 15px;color:#c0cad0}.avatar{margin-left:18px;width:34px;height:34px;display:grid;place-items:center;border:1px solid #d3dcdf;background:#eff4f0;border-radius:50%;font-size:.7rem;color:var(--teal);font-weight:700}.online-mark{width:6px;height:6px;background:var(--teal);border-radius:50%}main{max-width:1460px;margin:auto;padding:37px 42px 42px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.page-heading p{font-size:.9rem;margin-bottom:0}.page-heading .eyebrow{margin-bottom:9px}.chip,.tag{display:inline-block;white-space:nowrap;font-size:.67rem;letter-spacing:.07em;font-weight:700;border:1px solid var(--line);padding:6px 10px;border-radius:6px}.chip{background:#fff}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(230px,1fr);gap:22px}.hero{background:var(--navy);border-color:var(--navy);color:white;min-height:327px;position:relative;overflow:hidden;display:flex}.hero-copy{padding:32px;position:relative;z-index:2;width:67%}.hero .eyebrow{color:var(--lime)}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lime);margin-right:6px}.hero h2{font-size:clamp(1.6rem,2.2vw,2.3rem);line-height:1.2;letter-spacing:-.04em;margin:19px 0 16px}.hero h2 span{display:block;color:#bac8d0;font-weight:400}.hero p{font-size:.86rem;color:#a8b9c6;max-width:440px}.hero-meta{display:flex;gap:16px;font-size:.73rem;color:#b8c5ce;margin:20px 0}.button{border:1px solid var(--navy);border-radius:9px;background:var(--navy);color:white;padding:12px 19px;min-height:46px;font-size:.86rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:20px;line-height:1.35;text-decoration:none}.button:hover{filter:brightness(1.13)}.button.lime{color:#172c1c;background:var(--lime);border-color:var(--lime)}.button.secondary{background:#fff;color:var(--ink);border-color:#ccd6dc}.text-button{background:none;border:0;padding:8px 0;color:var(--teal);font-size:.86rem;font-weight:650;text-align:left;min-height:44px}.radio-art{position:absolute;right:-35px;top:0;bottom:0;width:46%;overflow:hidden;opacity:.92}.orbit{border:1px solid #35505b;border-radius:50%;position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);aspect-ratio:1}.o1{width:135px;border-style:dashed}.o2{width:225px}.o3{width:330px}.o3:before,.o3:after{content:'';position:absolute;top:50%;left:-40px;right:-40px;height:1px;background:#2b424f}.o3:after{transform:rotate(90deg)}.radio-center{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);font-size:46px;color:#d8edce;letter-spacing:-2px;text-align:center}.radio-center span{display:block;font-size:7px;letter-spacing:.15em;white-space:nowrap;color:#8ba49b}.frequency{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);font-family:ui-monospace,monospace;white-space:nowrap;font-size:29px;font-weight:300;color:var(--lime)}.frequency small{font-size:10px}.frequency span{display:block;font-family:inherit;font-size:8px;letter-spacing:.16em;color:#899fae;text-align:center}.route-card{text-align:center;padding:27px 18px;display:flex;align-items:center;flex-direction:column}.route-card .eyebrow{margin-bottom:18px}.progress-ring{width:143px;height:143px;border-radius:50%;background:conic-gradient(var(--teal) var(--progress),#e9efed 0);padding:9px;margin-bottom:19px;transform:rotate(-0deg)}.progress-ring>div{height:100%;background:white;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-ring b{font-size:42px;font-weight:600;line-height:1.1;letter-spacing:-3px}.progress-ring span{font-size:.68rem;color:var(--muted);margin-top:7px}.route-card strong{font-size:.95rem}.route-card p{font-size:.75rem;max-width:210px;margin:8px 0 0}.route-card .text-button{font-size:.78rem}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0 32px}.metric{display:flex;align-items:center;gap:15px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:12px}.metric-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;font-size:23px;flex-shrink:0}.teal{color:#176d60;background:#e7f4ed;border-color:#cde5d9}.amber{color:#8d6015;background:#fbf2dc;border-color:#f0dfb9}.violet{color:#6850a3;background:#f0ecf8;border-color:#ded3f2}.blue{color:#376baf;background:#edf3fe}.metric b{display:block;line-height:1.2;font-size:1.5rem;letter-spacing:-.04em}.metric b small{font-size:.8rem;color:var(--muted);font-weight:400;letter-spacing:0}.metric div>span{font-size:.7rem;color:var(--muted)}.section-title{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:17px}.section-title h2{margin:0;font-size:1.16rem}.section-title>span{font-size:.76rem;color:var(--muted)}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}.mode-card{padding:25px;display:flex;flex-direction:column}.mode-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.mode-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:11px;font-size:25px}.mode-card .eyebrow{font-size:.62rem;letter-spacing:.1em;margin-bottom:10px}.mode-card h3{margin-bottom:11px;font-size:1.16rem}.mode-card p{font-size:.83rem;margin-bottom:19px}.mode-link{border:0;border-top:1px solid var(--line);background:none;padding:17px 0 0;display:flex;justify-content:space-between;gap:10px;font-size:.8rem;font-weight:650;margin-top:auto;min-height:44px}.bottom-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin-bottom:22px}.compact{padding:25px;margin-bottom:22px}.bottom-grid>.compact{margin:0}.compact p{font-size:.86rem}.compact h2{font-size:1.16rem}.part-row{margin:17px 0}.part-row>div:first-child{display:flex;justify-content:space-between;font-size:.77rem;gap:10px;margin-bottom:8px}.part-row b{font-size:.76rem}.bar{height:6px;border-radius:20px;background:#ebeff1;overflow:hidden}.bar i{display:block;height:100%;background:var(--teal);border-radius:20px;transition:width .3s}.part-row:nth-of-type(2) .bar i{background:#8b77b0}.source-note{display:flex;align-items:center;gap:20px;padding:28px;background:#edf3f0;border-color:#dbe5e0}.source-seal{font-size:42px;color:var(--teal)}.source-note h3{font-size:1.03rem;line-height:1.5}.source-note p{font-size:.78rem;margin-bottom:5px}.source-note .text-button{font-size:.78rem}footer{display:flex;justify-content:space-between;gap:20px;margin:0 42px;padding:20px 0 25px;border-top:1px solid var(--line);font-size:.68rem;color:var(--muted)}.mobile-nav{display:none}.notice{background:#eaf2ee;border:1px solid #d5e3da;border-radius:12px;padding:22px;margin-bottom:24px;font-size:.9rem}.notice p:last-child{margin-bottom:0}.notice p{font-size:.88rem}.notice h3{margin-bottom:8px}.notice a{font-weight:600}.notice.warning{background:#fff3d6;border-color:#ebd191}.resume{display:flex;justify-content:space-between;align-items:center;gap:20px}.resume p{margin:5px 0 0}.toolbar{display:flex;justify-content:space-between;gap:18px;margin-bottom:25px;align-items:center}.tabs{display:flex;padding:5px;border-radius:10px;background:#e7ecef}.tabs button{border:0;background:none;padding:8px 17px;font-size:.84rem;border-radius:7px;min-height:42px;color:#566575}.tabs button.selected{background:#fff;color:var(--ink);box-shadow:0 1px 4px #10202c12}.search{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:5px 13px}.search input{border:0;background:none;min-height:36px;max-width:220px;outline-offset:3px;font-size:.86rem}.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.lesson-card{text-align:left;padding:24px;transition:transform .2s,border-color .2s}.lesson-card:hover{transform:translateY(-3px);border-color:#8fab9c}.lesson-meta{display:flex;justify-content:space-between;gap:10px;font-size:.7rem;color:var(--muted);align-items:center}.lesson-meta:last-child{margin-top:12px;min-height:40px}.lesson-meta .tag{font-size:.62rem}.lesson-number{font-family:ui-monospace,monospace;font-size:35px;color:#a5b7bd;margin:20px 0 12px;display:flex;justify-content:space-between}.lesson-number span{font-size:22px;color:var(--teal)}.lesson-card h3{font-size:1.15rem}.lesson-card p{font-size:.83rem;min-height:85px}.reading-grid{display:grid;grid-template-columns:minmax(0,2.6fr) minmax(220px,1fr);gap:25px}.reading{padding:35px}.reading section{margin:27px 0}.reading h2{font-size:1.3rem}.reading p{color:#4c5e69;line-height:1.9}.formula{padding:25px;background:var(--navy);color:var(--lime);border-radius:10px;font-size:1.18rem;font-family:ui-monospace,monospace;white-space:pre-wrap}.trap{background:#fff6df;border-left:3px solid #c59930;padding:20px;border-radius:0 8px 8px 0;margin:25px 0}.trap p{margin:8px 0 0}.source-block{border-top:1px solid var(--line);padding-top:24px;margin:25px 0}.source-block p{font-size:.86rem}.source-block .tag{white-space:normal}.source-block a{font-size:.86rem}.actions{display:flex;gap:12px;flex-wrap:wrap}.reading-grid aside label{display:block;margin:20px 0}.reading-grid input[type=range]{width:100%;display:block;accent-color:var(--teal);margin-top:15px}.lab-result{font-size:2.6rem;letter-spacing:-.04em;color:var(--teal);font-weight:650}.lab-result small{display:block;font-size:1.2rem}.exam-intro{background:var(--navy);color:#fff;display:flex;padding:35px;margin:25px 0;gap:35px;align-items:center}.exam-intro>div:first-child{flex:1}.exam-intro .eyebrow{color:var(--lime)}.exam-intro h2{font-size:1.7rem}.exam-intro p{color:#acbdc9;max-width:690px}.exam-intro .button{background:var(--lime);color:var(--navy)}.exam-glyph{font-family:ui-monospace,monospace;font-size:110px;color:var(--lime);line-height:1;text-align:center;padding:30px}.exam-glyph span{display:block;font-size:10px;line-height:1.6;letter-spacing:.15em;margin-top:16px;color:#adbdc7}.exam-facts{display:flex;gap:35px;margin:25px 0;flex-wrap:wrap}.exam-facts span{font-size:.76rem;display:block}.exam-facts b{display:block;font-size:1.6rem;letter-spacing:-.04em}.daily-split{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:24px 0}.daily-split span{padding:20px;background:white;border-radius:10px;border:1px solid var(--line);font-size:.84rem;color:var(--muted)}.daily-split b{display:block;color:var(--teal);font-size:1.4rem}.plan-list{display:flex;flex-direction:column;gap:16px}.plan-day{display:flex;align-items:center;gap:26px;padding:25px}.plan-day.today{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.plan-day.completed .day-number{color:var(--teal);background:#e4f1e9}.day-number{font-family:ui-monospace,monospace;font-size:37px;line-height:1.4;padding:12px 19px;background:#eff3f5;border-radius:10px;text-align:center;min-width:88px}.day-number span{display:block;font-family:inherit;font-size:.67rem;letter-spacing:.12em;color:var(--muted)}.day-copy{flex:1}.day-copy .eyebrow{font-size:.64rem;margin-bottom:6px}.day-copy h3{margin-bottom:6px}.day-copy p{font-size:.83rem;margin-bottom:12px}.topic-links{display:flex;gap:8px;flex-wrap:wrap}.topic-pill{font-size:.73rem;padding:6px 10px;border-radius:6px;background:#f1f5f3;border:1px solid #dce6df;color:var(--teal);min-height:34px}.day-action{display:flex;flex-direction:column;gap:13px;text-align:right;font-size:.8rem;color:var(--muted)}.day-action .button{font-size:.75rem}.done{background:#e9f3eb;color:var(--teal);border-color:#cfe1d4}.mastery-list button{display:grid;grid-template-columns:200px 1fr 140px;gap:25px;align-items:center;width:100%;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;padding:15px 0;font-size:.85rem}.mastery-list button span:last-child{text-align:right;color:var(--muted);font-size:.76rem}.history-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:.84rem}.source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0}.source-card{padding:25px;text-decoration:none;color:var(--ink)}.source-card:hover{border-color:var(--teal)}.source-card h3{margin-top:15px;line-height:1.5}.source-card .eyebrow{font-size:.63rem}.settings{display:flex;gap:22px;align-items:end;flex-wrap:wrap;margin:22px 0}.settings label{font-size:.83rem}.settings input,.settings select{display:block;background:#fff;border:1px solid #cbd6da;border-radius:7px;padding:10px;margin-top:7px;color:var(--ink);font-size:1rem}.file-label{cursor:pointer;position:relative;overflow:hidden}.file-label input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.file-label:focus-within{outline:3px solid #267ee0}.session-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;font-size:.9rem}.timer{font:700 1.4rem ui-monospace,monospace}.session-progress{margin-bottom:25px}.quiz-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:25px;align-items:start;max-width:1100px;margin:auto}.quiz-layout:has(>.question-card:only-child){grid-template-columns:minmax(0,820px);justify-content:center}.question-card{padding:38px}.question-card h1{font-size:1.65rem;line-height:1.4;margin:22px 0 30px}.question-card .eyebrow{font-size:.7rem}.answers{display:flex;flex-direction:column;gap:12px}.answer{width:100%;display:flex;align-items:center;gap:16px;border:1px solid #d9e1e6;background:#fff;border-radius:10px;padding:15px;text-align:left;min-height:64px;font-size:1rem;line-height:1.5}.answer>span:nth-child(2){flex:1}.answer-letter{width:32px;height:32px;border:1px solid #dce2e6;background:#f6f8f9;border-radius:7px;display:grid;place-items:center;color:var(--muted);font-size:.8rem;flex-shrink:0}.answer:not(:disabled):hover{border-color:#638678;background:#f1f7f3}.answer.chosen{background:#edf4f1;border-color:var(--teal)}.answer.correct{background:#e8f6ee;border-color:#47976c;color:#1b5a3e}.answer.incorrect{background:#fff0e9;border-color:#c27151;color:#8b402c}.feedback{border-radius:10px;padding:20px;margin-top:22px;font-size:.9rem}.feedback.good{background:#eaf5ef}.feedback.bad{background:#fff4e8}.feedback p{color:#495c60;margin:8px 0}.feedback .small{margin-top:10px;color:var(--muted);font-size:.7rem}.source-link{font-size:.8rem}.question-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:23px 0}.question-card>.small{margin:20px 0 0}.question-map{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:20px 0}.question-map button{background:#f5f7f8;border:1px solid var(--line);border-radius:6px;min-height:35px;font-size:.8rem}.question-map button.answered{background:#dceddf;color:#20603e}.question-map button.flagged{border:2px solid #b68329}.question-map button.current{box-shadow:0 0 0 2px var(--navy)}.result-card{text-align:center;padding:40px;margin-bottom:32px}.result-number{font-size:6rem;font-weight:700;letter-spacing:-.07em;color:var(--teal);line-height:1.3}.result-number span{font-size:2rem;color:var(--muted);letter-spacing:-.04em;font-weight:400}.result-card .actions,.result-card .exam-facts{justify-content:center}.review-item{margin:12px 0;padding:20px}.review-item summary{cursor:pointer;line-height:1.6}.review-item p{margin-top:16px;margin-bottom:12px}.review-item .tag{margin-right:10px}.skip{position:fixed;top:-100px;z-index:99;background:#fff;padding:12px}.skip:focus{top:10px;left:10px}#toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%) translateY(120px);padding:15px 24px;background:var(--navy);border-radius:10px;color:#fff;z-index:50;max-width:90vw;box-shadow:0 8px 25px #0002;transition:transform .2s;font-size:.9rem;pointer-events:none}#toast.show{transform:translateX(-50%)}
@media(min-width:1500px){main{padding-top:46px}.hero{min-height:350px}.hero-copy{padding:37px}.hero h2{font-size:2.5rem}.mode-card{padding:29px}.mode-card p{font-size:.9rem}}
@media(max-width:1200px){.sidebar{width:210px;padding:30px 15px}.workspace{margin-left:210px}main{padding:30px 26px}.topbar{padding:0 26px}.dashboard-grid{grid-template-columns:minmax(0,2fr) 235px}.hero-copy{padding:27px;width:74%}.radio-art{opacity:.5;right:-75px}.hero-meta{flex-wrap:wrap;gap:5px 16px}.metric{padding:15px 12px;gap:10px}.metric-icon{width:35px;height:35px}.metric div>span{font-size:.63rem}.mode-card{padding:20px}.source-grid{grid-template-columns:repeat(2,1fr)}.lesson-grid{grid-template-columns:repeat(2,1fr)}.page-heading .chip{display:none}.bottom-grid{grid-template-columns:1fr 1fr}.section-title>span{font-size:.68rem}.reading-grid{grid-template-columns:1fr}.reading-grid aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quiz-layout{grid-template-columns:minmax(0,1fr) 200px}.question-card{padding:25px}.quiz-layout>.compact{padding:18px}.plan-day{gap:18px;padding:20px}}
@media(max-width:950px){.sidebar{width:82px;padding:25px 12px}.brand{justify-content:center}.brand{font-size:0;gap:0}.brand-symbol{font-size:39px}.brand-dot,.brand-sub,.sidebar-bottom,.nav-item>span:last-child{display:none}.sidebar nav{margin-top:40px}.nav-item{justify-content:center;padding:12px}.workspace{margin-left:82px}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric div>span{font-size:.76rem}.hero-copy{width:78%}.hero h2{font-size:1.8rem}.hero .radio-art{opacity:.35}.dashboard-grid{grid-template-columns:minmax(0,1fr) 205px}.hero .button{font-size:.75rem;padding:12px}.mode-grid{gap:13px}.mode-card h3{font-size:1rem}.mode-card p{font-size:.8rem}.mode-link{font-size:.72rem}.bottom-grid{grid-template-columns:1fr}.quiz-layout{grid-template-columns:1fr}.question-map{grid-template-columns:repeat(10,1fr)}.quiz-layout>aside{order:-1}.quiz-layout>aside h3,.quiz-layout>aside p,.quiz-layout>aside>.button{display:none}.quiz-layout>aside{padding:15px;margin-bottom:0}.question-map{margin:0}.exam-glyph{font-size:75px;padding:10px}.day-action{min-width:100px}.daily-split{gap:10px}.daily-split span{padding:14px}.topbar{font-size:.62rem}.topbar-divider{padding:0 8px}footer{margin:0 26px}.mastery-list button{grid-template-columns:180px 1fr 110px;gap:12px}}
@media(max-width:650px){body{font-size:16px}.sidebar{display:none}.workspace{margin:0}.topbar{height:61px;padding:0 20px}.topbar>span{font-size:0}.topbar>span:before{content:'∿ onda.';font-size:25px;color:var(--navy);font-weight:800;letter-spacing:-1px}.topbar>span>*{display:none}.topbar>div{font-size:.7rem}.avatar{margin-left:8px;width:30px;height:30px}main{padding:25px 18px 100px}.page-heading{margin-bottom:22px}.page-heading h1{font-size:1.85rem;line-height:1.15}.page-heading p{font-size:.86rem;line-height:1.65}.eyebrow{font-size:.65rem}.dashboard-grid{grid-template-columns:1fr;gap:15px}.hero{min-height:310px}.hero-copy{padding:25px;width:90%}.hero h2{font-size:1.9rem}.hero p{font-size:.85rem}.hero .button{font-size:.82rem}.hero-meta{font-size:.7rem;gap:12px}.radio-art{right:-100px;opacity:.22!important;width:64%}.route-card{flex-direction:row;flex-wrap:wrap;gap:5px 20px;padding:20px;text-align:left;position:relative;min-height:128px;padding-left:123px;align-content:center}.route-card .eyebrow{width:100%;font-size:.62rem;margin-bottom:2px}.route-card .progress-ring{position:absolute;left:20px;width:83px;height:83px;padding:6px;margin:0}.progress-ring b{font-size:28px;letter-spacing:-1px}.progress-ring span{font-size:.5rem;margin-top:3px}.route-card strong{font-size:.9rem}.route-card p{display:none}.route-card .text-button{min-height:32px;font-size:.75rem}.metric-grid{gap:10px;margin:16px 0 29px}.metric{padding:15px 12px;gap:11px;border-radius:12px}.metric-icon{width:33px;height:33px;font-size:20px;border-radius:9px}.metric b{font-size:1.45rem}.metric div>span{font-size:.62rem;line-height:1.4;display:block;margin-top:4px}.metric b small{font-size:.7rem}.section-title{align-items:flex-start;margin-bottom:16px}.section-title h2{font-size:1.08rem}.section-title>span{font-size:.65rem;max-width:110px;text-align:right}.mode-grid{grid-template-columns:1fr;gap:13px}.mode-card{padding:22px;position:relative;padding-left:88px}.mode-top{position:absolute;top:22px;left:22px;margin:0}.mode-top>.small{display:none}.mode-icon{width:43px;height:43px}.mode-card h3{font-size:1.15rem}.mode-card .eyebrow{font-size:.61rem;margin-bottom:8px}.mode-card p{font-size:.84rem;margin-bottom:13px}.mode-link{font-size:.85rem}.compact{padding:22px}.compact h2{font-size:1.1rem}.source-note{padding:22px;gap:15px}.source-note h3{font-size:1rem}.source-note p{font-size:.83rem}.source-seal{font-size:33px}footer{display:none}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;gap:4px;background:#fff;border-top:1px solid #d8e1e5;padding:8px 8px calc(8px + env(safe-area-inset-bottom));z-index:20;box-shadow:0 -4px 18px #10202c05}.mobile-nav button{display:flex;flex:1;flex-direction:column;align-items:center;gap:3px;font-size:.58rem;border:0;background:none;color:#677886;min-height:45px;padding:0 2px}.mobile-nav button>span{font-size:23px;line-height:1.2}.mobile-nav button.active{color:var(--teal);font-weight:700}.notice{padding:20px;font-size:.9rem}.resume{align-items:flex-start;flex-direction:column}.toolbar{flex-direction:column;align-items:stretch;gap:13px}.tabs{justify-content:space-between}.tabs button{font-size:.82rem;padding:8px 13px}.search input{max-width:none;width:100%;font-size:1rem}.lesson-grid{grid-template-columns:1fr;gap:14px}.lesson-card{padding:23px}.lesson-card p{min-height:0;font-size:.9rem}.lesson-card h3{font-size:1.3rem}.lesson-number{margin:14px 0 8px}.lesson-meta{font-size:.76rem}.lesson-meta:last-child{min-height:25px}.lesson-meta .tag{font-size:.64rem}.reading{padding:23px}.reading p{font-size:1rem;line-height:1.85}.reading h2{font-size:1.3rem}.formula{font-size:.9rem;padding:19px;line-height:1.8}.reading-grid aside{grid-template-columns:1fr;gap:0}.reading .actions{flex-direction:column}.source-block .tag{font-size:.6rem}.exam-intro{padding:25px;gap:0}.exam-glyph{display:none}.exam-intro h2{font-size:1.6rem}.exam-intro p{font-size:.9rem}.exam-facts{gap:24px}.exam-facts b{font-size:1.4rem}.exam-facts span{font-size:.7rem}.daily-split{grid-template-columns:1fr 1fr}.daily-split span{font-size:.75rem}.daily-split b{font-size:1.2rem}.plan-day{display:grid;grid-template-columns:55px 1fr;gap:14px;padding:20px}.day-number{min-width:0;font-size:25px;padding:10px 6px;align-self:start}.day-number span{font-size:.55rem}.day-copy .eyebrow{font-size:.57rem}.day-copy h3{font-size:1.1rem}.day-copy p{font-size:.84rem}.day-action{grid-column:2;flex-direction:row;justify-content:space-between;align-items:center}.day-action .button{font-size:.7rem;padding:9px 12px;min-height:38px}.mastery-list button{grid-template-columns:1fr auto;gap:8px;font-size:.83rem}.mastery-list .bar{grid-column:1/-1;grid-row:2}.mastery-list button span:last-child{font-size:.7rem}.history-row{flex-direction:column;align-items:flex-start;gap:10px}.source-grid{grid-template-columns:1fr;gap:12px}.source-card{padding:22px}.settings{flex-direction:column;align-items:stretch;gap:15px}.settings input,.settings select{width:100%;min-height:46px}.session-top{gap:8px;flex-wrap:wrap}.session-top .tag{font-size:.6rem}.session-top .text-button{font-size:.8rem}.timer{font-size:1.2rem}.question-card{padding:23px}.question-card h1{font-size:1.4rem;line-height:1.45;margin:20px 0 25px}.question-card .eyebrow{font-size:.65rem}.answer{font-size:1rem;padding:13px;gap:12px}.answer-letter{width:29px;height:29px}.question-actions{gap:10px}.question-actions .button{font-size:.78rem;padding:12px}.question-actions .text-button{font-size:.76rem}.question-map{grid-template-columns:repeat(6,1fr)}.question-map button{min-height:38px}.quiz-layout{gap:15px}.feedback{padding:18px;font-size:.9rem}.feedback p{font-size:.9rem}.result-card{padding:30px 20px}.result-number{font-size:5rem}.result-card .actions{flex-direction:column}.review-item{padding:18px}.review-item summary{font-size:.95rem}.review-item p{font-size:.9rem}#toast{bottom:90px;min-width:85vw;font-size:.85rem}.source-note .text-button{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
/* Readable controls and metadata across devices. */
.eyebrow,.chip,.tag,.small,.lesson-meta,.brand-sub,.source-card .eyebrow,.mode-card .eyebrow,.day-copy .eyebrow,.lesson-meta .tag,.session-top .tag{font-size:max(12px,.75rem)}
.nav-item,.button,.text-button,.mode-link,.mode-card p,.metric div>span,.route-card p,.route-card .text-button,.source-note p,.source-note .text-button,.section-title>span,.part-row>div:first-child,.part-row b,.topic-pill,.day-action .button,.hero-meta,.hero .button,.lesson-card p,.mobile-nav button{font-size:max(14px,.875rem)}
#toast{opacity:0;visibility:hidden}#toast.show{opacity:1;visibility:visible}
@media(max-width:650px){.mobile-nav button{font-size:12px}.metric div>span{font-size:12px}.section-title>span{font-size:12px}.route-card p{font-size:14px}.eyebrow{font-size:12px}.hero-copy{width:100%}.hero p{max-width:90%}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-width:0}.metric-icon{width:30px;height:30px}.metric b{font-size:1.3rem}.mode-card .eyebrow{font-size:12px}.source-note{align-items:flex-start}.section-title{flex-wrap:wrap}.section-title>span{max-width:none;text-align:left}}
.official-program summary{cursor:pointer;font-weight:650}.official-program pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.8;max-height:65vh;overflow:auto;padding:20px;background:#f5f7f8;border:1px solid var(--line);border-radius:9px}.official-program p{margin-top:18px}
/* Historical evidence and reviewed practice. */
.history-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.history-overview>div{background:var(--navy);border-radius:14px;padding:23px;color:white}.history-overview b{display:block;color:var(--lime);font-size:2rem;line-height:1.3}.history-overview span{font-size:14px;color:#c2cfd6}.history-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;padding:28px;margin-bottom:24px}.history-intro .notice{margin:0;align-self:center}.history-select{display:flex;align-items:center;gap:14px;font-size:14px}.history-select select{padding:10px;border:1px solid var(--line);border-radius:8px;background:white}.frequency-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.frequency-row small{display:block;color:var(--muted);font-size:13px}.frequency-row .bar{margin-top:10px;max-width:240px}.table-head{font-weight:650;color:var(--muted)}.methodology{margin-top:22px}.methodology summary,.archive-exam summary{cursor:pointer}.methodology p{margin-top:18px}.archive-list{display:grid;gap:14px;margin-bottom:28px}.archive-exam summary{padding:24px;display:list-item;list-style-position:inside}.archive-exam summary>div{display:inline-block;vertical-align:middle;max-width:93%}.archive-exam h3{margin:8px 0}.archive-exam summary span:last-child{font-size:14px;color:var(--muted)}.archive-body{padding:0 24px 24px}.archive-body>.small{margin-top:20px}.archive-item{padding:20px 0;border-top:1px solid var(--line)}.archive-item>div:first-child{display:flex;gap:18px;font-size:14px}.archive-badges,.archive-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.archive-links a{font-size:14px;padding:7px 0;margin-right:12px}.historical-warning{background:#fff3d6;border-left:3px solid #b48a26;padding:14px;color:#694a16!important;font-size:14px}.history-resource-links{display:grid;grid-template-columns:1fr 1fr;gap:24px}.history-resource-links a{display:block;text-decoration:none}.history-resource-links span{display:block;font-size:14px;color:var(--muted);margin-top:8px}.historical-entry{padding:25px;margin-bottom:24px}.historical-provenance{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);font-size:14px}.historical-provenance p{margin:12px 0}.study-diagram{margin:20px 0;padding:18px;background:#f1f6f4;border-radius:12px;color:var(--teal)}.study-diagram svg{display:block;width:100%;max-height:240px}.study-diagram text{fill:currentColor;stroke:none;font-family:inherit;font-size:16px}.study-diagram figcaption{font-size:13px;color:var(--muted);margin-top:12px}.history-resource-links a:hover{text-decoration:underline}
@media(max-width:650px){.history-overview{grid-template-columns:1fr 1fr;gap:10px}.history-overview>div{padding:17px}.history-overview b{font-size:1.7rem}.history-intro{grid-template-columns:1fr;padding:22px;gap:20px}.history-resource-links{grid-template-columns:1fr}.frequency-row{grid-template-columns:1.2fr 1fr .8fr;gap:8px;font-size:13px}.frequency-row small{font-size:12px}.history-select{justify-content:space-between}.archive-exam summary{padding:20px}.archive-body{padding:0 20px 20px}.archive-body .actions{flex-direction:column;align-items:stretch}.archive-exam summary>div{max-width:90%}.study-diagram{padding:8px}.history-intro .button{width:100%}}
.study-diagram text{text-anchor:middle}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#101e2c 0%,#1f3b43 60%,#d8efcf 160%)}.auth-card{width:min(100%,470px);padding:38px;background:#fff;box-shadow:0 20px 60px #07131d40}.auth-brand{position:static;color:var(--navy);font-size:38px;margin-bottom:22px}.auth-card h1{font-size:clamp(1.8rem,5vw,2.5rem);margin-bottom:14px}.auth-card>p{font-size:.92rem}.auth-card form{display:grid;gap:16px;margin-top:24px}.auth-card label{display:grid;gap:7px;font-size:.86rem;font-weight:650}.auth-card input{width:100%;min-height:48px;padding:10px 13px;border:1px solid #cbd6da;border-radius:8px;background:#fff}.auth-card form .button{width:100%;margin-top:5px}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted)}.auth-divider:before,.auth-divider:after{content:'';height:1px;background:var(--line);flex:1}.auth-divider span{font-size:.8rem}.auth-card>.button{width:100%}.auth-card .notice{margin:20px 0 0;padding:14px;font-size:.84rem}.logout-button{border:0;background:none;color:var(--teal);font-size:.78rem;padding:5px 2px;text-decoration:underline;text-underline-offset:3px}.topbar>div{white-space:nowrap}

/* BOOX / E Ink palette: crisp paper, strong ink, reduced fills and no decorative motion. */
html[data-theme="eink"]{
 color-scheme:light;
 --navy:#111820;
 --ink:#101010;
 --muted:#343434;
 --bg:#fff;
 --line:#686868;
 --lime:#fff;
 --teal:#064f3d;
 --radius:9px;
 color:var(--ink);
 background:var(--bg);
}
html[data-theme="eink"] body,
html[data-theme="eink"] main,
html[data-theme="eink"] .workspace,
html[data-theme="eink"] .topbar,
html[data-theme="eink"] .mobile-nav{background:#fff;color:#101010}
html[data-theme="eink"] body{font-size:17px;line-height:1.7}
html[data-theme="eink"] p{line-height:1.8;color:#252525}
html[data-theme="eink"] .answer{font-size:1.05rem;min-height:68px}
html[data-theme="eink"] .card,
html[data-theme="eink"] .metric,
html[data-theme="eink"] .daily-split span,
html[data-theme="eink"] .answer,
html[data-theme="eink"] .review-item,
html[data-theme="eink"] .source-card{
 background:#fff;
 color:#101010;
 border:1px solid #555;
 box-shadow:none;
}
html[data-theme="eink"] .hero{
 background:#fff;
 color:#101010;
 border:2px solid #111;
}
html[data-theme="eink"] .hero h2,
html[data-theme="eink"] .hero p,
html[data-theme="eink"] .hero .eyebrow,
html[data-theme="eink"] .hero-meta{color:#111}
html[data-theme="eink"] .radio-art{display:none}
html[data-theme="eink"] .sidebar{background:#111;color:#fff}
html[data-theme="eink"] .sidebar .brand,
html[data-theme="eink"] .sidebar .nav-item.active{color:#fff}
html[data-theme="eink"] .teal,
html[data-theme="eink"] .amber,
html[data-theme="eink"] .violet,
html[data-theme="eink"] .blue,
html[data-theme="eink"] .tag{
 background:#fff;
 color:#111;
 border:1px solid #333;
}
html[data-theme="eink"] .button,
html[data-theme="eink"] .button.secondary,
html[data-theme="eink"] .button.lime,
html[data-theme="eink"] .topic-pill,
html[data-theme="eink"] .mode-link{
 background:#fff;
 color:#111;
 border:1px solid #222;
 box-shadow:none;
}
html[data-theme="eink"] .button.lime,
html[data-theme="eink"] .nav-item.active{
 background:#111;
 color:#fff;
}
html[data-theme="eink"] .plan-day.active{
 border:2px solid #111;
 box-shadow:inset 5px 0 #111;
}
html[data-theme="eink"] .plan-day.completed .day-number{
 background:#111;
 color:#fff;
}
html[data-theme="eink"] .day-number,
html[data-theme="eink"] .formula,
html[data-theme="eink"] .study-diagram,
html[data-theme="eink"] .notice,
html[data-theme="eink"] .trap,
html[data-theme="eink"] .source-block,
html[data-theme="eink"] .feedback{
 background:#fff;
 color:#111;
 border-color:#555;
}
html[data-theme="eink"] .notice{border-left:4px solid #111}
html[data-theme="eink"] .daily-split b,
html[data-theme="eink"] .metric b,
html[data-theme="eink"] .progress-ring b{color:#111}
html[data-theme="eink"] .bar{background:#ddd;border:1px solid #555}
html[data-theme="eink"] .bar i{background:#111}
html[data-theme="eink"] .progress-ring{
 background:conic-gradient(#111 var(--progress),#d8d8d8 0);
}
html[data-theme="eink"] .progress-ring>div{background:#fff}
html[data-theme="eink"] .answer.chosen{background:#eee;border:2px solid #111}
html[data-theme="eink"] .answer.correct{background:#fff;border:2px solid #075a36;color:#064f3d}
html[data-theme="eink"] .answer.incorrect{background:#fff;border:2px solid #8b2020;color:#741717}
html[data-theme="eink"] .feedback.good{border-left:4px solid #075a36}
html[data-theme="eink"] .feedback.bad{border-left:4px solid #8b2020}
html[data-theme="eink"] a{color:#064f3d;text-decoration-thickness:2px}
html[data-theme="eink"] button:focus-visible,
html[data-theme="eink"] a:focus-visible,
html[data-theme="eink"] input:focus-visible,
html[data-theme="eink"] select:focus-visible,
html[data-theme="eink"] summary:focus-visible{outline:3px solid #111;outline-offset:3px}
html[data-theme="eink"] .mobile-nav{border-top:2px solid #111;box-shadow:none}
html[data-theme="eink"] .auth-shell{background:#fff}
html[data-theme="eink"] .auth-card{border:2px solid #111;box-shadow:none}
html[data-theme="eink"] .eink-setting{
 display:flex;
 align-items:flex-start;
 gap:12px;
 margin:16px 0;
 padding:14px;
 border:1px solid #333;
 border-radius:8px;
 background:#fff;
 color:#111;
 cursor:pointer;
}
.eink-setting{
 display:flex;
 align-items:flex-start;
 gap:12px;
 margin:16px 0;
 padding:14px;
 border:1px solid var(--line);
 border-radius:8px;
 cursor:pointer;
}
.eink-setting input{width:22px;height:22px;margin:2px 0;accent-color:#111}
.eink-setting span{display:grid;gap:3px}
.eink-setting small{display:block;color:var(--muted);font-weight:400}
html[data-theme="eink"] .eink-setting input{width:22px;height:22px;margin:2px 0;accent-color:#111}
html[data-theme="eink"] .eink-setting span{display:grid;gap:3px}
html[data-theme="eink"] .eink-setting small{color:#333}
html[data-theme="eink"] .plan-criteria{line-height:1.75}
.offline-ready{cursor:default}
.offline-ready input:disabled{opacity:1}
.sync-pending{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}
.sync-pending ul{padding-left:22px;margin:0 0 16px;color:var(--ink)}
.sync-pending li{margin:4px 0}
.changelog-entry{border-top:1px solid var(--line);padding:12px 0}
.changelog-entry summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer;list-style-position:inside}
.changelog-entry summary span{color:var(--muted);font-size:.82rem}
.changelog-entry ul{margin:10px 0 0;padding-left:24px}
.changelog-entry li{margin:4px 0}
.changelog-top-link{margin:-17px 0 24px}
.changelog-top-link>summary{display:inline-flex;align-items:center;gap:8px;cursor:pointer;list-style:none;color:var(--teal);font-size:.84rem;text-decoration:underline;text-underline-offset:4px}
.changelog-top-link>summary::-webkit-details-marker{display:none}
.changelog-top-link>summary::after{content:'⌄';font-size:1rem;text-decoration:none}
.changelog-top-link[open]{padding:0 14px 8px;border:1px solid var(--line);border-radius:10px}
.changelog-top-link[open]>summary{display:flex;width:100%;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}
.changelog-top-link[open]>summary::after{content:'⌃'}
.changelog-top-link .changelog-list{padding:0 2px}
.knowledge-sources{margin:30px 0}
.knowledge-heading{margin-bottom:18px}
html[data-theme="eink"] .sync-pending,
html[data-theme="eink"] .changelog-entry,
html[data-theme="eink"] .changelog-top-link[open]{border-color:#111}
html[data-theme="eink"] .changelog-top-link>summary{color:#111}
html[data-theme="eink"] .changelog-top-link[open]>summary{border-color:#111}
html[data-theme="eink"] .sync-pending ul{color:#111}
html[data-theme="eink"] .changelog-entry summary span{color:#333}
html[data-theme="eink"] *,
html[data-theme="eink"] *::before,
html[data-theme="eink"] *::after{transition:none!important;animation:none!important}
