:root{--ink:#122d38;--green:#12604f;--gold:#bd701b;--muted:#566976;--line:#dce4e8;--paper:#f3f6f8}*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,sans-serif;color:var(--ink);background:var(--paper)}header{padding:24px 5%;display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid var(--line)}a{color:var(--green)}.brand{text-decoration:none;color:var(--ink)}.brand b{font-size:24px;letter-spacing:2px}.brand b span{font-weight:400}.brand small{display:block;font-size:13px}.pill,.tag{font-size:12px;letter-spacing:1.5px;font-weight:700}.pill{border:1px solid var(--line);padding:8px 14px;border-radius:30px}.tag{color:var(--gold)}main{max-width:1180px;margin:auto;padding:42px 28px;min-height:75vh}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-size:clamp(38px,5vw,68px);line-height:1.12;font-weight:400;letter-spacing:-1.5px;margin-bottom:22px}h2{font:400 32px/1.2 Georgia,serif}h3{font-size:20px}p{color:var(--muted)}.intro{max-width:750px;margin-bottom:32px}.intro p{max-width:650px;font-size:18px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:30px}.path{position:relative;overflow:hidden}.path:first-child{background:var(--ink);color:white;border:0}.path:first-child p{color:#cedee4}.path .number{font:400 62px Georgia,serif;color:var(--gold);margin:5px 0 22px}.path h2{margin-bottom:14px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.chips span{padding:5px 10px;border:1px solid #73838b66;border-radius:6px;font-size:14px}button{font:600 16px system-ui;cursor:pointer;border:0;border-radius:8px;padding:14px 20px;background:var(--green);color:white;min-height:48px}button:hover{filter:brightness(1.1)}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.path:first-child button{background:#e8ac60;color:var(--ink)}button.secondary{background:white;color:var(--ink);border:1px solid var(--line)}.small{font-size:14px}.note{margin-top:22px;font-size:14px}.topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:16px}.topline h2{margin:0;font-size:26px}.progress{height:5px;background:var(--line);margin:16px 0 30px;border-radius:10px}.progress div{height:100%;background:var(--gold);transition:width .3s}.workspace{display:grid;grid-template-columns:1fr 290px;gap:24px;align-items:start}.scenario h1{font-size:40px;line-height:1.2;letter-spacing:-.6px;margin:16px 0}.scenario>p{font-size:18px}.choices{display:grid;gap:12px}.choice{text-align:left;background:white;border:1px solid var(--line);color:var(--ink);font-weight:400;width:100%;display:flex;gap:16px;align-items:center}.choice:hover{border-color:var(--green);background:#edf7f3}.choice b{background:var(--paper);border-radius:6px;padding:7px 12px;font-size:14px}.choice:disabled{opacity:.5;cursor:not-allowed}.stats{background:var(--ink);color:white}.stats p{color:#bdd1d8}.stat{border-top:1px solid #ffffff24;padding:18px 0}.stat strong{font-size:26px;font-weight:500;display:block}.stat small{color:#c4d4da}.feedback{padding:24px;background:#edf7f3;border:1px solid #b5d5c8;border-radius:12px;margin-top:24px}.feedback p{color:var(--ink)}.feedback h3{color:var(--green);margin-bottom:8px}.delta{display:flex;gap:10px;flex-wrap:wrap;font-size:14px;margin-bottom:18px}.delta span{background:white;padding:6px 10px;border-radius:6px}.history{padding-left:20px}.history li{padding:12px 0;border-bottom:1px solid var(--line)}.history b{display:block}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.result{max-width:780px}.result h1{font-size:48px}.result .metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.metric{background:white;border:1px solid var(--line);padding:18px;border-radius:12px}.metric strong{display:block;font-size:24px}.lesson{margin-bottom:20px}footer{max-width:1180px;margin:auto;padding:24px 28px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}@media(max-width:760px){header{padding:18px 22px}.pill{display:none}main{padding:28px 20px}.grid,.workspace{grid-template-columns:1fr}.stats{display:grid;grid-template-columns:repeat(3,1fr);padding:16px;gap:12px}.stats h3,.stats>p{grid-column:1/-1;margin-bottom:0}.stat{padding:12px 0}.stat strong{font-size:20px}.scenario h1{font-size:32px}.card{padding:22px}.result .metrics{grid-template-columns:1fr}.topline{align-items:start}.topline h2{font-size:23px}.topline button{padding:10px;font-size:14px}footer{flex-direction:column;gap:6px}.brand b{font-size:21px}}@media print{header,footer,button{display:none}main{padding:0}.result{max-width:none}.card{break-inside:avoid}}
.character-label{display:block;font-size:14px;margin:16px 0 6px;color:#d2e2e6}select{font:16px system-ui;background:#fff;color:var(--ink);padding:12px;border:1px solid var(--line);border-radius:8px;min-height:48px;margin-right:10px;margin-bottom:12px}.last-choice{font-size:14px!important;border-left:3px solid var(--gold);padding-left:12px}.goal{grid-column:1/-1;border:1px solid #ffffff38;padding:16px;border-radius:10px;margin:10px 0}.goal small{display:block;color:#c4d4da}.goal strong{font-size:20px}.goal .progress{margin:12px 0 0;background:#ffffff28}
.scoreboard{display:flex;flex-direction:column;gap:4px;padding:12px 0;border-bottom:1px solid #ffffff24;grid-column:1/-1}.scoreboard span{font-size:22px;color:#f2bb72;font-weight:600}.scoreboard small{font-size:14px;color:#c4d4da}.quiz{margin-top:24px;padding-top:24px;border-top:2px solid var(--gold);scroll-margin-top:20px}.quiz h2{font-family:system-ui;font-weight:600;font-size:24px;line-height:1.4;margin-top:12px}.retry{background:#fff7e8;border-color:#e8c88a}.retry h3{color:#875016}.streak{font-weight:700;color:var(--green)}summary{cursor:pointer;font-weight:600;color:var(--green);padding:12px 0}.quiz-choice:disabled{opacity:.65}@media print{details{display:block}}
.header-links{display:flex;align-items:center;gap:20px}.header-links nav{display:flex;gap:6px}.header-links nav a{font-size:14px;text-decoration:none;padding:8px 10px;border-radius:6px}.header-links nav a[aria-current]{background:var(--ink);color:white}@media(max-width:420px){header{gap:10px;padding:18px 16px}.brand small{max-width:200px;font-size:12px}.header-links{gap:0}.header-links nav a{padding:7px}}
