:root{--ink:#193b33;--muted:#6c7b73;--green:#1a6753;--mint:#e6eee5;--bg:#f5f6f0;--line:#dde4dc;--gold:#ab8146}*{box-sizing:border-box}body{margin:0;font:15px/1.65 system-ui,sans-serif;color:var(--ink);background:var(--bg)}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit;color:inherit;border:1px solid var(--line);border-radius:8px;padding:11px 15px;background:white}button{cursor:pointer}button:hover{border-color:var(--green)}button:disabled{cursor:default;opacity:.65}button.primary{background:var(--green);color:white;border-color:var(--green)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bd965a;outline-offset:3px}#sidebar{width:260px;background:#fff;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);padding:30px 18px;overflow:auto;display:flex;flex-direction:column;z-index:20}.brand{text-decoration:none;display:flex;gap:12px;align-items:center;font-weight:800;letter-spacing:.08em;font-size:14px;margin:0 12px 35px}.brand small{display:block;letter-spacing:0;font-size:11px;color:var(--muted);font-weight:400}.brandmark{background:var(--green);color:white;width:39px;height:43px;border-radius:10px;display:grid;place-items:center;font:28px Georgia}.navlabel{font-size:10px;letter-spacing:.12em;color:var(--muted);margin:20px 13px 10px}nav a{display:flex;align-items:center;gap:11px;font-size:13px;text-decoration:none;padding:12px 13px;border-radius:8px;margin:4px 0}nav a:hover{background:#f0f3ec}nav a.active{background:var(--mint);font-weight:700;color:var(--green)}nav a>span{font-size:11px;color:#87998e}nav b{font-size:10px;background:white;border:1px solid var(--line);padding:0 6px;border-radius:5px;margin-left:auto}.sidebottom{margin-top:auto;padding:28px 12px 0;display:grid;gap:12px;font-size:12px}.sidebottom small{color:var(--muted);font-size:10px}.shell{margin-left:260px}header{padding:18px 40px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#fff;gap:15px;font-size:12px;color:var(--muted)}#menu{display:none}.statusdot{font-size:11px;color:var(--green);background:#edf3e9;border-radius:15px;padding:4px 13px}main{max-width:1400px;margin:auto;padding:40px}.eyebrow{font-size:10px;letter-spacing:.12em;color:var(--muted);font-weight:700}h1{font:clamp(32px,3.5vw,52px)/1.16 Georgia,serif;letter-spacing:-.025em;margin:12px 0 18px}h2{font:27px/1.25 Georgia,serif;margin:9px 0 16px}h3{font-size:17px;line-height:1.4;margin:10px 0}p{color:var(--muted)}small,.muted{font-size:12px;color:var(--muted)}.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center;margin:5px 0 32px}.hero p{max-width:600px}.heroart{background:var(--mint);border:1px solid #d6e1d3;padding:25px;border-radius:18px;position:relative;min-height:245px}.heroart .pathrow{display:flex;gap:8px;margin:16px 0}.pathrow span{background:white;border:1px solid var(--line);padding:9px 12px;font-size:12px;border-radius:8px;flex:1;text-align:center}.route-caption{font-size:11px;text-align:center;color:var(--muted);margin:13px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:25px 0}.stat{background:white;border:1px solid var(--line);padding:18px 22px;border-radius:10px}.stat b{display:block;font-size:32px;font-weight:500}.stat span{font-size:11px;color:var(--muted)}.card{background:white;border:1px solid var(--line);padding:26px;border-radius:12px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:38px 0 18px}.sectionhead h2{margin:0}.tag{display:inline-block;font-size:10px;padding:4px 10px;border-radius:20px;background:#eee8db;color:#78633e;margin:3px 6px 3px 0}.tag.live{background:var(--mint);color:var(--green)}.card .num{font-size:11px;color:var(--gold);letter-spacing:.1em}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.notice{padding:14px 18px;background:var(--mint);border-radius:8px;font-size:12px;margin:22px 0;color:#536858}.warning{background:#fff0d9;color:#765321}.heading{margin:5px 0 28px}.heading p{max-width:750px}.modebar{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin:25px 0}label{display:grid;gap:7px;font-size:12px;font-weight:650}input,select{width:100%;min-width:0}.modebar select{min-width:270px}.scenario-card{display:flex;flex-direction:column;align-items:start}.scenario-card p{font-size:13px;flex:1}.scenario-card button{margin-top:12px}.session{max-width:900px;margin:auto}.session-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.progress{height:5px;background:#e4e9df;border-radius:3px;overflow:hidden;margin:20px 0}.progress span{display:block;height:100%;background:var(--green)}.context{border-left:3px solid var(--gold);padding:13px 18px;background:#f6f4ed;font-size:14px;margin:20px 0}.question{font:25px/1.45 Georgia,serif;margin:25px 0}fieldset{border:0;padding:0;margin:0}.option{display:flex;align-items:flex-start;gap:13px;border:1px solid var(--line);padding:17px;border-radius:10px;margin:11px 0;font-size:14px;font-weight:400;cursor:pointer}.option:has(input:checked){background:#eaf0e7;border-color:var(--green)}.option input{width:auto;min-width:auto;margin-top:6px;accent-color:var(--green)}.option .letter{font-size:11px;min-width:20px;color:var(--muted);font-weight:700}.feedback{padding:20px 22px;background:var(--mint);border-radius:10px;margin:20px 0}.feedback p{margin-bottom:4px;color:#3e6050}.feedback strong{font-size:17px}.scorebig{font:60px Georgia,serif;margin:18px 0;color:var(--green)}.scorebig small{font:18px system-ui;color:var(--muted)}details{padding:15px 0;border-top:1px solid var(--line)}summary{cursor:pointer;font-size:14px;font-weight:600}li{margin:10px 0}blockquote{margin:15px 0;padding:14px 18px;background:#f4f5ed;border-left:3px solid #c3ae86;font-size:14px}.filters{display:grid;grid-template-columns:1fr 310px;gap:15px}.question-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start}#qlist{max-height:900px;overflow:auto;padding-right:5px}.qlink{display:block;width:100%;text-align:left;margin:0 0 8px;padding:16px;font-size:13px}.qlink.selected{background:var(--mint);border-color:var(--green)}.qlink b{display:block;font-size:10px;color:var(--muted);margin-bottom:7px}.compare{display:grid;gap:14px}.compare>div{padding:16px 20px;border:1px solid var(--line);border-radius:9px}.compare .revised{background:#eff4ec;border-color:#d1dfca}.compare p{font-size:15px;color:var(--ink);margin-bottom:0}.timeline{display:grid;gap:12px}.step{border-left:2px solid #aec5b0;padding:5px 0 12px 20px}.step small{display:block}.planlist{display:grid;gap:12px}.planitem{display:flex;align-items:center;gap:20px;justify-content:space-between}.planitem p{font-size:12px;margin:5px 0}.empty{text-align:center;padding:45px}.resultrow{padding:20px 24px;background:white;border:1px solid var(--line);border-radius:10px;margin:10px 0}footer{display:flex;justify-content:space-between;gap:15px;margin:45px 0 0;padding:20px 0;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}#toast{position:fixed;bottom:22px;left:calc(50% + 100px);transform:translateX(-50%);padding:14px 23px;background:var(--ink);color:white;border-radius:9px;max-width:80vw;font-size:13px;z-index:50}[hidden]{display:none!important}@media(max-width:1150px){main{padding:30px}.grid.three{grid-template-columns:1fr 1fr}.question-workspace{grid-template-columns:240px minmax(0,1fr)}}@media(max-width:900px){#sidebar{width:220px}.shell{margin-left:220px}main{padding:25px}.hero{grid-template-columns:1fr}.heroart{min-height:auto}.stats{grid-template-columns:1fr 1fr}.question-workspace{grid-template-columns:1fr}#qlist{max-height:250px}.filters{grid-template-columns:1fr}.grid.three{grid-template-columns:1fr 1fr}}@media(max-width:700px){#sidebar{transform:translateX(-100%);width:260px;box-shadow:10px 0 40px #0002;transition:transform .15s}#sidebar.open{transform:none}.shell{margin-left:0}#menu{display:block;padding:4px 10px}header{padding:14px 18px}main{padding:25px 18px}.grid,.grid.three{grid-template-columns:1fr}.card{padding:22px}.hero{gap:12px}.stats{gap:9px}.stat{padding:14px 17px}.stat b{font-size:28px}.session-top{align-items:start;flex-wrap:wrap}.question{font-size:23px}.planitem{align-items:start}.sectionhead{align-items:start;flex-wrap:wrap}footer{display:block}#toast{left:50%;max-width:90vw}.modebar select{min-width:0}}

/* v3: original education illustrations and a consistent topic icon set. */
body{background-color:#f6f7f1;background-image:radial-gradient(ellipse at 92% 0%,#dcebe4 0,transparent 42%),radial-gradient(ellipse at 30% 65%,#f4ebd8 0,transparent 48%);background-attachment:fixed}
.ui-icon{width:21px;height:21px;display:block;flex:none}nav a>span{color:#5f8c79}nav a.active>span{color:#1a6753}nav a{gap:12px}.brandmark{box-shadow:0 5px 15px #1a675328;border-radius:13px 13px 13px 3px}
.hero{grid-template-columns:1.08fr 1fr;gap:36px}.heroart{background:linear-gradient(145deg,#e9f1e7,#f4f3e7);border-radius:26px;padding:18px 24px 24px;box-shadow:0 14px 35px #234e3810}.learning-scene{width:100%;height:auto;display:block;margin:-8px 0 4px}.heroart .pathrow{margin:10px 0;gap:6px}.heroart .pathrow span{padding:6px;font-size:11px}.heroart .route-caption{margin:7px 0}.heroart small{font-size:10px}.heroart>.eyebrow{display:block;text-align:center}
.stat{position:relative;overflow:hidden;box-shadow:0 5px 16px #234e3805}.stat:after{content:"";position:absolute;width:57px;height:57px;right:-12px;top:-12px;background:#e3eee5;border:12px solid #f0f5eb;border-radius:50%}.stat:nth-child(2):after{background:#f1ddb9;border-color:#faf2e4}.stat:nth-child(3):after{background:#d8e6ee;border-color:#edf3f7}.stat:nth-child(4):after{background:#e8dbd1;border-color:#f6efea}.stat b,.stat span{position:relative;z-index:1}
.card{box-shadow:0 5px 20px #224f3605}.scenario-card{overflow:hidden;transition:transform .18s,box-shadow .18s}.scenario-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px #224f3610}.scenario-art{height:105px;width:calc(100% + 52px);margin:-26px -26px 21px;padding:22px 28px;background:#e2eee4;color:#487960;position:relative;overflow:hidden;display:flex;align-items:center;gap:24px}.scenario-art:after{content:"";position:absolute;right:-20px;top:-48px;width:150px;height:150px;border:20px solid #ffffff55;border-radius:50%}.scenario-icon{width:53px;height:53px;flex:none;stroke-width:1.2;transform:rotate(-5deg)}.mini-lines{width:60px;height:24px;border-top:3px solid currentColor;border-bottom:3px solid currentColor;opacity:.2;transform:rotate(-5deg)}.art-spark{margin-left:auto;font-size:26px;opacity:.6}.tone-1{background:#f3e8d2;color:#aa8351}.tone-2{background:#e1ebf2;color:#5b8197}.tone-3{background:#eee2dc;color:#a77862}
.illustrated-heading{min-height:215px;border:1px solid #dce6db;border-radius:22px;padding:32px 290px 30px 30px;background:linear-gradient(115deg,#edf3e9,#f8f6ed);position:relative;overflow:hidden}.illustrated-heading h1{font-size:clamp(30px,3.1vw,44px)}.illustrated-heading p{margin-bottom:0;color:#526c5d}.topic-art{position:absolute;width:230px;height:200px;right:18px;top:50%;transform:translateY(-50%);pointer-events:none}.art-orbit{position:absolute;inset:8px 17px;border-radius:50%;background:#dce9dc;border:1px dashed #a7bfa8;transform:rotate(-20deg)}.art-paper{position:absolute;inset:30px 56px 34px 54px;background:#fffcf3;box-shadow:8px 10px 0 #91b49c40;border:1px solid #d7dfcc;border-radius:14px;transform:rotate(-9deg);display:grid;place-items:center}.art-icon{width:70px;height:70px;color:#42745b;stroke-width:1.2}.art-dot{position:absolute;right:28px;top:21px;width:27px;height:27px;border-radius:50%;background:#dcb776;box-shadow:-162px 127px 0 -7px #81a995}.art-book{position:absolute;right:25px;bottom:28px;width:71px;height:18px;border-radius:3px;background:#d7b478;border-bottom:5px solid #fff8e5;transform:rotate(9deg);box-shadow:0 8px 0 #739785}.plan-icon{color:#557d63;background:#edf3e9;border-radius:13px;padding:14px;flex:none}.plan-icon .ui-icon{width:28px;height:28px}.planitem>div{flex:1}.planitem:nth-child(2n) .plan-icon{background:#f4ebda;color:#96764d}.planitem button{flex:none}
@media(max-width:1100px){.hero{grid-template-columns:1fr}.heroart{max-width:620px}.learning-scene{max-height:230px}.illustrated-heading{padding-right:220px}.topic-art{right:-15px;transform:translateY(-50%) scale(.85)}}
@media(max-width:700px){.heroart{width:100%;padding:16px}.learning-scene{max-height:210px}.scenario-art{width:calc(100% + 44px);margin:-22px -22px 18px}.illustrated-heading{padding:25px 22px 180px;min-height:0}.topic-art{top:auto;bottom:-12px;right:8px;transform:scale(.85);transform-origin:bottom right}.planitem{gap:12px;flex-wrap:wrap}.planitem>div{flex-basis:65%}.planitem button{margin-left:0}.hero h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){.scenario-card,#sidebar{transition:none}.scenario-card:hover{transform:none}}

/* v4: seven original school scenario illustrations */
.scenario-art{height:auto;min-height:105px;padding:0;display:block;background:#edf3e9}.scenario-art:after{display:none}.scenario-art img{display:block;width:100%;height:auto;aspect-ratio:500/180;object-fit:cover}

.coaching{border-top:1px solid #bdd0bc;margin-top:20px;padding-top:18px}.reflection{background:#ffffff9c;border-left:3px solid #b59660;border-radius:6px;padding:15px 18px;margin:18px 0}.reflection p{margin:6px 0}.variant-explanation{padding:18px 0;border-bottom:1px solid var(--line)}.variant-explanation>b{font-size:13px}.variant-review{margin-bottom:18px}

.button-link{display:inline-block;padding:11px 15px;border-radius:8px;text-decoration:none}.button-link.primary{background:var(--green);color:white}.exam-nav{background:#f1e5c9;color:#715724;font-weight:700}.exam-nav.active{background:#175d4b;color:white}
