:root{color-scheme:light;--ink:#183744;--muted:#526970;--sea:#176c65;--line:#d6e2e2;--navy:#102d3d;--gold:#f5cb88;--mint:#91e5d4;font-family:Tahoma,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 10% 15%,#21566c,transparent 55%),#102d3d;color:#edf8f5;font-size:17px;line-height:1.85}button,input,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{border:0;border-radius:13px;min-height:48px;padding:12px 21px;background:var(--sea);color:#fff;font-weight:700;cursor:pointer}button:disabled{cursor:default;opacity:.5}button:hover:not(:disabled){filter:brightness(1.06)}:focus-visible{outline:3px solid #cc7b2e;outline-offset:4px}a{color:inherit}header{max-width:1200px;margin:auto;padding:25px 30px;display:flex;align-items:center;gap:28px}.brand{text-decoration:none;color:var(--mint);font-size:36px;font-weight:900;line-height:1.2}.brand span{display:block;color:#c8dadc;font-size:11px;margin-top:9px;font-weight:400}.course{font-size:16px}.course span{display:block;color:#b7cfd7;font-size:13px}.edition{margin-inline-start:auto;font-size:12px;color:#cae1e5;border:1px solid #7e9daa55;border-radius:30px;padding:7px 15px}main{max-width:1200px;margin:auto;padding:10px 30px 0}.layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:34px;align-items:start}.rail{padding:17px 0}.mission-number{font-size:12px;color:#b5d2d7}.rail h1{font-size:40px;line-height:1.35;margin:10px 0 0;color:var(--gold)}.harbor-art{margin:12px 0 0}.harbor-art svg{display:block;width:100%;max-height:190px}.harbor-art span{display:block;color:#afccd0;text-align:center;font-size:12px}.mission-brief{font-size:14px;line-height:1.9;color:#c4d8de}.path{list-style:none;padding:0;margin:24px 0;display:grid;gap:12px}.path li{display:flex;align-items:center;gap:11px;font-size:13px;color:#bdd0d8}.node{width:30px;height:30px;border:1px solid #78939f;border-radius:10px;display:grid;place-items:center;flex:none;font:14px Arial}.path .active{color:var(--gold);font-weight:bold}.active .node{background:var(--gold);color:var(--navy);border-color:var(--gold)}.done .node{background:#1f635f;color:var(--mint);border-color:#91e5d477}.side-points{border-top:1px solid #78939f66;padding-top:16px;color:var(--gold);font-size:15px}.side-points small{display:block;font-size:11px;color:#bcd1d4}.surface{color:var(--ink);background:#f7faf6;border-radius:25px;border-top:5px solid #a3dec7;padding:32px;box-shadow:0 18px 55px #05162438;min-width:0}.surface h1{font-size:39px;line-height:1.35;margin:10px 0 16px;letter-spacing:-.7px}.surface h2{font-size:28px;line-height:1.55;margin:6px 0 18px}.surface h3{font-size:19px;margin:0 0 10px;line-height:1.65}.surface p{margin:12px 0}.eyebrow{font-size:12px;color:#176c65;font-weight:700;letter-spacing:.4px}.subtitle{font-size:17px;color:var(--muted)}.start-route{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:24px 0;font-size:12px}.start-route span{background:#e8f1eb;padding:7px 12px;border-radius:10px}.start-route i{font-style:normal;color:#859f9f}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{display:block;font-size:14px;font-weight:bold;margin:0 0 8px}.field input{width:100%;min-height:51px;padding:12px 14px;background:white;border:1px solid #b5cecb;border-radius:12px;color:var(--ink);outline-color:var(--sea)}.calm-note{font-size:13px;background:#eaf0ea;border-radius:12px;padding:13px 15px;color:#4a645f}.launch{width:100%;display:flex;align-items:center;justify-content:space-between;margin:20px 0 5px;box-shadow:0 4px 0 #0a4e49;font-size:18px}.launch span{font-size:26px}.math,.equation{direction:ltr;unicode-bidi:isolate;font-family:Arial,Tahoma,sans-serif}.math{display:inline-block}.equation{padding:18px 12px;margin:19px 0;text-align:center;background:#e6f0eb;border:1px solid #bad7ca;border-radius:15px;font-size:25px;overflow-wrap:anywhere;line-height:1.5}.prompt{font-size:22px;font-weight:700;line-height:1.85}.progressline{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.progress{height:7px;background:#dce7e3;border-radius:8px;overflow:hidden;margin:13px 0 24px}.progress div{height:100%;background:#247d6d}.options{display:grid;gap:12px;margin:20px 0}.option{display:flex;align-items:center;gap:14px;text-align:right;background:#fff;border:1px solid #c9dcd6;color:var(--ink);border-radius:14px;box-shadow:0 3px 0 #e0e8e1;padding:14px 17px;min-height:63px;font-weight:500}.option>span:last-child{min-width:0;overflow-wrap:anywhere}.option.selected{background:#e2f2e8;border:2px solid #176c65;padding:13px 16px;box-shadow:0 3px 0 #176c65}.option:disabled{opacity:1}.letter{width:32px;height:32px;background:#eef4ef;color:#57706c;border-radius:9px;display:grid;place-items:center;flex:none;font-size:13px}.option.selected .letter{background:#176c65;color:white}.actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:24px}.actions button{flex:1}.secondary{background:#ddece4;color:var(--ink)}.ghost{background:transparent;color:var(--sea);border:1px solid #bad1c7;font-weight:500}.small{font-size:12px;min-height:40px;padding:8px 12px}.danger{color:#ad3e38;background:#fff1ef;border-color:#e1aaa4}.tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.session-options{font-size:12px}.session-options summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#526e69}.saving{font-size:11px;line-height:1.8;color:#60746f}.saving p{margin:8px 0}.muted{color:var(--muted);font-size:14px}.callout{background:#e9f2e9;border:1px solid #caddc8;border-radius:14px;padding:16px;margin:18px 0;font-size:14px}.callout.warn{background:#fff1d8;border-color:#e5ca98}.skill-summaries{display:grid;gap:10px;margin:20px 0}.skill-summaries article{display:flex;justify-content:space-between;align-items:center;gap:12px;background:white;border:1px solid #d4e0d8;border-radius:13px;padding:12px 15px}.skill-summaries small{display:block;color:var(--muted);font-size:12px}.skill-summaries bdi{font-family:Arial,sans-serif;font-size:23px;white-space:nowrap;color:var(--sea)}.module{background:white;border:1px solid #d7e3dc;border-radius:14px;margin:18px 0;padding:18px}.module ol{padding-inline-start:22px;margin:0}.module li{margin-bottom:10px;font-size:15px}.module p{font-size:16px}.pill{display:inline-block;font-size:11px;padding:4px 10px;border-radius:18px;background:#e3f1e9;color:#176c65}.lab{background:#163b49;color:#e6f5f3;border-radius:16px;padding:19px;margin:22px 0}.lab .eyebrow{color:#99dece}.lab-controls{display:flex;flex-wrap:wrap;gap:8px}.lab-controls button{font-size:12px;background:#28515e;border:1px solid #638a92;padding:8px 12px;min-height:44px}.lab-controls button[aria-pressed=true]{background:#91e5d4;color:#102d3d}.lab-output{font-size:14px;margin-top:15px;min-height:50px}.lab-output .equation{font-size:21px}.feedback{border:2px solid #41966c;border-radius:14px;padding:18px;margin-top:20px;background:#e1f4e6}.feedback.incorrect{border-color:#cb766f;background:#fff0ec}.feedback h3{color:#176b4e}.feedback.incorrect h3{color:#a23d38}.feedback p{font-size:15px}.review{margin:22px 0}.review details{background:#fff;border:1px solid #d9e3dc;padding:12px 14px;border-radius:12px;margin:10px 0;font-size:14px}.review summary{cursor:pointer;min-height:40px;line-height:1.85}.reveal-answer{color:#14634b;font-weight:bold}.badge{background:#163b49;border-radius:16px;color:#f9d595;padding:20px;margin:18px 0}.badge strong{display:block;font-size:23px}.badge span{display:block;color:#d8e9e7;font-size:14px;margin-top:7px}.scoregrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.score{padding:15px 9px;border:1px solid #c8dad1;border-radius:14px;text-align:center;background:#fff}.score>span{display:block;font-size:12px}.score b{display:block;font-size:28px;line-height:1.8;color:var(--sea)}.score small{font-size:12px;color:var(--muted)}.growth-note{font-size:14px;background:#e5f0e9;padding:14px;border-radius:12px}.result-skills{display:grid;gap:16px;margin:22px 0}.result-skills article{background:#fff;border:1px solid #cadbd1;border-radius:15px;padding:18px}.result-skills p{font-size:14px}.result-skills small{color:var(--muted);font-size:12px}.skill-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.skill-numbers>div{background:#f0f5ef;border-radius:10px;text-align:center;padding:8px 4px;min-width:0}.skill-numbers span,.skill-numbers small{display:block;font-size:11px}.skill-evidence{font-weight:bold;color:var(--sea)}.author{padding:25px 15px 35px;text-align:center;color:#d9e6de;font-size:13px}#notice{position:fixed;bottom:15px;inset-inline:15px;max-width:650px;margin:auto;background:#153945;color:white;border:1px solid #8bcebc;border-radius:13px;padding:14px 20px;display:none;font-size:14px;z-index:20}#notice.show{display:block}dialog{max-width:min(90vw,500px);border:0;border-radius:20px;padding:25px;color:var(--ink);direction:rtl}dialog::backdrop{background:#10232dbb}.print-only,.wrapcode{display:none}.empty-note{padding:22px}.question-code{display:none}noscript{display:block;text-align:center;padding:20px}
@media(max-width:850px){header{padding:20px 20px;gap:20px}main{padding:0 18px}.layout{grid-template-columns:1fr;gap:15px}.rail{padding:5px 4px;display:grid;grid-template-columns:1fr auto;gap:9px}.rail h1{font-size:27px;margin:0}.mission-number{grid-column:1/-1}.harbor-art,.mission-brief{display:none}.side-points{grid-column:2;grid-row:2;padding:0;border:0;font-size:12px;align-self:center}.side-points small{display:none}.path{display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1;margin:5px 0 8px}.path li{gap:4px;font-size:10px}.node{width:23px;height:23px;font-size:11px;border-radius:7px}.edition{display:none}.surface{padding:26px}}
@media(max-width:540px){body{font-size:16px}header{padding:18px 17px;justify-content:space-between;gap:12px}.brand{font-size:30px}.brand span{font-size:10px}.course{text-align:left;font-size:13px}.course span{font-size:11px;max-width:170px}main{padding:0 11px}.surface{border-radius:19px;padding:23px 17px}.surface h1{font-size:34px}.surface h2{font-size:25px}.rail h1{font-size:24px}.side-points{font-size:11px}.formgrid{grid-template-columns:1fr;gap:12px}.prompt{font-size:20px}.equation{font-size:24px;padding:17px 8px}.option{padding:13px 12px;font-size:16px;gap:11px}.option.selected{padding:12px 11px}.actions{gap:9px}.actions button{flex-basis:100%;font-size:15px}.start-route{font-size:11px;gap:5px}.start-route i{display:none}.start-route span{padding:5px 7px}.scoregrid{grid-template-columns:1fr;gap:8px}.score{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 13px}.score b{font-size:25px}.score span{font-size:11px}.result-skills article{padding:14px}.skill-summaries article{padding:11px}.skill-summaries strong{font-size:14px}.badge strong{font-size:22px}.lab{padding:16px}.lab-controls button{flex:1;min-width:90px}.path li{font-size:10px}.path{gap:7px}.tools{gap:9px}.author{font-size:12px}}
@media(prefers-reduced-motion:no-preference){.surface{animation:arrive .18s ease-out}@keyframes arrive{from{opacity:.75;transform:translateY(3px)}to{opacity:1;transform:none}}}
@media print{@page{size:A4;margin:13mm}body{background:white;color:#15352e;font-size:11px;line-height:1.65}header{padding:0 0 12px;color:#15352e}.brand{font-size:23px;color:#146854}.brand span,.course span{color:#526970}.edition,.rail,.actions,.tools,.saving,#notice,.no-print,.lab,dialog{display:none!important}main{max-width:none;margin:0;padding:0}.layout{display:block}.surface{border:0;box-shadow:none;padding:0;background:white}.surface h1,.surface h2{font-size:21px}.surface h3{font-size:15px}.surface p{font-size:11px;margin:7px 0}.badge{background:#f3f5f2;border:1px solid #9fbbab;padding:10px;color:#15352e}.badge strong{font-size:18px}.badge span{color:#15352e;font-size:11px}.scoregrid{display:grid;grid-template-columns:repeat(3,1fr)}.score{display:block;padding:8px}.score b{font-size:23px}.score span,.score small{font-size:10px}.result-skills{gap:10px;margin:14px 0}.result-skills article{padding:11px;break-inside:avoid}.skill-numbers{grid-template-columns:repeat(3,1fr)}.callout{font-size:11px;padding:10px;break-inside:avoid}.growth-note{font-size:11px}.print-only{display:block}.wrapcode{display:block;direction:ltr;unicode-bidi:isolate;overflow-wrap:anywhere;font-size:9px!important}.author{color:#15352e;font-size:11px;padding:15px 0}.badge,.score{break-inside:avoid}}
[tabindex="-1"]:focus{outline:none}
