:root{--navy:#102b3b;--ink:#183443;--muted:#546873;--teal:#137c81;--mint:#d8f4ec;--coral:#e26c50;--cream:#fbf7ef;--gold:#f0ba63;--line:#d6e4e6;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:18px/1.48 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.skip{position:absolute;left:-999px;top:0;background:#fff;padding:12px;z-index:10}.skip:focus{left:12px}.masthead{display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--navy);color:#fff;padding:14px max(24px,4vw)}.brand{display:flex;align-items:center;gap:13px;font-size:16px;font-weight:800;letter-spacing:.02em}.brand small{display:block;color:#bbd9dd;font-weight:500;font-size:12px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--coral);font-weight:900}.status{display:flex;align-items:center;gap:20px;font-variant-numeric:tabular-nums}.pill{font-size:10px;letter-spacing:.13em;border:1px solid #8dbdc1;border-radius:30px;padding:5px 9px;color:#d3edf0}.progress{height:5px;background:#d3e1e2}.progress span{display:block;height:100%;width:0;background:var(--teal);transition:width .25s}main{width:min(1180px,calc(100% - 40px));min-height:calc(100vh - 202px);margin:24px auto 12px;padding:clamp(22px,4vw,50px);background:#fff;border:1px solid var(--line);box-shadow:0 15px 45px #16323a12;border-radius:26px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900;color:var(--teal);margin:0 0 15px}.slide-title{font-family:Georgia,"Times New Roman",serif;line-height:1.05;letter-spacing:-.04em;font-size:clamp(38px,5vw,68px);margin:0 0 18px;max-width:1000px}.lead{font-size:clamp(20px,2.2vw,27px);line-height:1.35;max-width:900px;margin:0 0 28px}.layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.72fr);gap:clamp(22px,3vw,38px);align-items:start}.visual{min-height:320px;background:linear-gradient(145deg,#f1f9f8,#edf2f7);border:1px solid var(--line);border-radius:23px;padding:clamp(20px,3vw,36px);position:relative;overflow:hidden}.visual.dark{background:linear-gradient(145deg,#173e4e,#112b3c);color:#fff}.side{border-left:4px solid var(--gold);padding:0 0 0 22px}.side h2,.question h2{font-size:14px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 9px;color:var(--teal)}.side p{margin:0 0 18px}.question{background:#fff5e6;border:1px solid #ecd7b5;border-radius:18px;padding:20px;margin:20px 0 0}.question p{font-weight:700;margin:0}.source{font-size:13px;color:var(--muted);margin:28px 0 0}.transcript{margin-top:22px;border-top:1px solid var(--line);padding-top:14px}.transcript summary{cursor:pointer;color:var(--teal);font-weight:750}.transcript p{max-width:850px;color:#425a67}.control-bar{position:static;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;background:var(--navy);color:#fff;padding:10px max(20px,4vw);z-index:5}.nav-controls,.audio-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.control-bar button{border:1px solid #92bcc0;border-radius:10px;background:#fff;color:var(--navy);font-size:14px;font-weight:800;min-height:44px;padding:8px 13px}.control-bar button:hover{background:var(--mint)}.control-bar button:disabled{opacity:.42;cursor:not-allowed}.control-bar #reveal{background:var(--gold);border-color:var(--gold)}#audio-status{min-width:92px;color:#c7e4e6;font-size:12px}.footnote{color:#63737c;text-align:center;font-size:11px;padding:10px 25px 22px}.steps{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:210px}.node{flex:1;border:2px solid #91bec0;background:#fff;border-radius:18px;padding:20px 10px;text-align:center;font-weight:800;position:relative}.node strong{display:block;font-size:clamp(22px,3vw,37px);color:var(--navy)}.node small{display:block;margin-top:6px;font-size:12px;color:var(--muted)}.arrow{color:var(--coral);font-size:36px;font-weight:900;transition:transform .35s}.stage{opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .45s,transform .45s,visibility .45s}.stage.on{opacity:1;visibility:visible;transform:none}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.score-card{background:#fff;border:2px solid #c0dadd;border-radius:16px;padding:18px;text-align:center;transition:transform .6s,border-color .4s}.score-card.winner{border-color:var(--coral);transform:translateY(-10px);box-shadow:0 10px 20px #243e4b22}.score-card strong{display:block;font-size:27px}.score-card span{font-size:13px}.tag{display:inline-block;background:var(--mint);color:#075e62;padding:4px 10px;border-radius:30px;font-size:12px;font-weight:850}.formula{font:700 clamp(24px,3vw,34px)/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--navy);background:#fff;border-radius:14px;padding:18px;text-align:center}.demo-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}.demo-row label{font-weight:800}.demo-row input{width:100%;accent-color:var(--teal)}.demo-row output{font-weight:900;color:var(--teal);font-size:23px}.test-result{min-height:56px;font-weight:800;font-size:21px;padding:12px 0}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:stretch;margin:20px 0}.flow .node{display:grid;place-items:center;min-height:125px;padding:12px}.flow .node strong{font-size:20px}.flow .node small{font-size:11px}.muted-note{font-size:13px;color:var(--muted)}.statement{font:700 clamp(24px,3vw,38px)/1.25 Georgia,serif;color:var(--navy);padding:22px;background:#fff;border-radius:15px}.contrast{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contrast>div{border-radius:18px;background:#fff;padding:20px;border:2px solid #d8e4e5}.contrast h3{font-size:17px;margin:0 0 8px}.contrast p{margin:0}.contrast .weak{border-color:#e9b7ab}.contrast .strong{border-color:#81c8bf}.mini-table{width:100%;border-collapse:collapse;font-size:16px}.mini-table th,.mini-table td{padding:10px;border-bottom:1px solid #cfdddd;text-align:left}.mini-table th{background:#e3f2ef}.task-list{margin:0;padding-left:22px}.task-list li{margin:9px 0}.prompt-box{background:#e8f4f2;border-left:5px solid var(--teal);border-radius:12px;padding:17px 20px;font-weight:700}.link-button{display:inline-block;margin-top:14px;color:#075f65;font-weight:800}.check-options{display:grid;gap:10px}.check-options button{text-align:left;border:2px solid #b9d2d4;border-radius:12px;padding:12px 16px;background:#fff;color:var(--ink);font-size:16px}.check-options button:hover{background:#e7f5f2}.check-options button[data-result=right]{border-color:#1c9679;background:#e4f7ec}.check-options button[data-result=wrong]{border-color:#cc6c57;background:#fff0e9}.feedback{min-height:28px;font-weight:700;color:#294f57}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:850px){main{width:calc(100% - 20px);margin:10px auto;border-radius:15px;padding:23px}.layout{grid-template-columns:1fr}.side{border-left:0;border-top:4px solid var(--gold);padding:16px 0 0}.visual{min-height:250px}.control-bar{position:static}.steps{flex-wrap:wrap}.node{min-width:90px}.flow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){body{font-size:16px}.masthead{padding:10px 15px}.pill{display:none}.slide-title{font-size:37px}.score-grid{grid-template-columns:1fr}.score-card.winner{transform:none}.contrast{grid-template-columns:1fr}.control-bar{padding:10px}.nav-controls,.audio-controls{width:100%}.control-bar button{flex:1}.arrow{font-size:23px}.steps{gap:5px}.node{min-width:75px;padding:12px 5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.stage{transform:none}.score-card.winner{transform:none}}
@media print{body{background:#fff}main{box-shadow:none;border:0;width:100%;margin:0;min-height:0}.control-bar,.progress,.skip{display:none}.stage{opacity:1;visibility:visible;transform:none}.masthead{background:#fff;color:#000;border-bottom:1px solid #aaa}.brand small,.pill{color:#333}.transcript{display:block}.footnote{color:#333}}

.response{margin-top:18px}.response label{display:block;font-weight:750;font-size:15px}.response textarea{width:100%;min-height:88px;font:inherit;border:1px solid #8eafb4;border-radius:10px;padding:12px;background:#fff}.response small{display:block;color:var(--muted);font-size:12px}.task-meta{font-size:13px;color:var(--muted);margin:10px 0}.mini-table{table-layout:fixed}.mini-table td,.mini-table th{overflow-wrap:anywhere}.timeline{display:grid;gap:12px}.timeline div{padding:18px;border-left:5px solid var(--teal);background:#fff;font-size:22px}.ranking-bar{height:18px;background:var(--teal);border-radius:9px;margin:12px 0}.vis-caption{font-size:14px}.source a{overflow-wrap:anywhere}button,a,textarea,select{touch-action:manipulation}.control-bar select{max-width:100%;font:inherit;font-size:14px;min-height:44px;border-radius:8px}.score-card strong{font-variant-numeric:tabular-nums}main:focus{outline:none}@media print{.response{display:none}.transcript{display:block}.slide-title{font-size:32px}}

@media(min-width:900px){.presenter .response,.presenter .transcript{display:none}.presenter main{width:min(1440px,calc(100% - 48px))}.presenter .layout{grid-template-columns:minmax(0,1.4fr) minmax(340px,1fr)}.presenter .side,.presenter .question p{font-size:23px}.presenter .mini-table{font-size:23px}.presenter .vis-caption,.presenter .task-meta{font-size:18px}.presenter .node small,.presenter .score-card span{font-size:18px}}
