:root{--ink:#14201c;--muted:#5d6a65;--paper:#f7f7f3;--panel:#ffffff;--line:#d9dedb;--accent:#e4542f;--accent-dark:#a8321a;--sage:#cde6dd;--lime:#d7ff65;--night:#10251e;--blue:#d9e8ff;--shadow:0 18px 45px rgba(17,38,30,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px}.grain{position:fixed;inset:0;z-index:-1;opacity:.2;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.11'/%3E%3C/svg%3E")}.topbar{background:rgba(247,247,243,.9)}.workspace-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:42px;align-items:center;padding:36px 0 20px}.workspace-hero h1{font-size:clamp(44px,6vw,76px);margin:10px 0 16px}.progress-panel{background:var(--night);color:white;border-radius:18px;padding:25px;display:flex;align-items:center;gap:22px;box-shadow:var(--shadow)}.progress-panel p{color:#bbcac4;margin:5px 0 0;font-size:13px}.ring{--progress:0deg;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;flex:none;background:conic-gradient(var(--lime) var(--progress),#30483e 0);position:relative}.ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--night)}.ring span{position:relative;font:700 20px DM Mono}.compact-actions{margin-top:24px}.study-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:32px}.study-sidebar .side-list button{display:flex;gap:9px}.study-sidebar .side-list button span{font:11px DM Mono;color:var(--accent);min-width:18px}.full-button{width:100%;margin-top:18px}.study-card{padding-top:36px}.study-header{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding-bottom:28px}.complete-button{border:1px solid var(--line);border-radius:99px;background:white;color:var(--ink);padding:10px 14px;font:700 13px Manrope;cursor:pointer;white-space:nowrap}.complete-button.done{background:var(--night);color:white;border-color:var(--night)}.study-facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:28px 0}.study-facts div{padding:15px;border-right:1px solid var(--line)}.study-facts div:last-child{border:0}.study-facts strong{display:block;font:700 24px Playfair Display}.study-facts span{font:11px DM Mono;color:var(--muted);text-transform:uppercase}.chapter-outline{border:1px solid var(--line);border-radius:9px;margin-bottom:26px}.chapter-outline summary{cursor:pointer;padding:14px 16px;font-weight:700}.chapter-outline div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 16px 18px}.chapter-outline a{font-size:13px;color:var(--accent-dark);text-decoration:none}.chapter-outline a:hover{text-decoration:underline}.outcomes-block{background:var(--blue);padding:22px;border-radius:11px;margin-bottom:36px}.outcomes-block p{line-height:1.55;margin:8px 0}.outcomes-block .code{display:inline-block;min-width:58px}.long-read{max-width:820px}.long-read h3{scroll-margin-top:100px}.chapter-footer{position:sticky;bottom:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;justify-content:space-between;gap:8px;margin-top:34px}.button:disabled{opacity:.35;cursor:not-allowed}.choice.selected{border-color:var(--ink);background:var(--blue);box-shadow:inset 0 0 0 1px var(--ink)}.choice.selected .letter{background:var(--ink);color:white;border-color:var(--ink)}.exam-start{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:start;padding-top:34px}.exam-intro{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:clamp(26px,5vw,56px)}.exam-intro h1{font-size:clamp(50px,8vw,94px);margin:14px 0 20px}.exam-specs{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0}.exam-specs div{padding:18px 12px;border-right:1px solid var(--line)}.exam-specs div:last-child{border:0}.exam-specs strong{display:block;font:700 25px Playfair Display}.exam-specs span{font:10px DM Mono;color:var(--muted);text-transform:uppercase}.exam-rules{background:var(--night);color:white;border-radius:18px;padding:29px;box-shadow:var(--shadow)}.exam-rules .sidebar-title{color:var(--lime)}.exam-rules ol{padding-left:22px;line-height:1.65}.exam-rules li{padding:6px 0}.source-note{color:#b8c7c0;font-size:13px;line-height:1.6;border-top:1px solid #375147;padding-top:18px}.previous-score{display:flex;align-items:baseline;gap:14px;background:#eef2ef;padding:14px 16px;border-radius:9px}.previous-score span,.previous-score small{color:var(--muted);font-size:12px}.previous-score strong{font:700 27px Playfair Display}.exam-top{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:15px 18px;position:sticky;top:86px;z-index:3}.exam-top p{margin-bottom:3px}.exam-timer{text-align:center}.exam-timer span{display:block;font:10px DM Mono;color:var(--muted);text-transform:uppercase}.exam-timer strong{font:700 24px DM Mono}.exam-progress{height:6px;background:#e3e7e4;margin:10px 0 22px;border-radius:4px;overflow:hidden}.exam-progress span{height:100%;display:block;background:var(--accent)}.exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:24px}.exam-question{min-height:610px}.exam-actions{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:26px}.mark-button{border:0;background:transparent;color:var(--muted);font:700 13px Manrope;cursor:pointer}.mark-button.marked{color:#a15d00}.exam-navigator{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;height:max-content;position:sticky;top:175px}.navigator-summary{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:7px;align-items:baseline;margin-bottom:15px}.navigator-summary strong{font:700 22px Playfair Display}.navigator-summary span{font-size:11px;color:var(--muted)}.question-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:5px}.question-grid button{aspect-ratio:1;border:1px solid var(--line);background:white;border-radius:4px;font:500 10px DM Mono;cursor:pointer}.question-grid button.answered{background:#dff0e5;border-color:#9ac8a8}.question-grid button.review{box-shadow:inset 0 0 0 2px #edae38}.question-grid button.current{background:var(--ink);border-color:var(--ink);color:white}.navigator-key{display:flex;gap:11px;flex-wrap:wrap;margin-top:15px;color:var(--muted);font-size:10px}.navigator-key span{display:flex;align-items:center;gap:4px}.navigator-key i{width:9px;height:9px;border:1px solid var(--line);display:inline-block}.navigator-key i.answered{background:#dff0e5;border-color:#9ac8a8}.navigator-key i.review{box-shadow:inset 0 0 0 2px #edae38}.results-hero{background:var(--night);color:white;border-radius:20px;padding:clamp(27px,5vw,55px);display:grid;grid-template-columns:.8fr 1.2fr;align-items:end}.results-hero .eyebrow{color:var(--lime)}.results-hero h1{font-size:clamp(74px,11vw,140px);margin:4px 0}.results-hero h1 span{font-size:.3em;color:#9cb1a8}.results-hero p{color:#b8c7c0}.result-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #395047;border-radius:10px;overflow:hidden}.result-metrics div{padding:18px;border-right:1px solid #395047}.result-metrics div:last-child{border:0}.result-metrics strong{display:block;font:700 27px Playfair Display}.result-metrics span{font:10px DM Mono;text-transform:uppercase;color:#aabbb4}.breakdown{margin-top:48px}.breakdown-list{display:grid;gap:7px}.breakdown-list button{display:grid;grid-template-columns:35px minmax(0,2fr) minmax(100px,1fr) 42px;align-items:center;gap:13px;width:100%;padding:13px 15px;border:1px solid var(--line);background:white;border-radius:8px;text-align:left;cursor:pointer}.breakdown-list button:hover{border-color:#9fb3aa}.breakdown-list button>span{font:11px DM Mono;color:var(--accent)}.breakdown-list button strong{font-size:13px}.breakdown-list button b{font:700 13px DM Mono}.score-track{height:5px;background:#e5e9e7;border-radius:4px;overflow:hidden}.score-track i{display:block;height:100%;background:var(--accent)}.answer-review{margin-top:52px}.review-item{border:1px solid var(--line);border-left:5px solid #abb4b0;background:white;border-radius:8px;margin:7px 0}.review-item.correct{border-left-color:#4b8a59}.review-item.wrong{border-left-color:#c94e38}.review-item summary{display:grid;grid-template-columns:35px 1fr 70px;gap:12px;align-items:start;padding:15px;cursor:pointer}.review-item summary span{font:11px DM Mono;color:var(--muted)}.review-item summary strong{font-size:13px;line-height:1.45}.review-item summary b{text-align:right;font:700 12px DM Mono}.review-body{padding:0 15px 15px 62px}.review-body p{padding:7px 9px;margin:3px 0;border-radius:5px;font-size:13px}.review-body p span{font:700 11px DM Mono;display:inline-block;width:24px}.review-body .answer-key{background:#e4f4e8;color:#285c35}.review-body .your-wrong-answer{background:#fbe9e4;color:#8b2c1b}.review-body small{display:block;color:var(--muted);line-height:1.55;margin-top:10px}.map-node small{color:var(--muted);font-size:11px;line-height:1.4}.result{width:100%;background:transparent;border-left:0;border-right:0;border-top:0;text-align:left;font-family:Manrope;cursor:pointer}
@media(max-width:1000px){.topbar nav{gap:13px}.topbar nav button{font-size:12px}.search-trigger{font-size:0!important}.search-trigger span{font-size:20px}.search-trigger kbd{display:none}.map-grid{grid-template-columns:repeat(3,1fr)}.exam-layout{grid-template-columns:1fr}.exam-navigator{position:static}.question-grid{grid-template-columns:repeat(20,1fr)}}
@media(max-width:840px){.topbar{height:auto;min-height:70px;padding:10px 18px;flex-wrap:wrap;gap:7px}.topbar nav{order:3;width:100%;display:flex;overflow-x:auto;padding-top:3px;border-top:1px solid var(--line)}.topbar nav button{white-space:nowrap;padding:8px}.search-trigger{margin-left:auto}main{padding:24px 18px 55px}.workspace-hero,.exam-start,.results-hero{grid-template-columns:1fr;gap:22px}.progress-panel{min-height:150px}.metric-row,.exam-specs,.result-metrics{grid-template-columns:repeat(2,1fr)}.chapter-grid{grid-template-columns:1fr}.split,.study-layout,.practice-layout{grid-template-columns:1fr}.sidebar{position:static;overflow:auto}.side-list{display:flex;min-width:max-content}.side-list button{width:auto;white-space:nowrap}.content-card{min-height:auto}.study-header{display:block}.complete-button{margin-top:12px}.chapter-outline div{grid-template-columns:1fr}.chapter-footer{position:static;flex-wrap:wrap}.map-grid{grid-template-columns:repeat(2,1fr)}.exam-top{top:120px;flex-wrap:wrap}.exam-layout{grid-template-columns:1fr}.exam-question{min-height:auto}.exam-actions{flex-wrap:wrap}.exam-navigator{position:static}.question-grid{grid-template-columns:repeat(10,1fr)}.review-item summary{grid-template-columns:28px 1fr 55px}.review-body{padding-left:15px}}
@media(max-width:520px){.brand em{font-size:14px}.metric-row,.study-facts,.exam-specs,.result-metrics{grid-template-columns:1fr}.metric,.study-facts div,.exam-specs div,.result-metrics div{border-right:0;border-bottom:1px solid var(--line)}.question-grid{grid-template-columns:repeat(8,1fr)}.map-grid{grid-template-columns:1fr}.breakdown-list button{grid-template-columns:28px 1fr 38px}.breakdown-list .score-track{display:none}.question-badge{display:grid;gap:5px}.exam-top .button{width:100%}}
