@import url("/theme.css");
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#23344c;background:#f4f6fa;--navy:#172942;--muted:#63718a;--line:#e0e6ee;--teal:#14796b;--mint:#dff2eb;--orange:#9a5a14}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.6}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b780dd;outline-offset:3px}.skip{position:absolute;top:-80px;background:#fff;padding:12px;z-index:10}.skip:focus{top:0}.top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px max(24px,calc((100vw - 1180px)/2));background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:22px;font-weight:800;letter-spacing:-.7px;line-height:1.2}.brand small{display:block;font-size:8px;letter-spacing:2px;color:var(--muted);margin-top:5px}.logo{background:var(--navy);color:white;border-radius:11px;padding:8px 12px;font-size:27px}.logo>span{color:#7fd7bd}nav{display:flex;gap:5px}nav button{border:0;background:none;color:var(--muted);font-weight:650;border-radius:9px;padding:10px 15px}nav button.active{background:#e9eff9;color:#233f6f}.sandbox,.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:800}.sandbox{border:1px solid #d4e2da;background:#f3faf5;color:#357a61;padding:6px 10px;border-radius:30px;white-space:nowrap}.notice{max-width:1180px;margin:20px auto 0;border-left:3px solid #97b6ce;background:#eaf0f6;padding:10px 15px;color:#4d6076;font-size:12px}main{max-width:1180px;margin:34px auto 60px;min-height:55vh;outline:none}.heading{margin-bottom:27px}.eyebrow{color:var(--teal)}h1{font-size:clamp(28px,3.6vw,44px);line-height:1.13;letter-spacing:-1.3px;margin:9px 0 12px;font-weight:750}h2{font-size:21px;letter-spacing:-.5px;line-height:1.3;margin:0 0 14px}h3{font-size:17px;line-height:1.4}.heading p{font-size:15px;color:var(--muted);margin:0;max-width:790px}.hero{display:flex;justify-content:space-between;gap:40px;padding:34px 42px;border-radius:19px;background:linear-gradient(115deg,#172d48,#244b64);color:white;overflow:hidden}.hero .eyebrow{color:#9fe2d1}.hero h2{font-size:34px;letter-spacing:-1px;margin:16px 0}.hero p{color:#d0e0e8;max-width:450px}.hero-note{display:inline-block;margin-top:16px;font-size:12px;color:#bbd8df}.hero-art{display:flex;flex-direction:column;justify-content:center;gap:10px;position:relative;min-width:270px;transform:rotate(-5deg);padding:10px 20px}.hero-art span{display:block;background:#ffffff0e;border:1px solid #ffffff32;border-radius:9px;padding:12px 23px;letter-spacing:2px;font-size:12px}.hero-art b{position:absolute;right:-5px;bottom:5px;background:#b9e5d0;color:#14493a;padding:12px 25px;border-radius:22px;font-size:45px;transform:rotate(10deg)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:28px 0 18px}.section-head h2{margin:0}.section-head>span{font-size:12px;color:var(--muted)}.panel{padding:27px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 5px 14px #1b355207;min-width:0}.tracks{display:grid;grid-template-columns:1fr 1fr;gap:22px}.track{position:relative;padding-top:30px}.track-icon{display:grid;place-items:center;width:45px;height:45px;background:#f0f2fd;color:#626a98;border-radius:13px;font-size:25px;margin-bottom:20px}.tag{display:inline-block;vertical-align:middle;background:var(--mint);color:#286757;border-radius:20px;padding:4px 9px;font-weight:700;font-size:10px;letter-spacing:.3px;white-space:nowrap}.tag.amber{background:#fff0d9;color:#845615}.track>.tag{position:absolute;right:25px;top:30px}.track h2{font-size:25px;margin-bottom:7px}.track p{color:var(--muted)}.meta{display:flex;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px;margin:18px 0 22px;color:var(--muted);font-size:12px}.primary,.secondary,.light,.danger,.flagged,.text-button{padding:10px 16px;border-radius:9px;font-weight:650;line-height:1.4;min-height:40px}.primary{border:1px solid var(--navy);background:var(--navy);color:#fff}.primary:hover{background:#284b6c}.secondary{border:1px solid #cbd6e3;background:white;color:#334f70}.light{border:0;background:#d9efe6;color:#1d4d40}.text-button{border:0;background:transparent;color:var(--teal)}.danger{border:1px solid #eccdc6;background:#fff6f3;color:#924537}.flagged{border:1px solid #d8b878;color:#78501e;background:#fff3da}.full{width:100%}.history{margin-top:25px}.history .section-head{margin-top:0}.history-row{display:flex;align-items:center;gap:20px;padding:15px 0;border-top:1px solid var(--line)}.history-row>div{flex:1}.history-row small{display:block;color:var(--muted);font-size:12px}.muted{color:var(--muted)}.study-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:23px;align-items:start}.lesson-text{white-space:pre-wrap;overflow-wrap:anywhere;color:#455670;font-size:15px;line-height:1.85}.readiness h2{margin-top:10px}.readiness ul{padding-left:20px;color:var(--muted)}.readiness li{margin-bottom:10px}.callout,.studio-notice{padding:14px;border-radius:10px;background:#edf2f9;color:#425773;font-size:12px}.ack{display:flex!important;gap:10px;align-items:flex-start;margin:20px 0!important;font-size:13px!important;color:#405570}.ack input{margin:4px 0 0!important;width:17px!important;height:17px;flex-shrink:0;accent-color:var(--teal)}.exam-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.exam-top h1{font-size:28px;margin-bottom:0}.timer{display:flex;flex-direction:column;align-items:center;padding:12px 25px;border:1px solid var(--line);background:#fff;border-radius:12px;min-width:170px}.timer>span{font-size:9px;letter-spacing:1.4px;color:var(--muted)}#clock{font-variant-numeric:tabular-nums;font-size:29px;letter-spacing:1px}.timer small{font-size:10px;color:var(--muted)}#clock.urgent{color:#ad482e}.exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:22px;align-items:start}.question-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);margin-bottom:28px}.question h2{font-size:23px;line-height:1.4}.answers{border:0;padding:0;margin:25px 0;display:grid;gap:12px;min-width:0}.answer{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:11px;padding:16px;cursor:pointer;overflow-wrap:anywhere}.answer.chosen{border-color:#53a692;background:#f1faf6}.answer input{accent-color:var(--teal);width:17px;height:17px;flex-shrink:0}.letter{color:var(--muted);font-size:12px;font-weight:700}.question-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:11px}.question-tools>span{margin-left:auto;color:var(--teal)}.question-footer{display:flex;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:22px;margin-top:25px}.navigator h2{font-size:17px}.navigator p{font-size:12px;color:var(--muted)}.number-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.number{border:1px solid #d0dbe6;border-radius:9px;background:#fff;position:relative;padding:10px 0;color:#3a5572;font-weight:750}.number.answered{background:#dfeee8;border-color:#93b9aa;color:#25533f}.number.current{outline:2px solid #365a86;outline-offset:2px}.number sup{position:absolute;top:-9px;right:1px;color:#a6670b}.legend,.hint{font-size:11px!important;color:var(--muted)}.review-summary{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:#eff4f9;border-radius:9px;padding:16px;margin-bottom:18px}.review-summary strong{margin-left:auto}.review-row{display:flex;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}.review-row>span:first-child{flex:1;min-width:0;overflow-wrap:anywhere}.end-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:22px}.result-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#e4f1eb;border:1px solid #c4dfd3;border-radius:16px;padding:28px 35px;margin-bottom:25px}.result-hero strong{display:block;font-size:65px;letter-spacing:-3px;color:#235d4c;line-height:1.2;margin-top:5px}.result-hero strong small{font-size:27px}.result-hero p{color:#496a5e}.explanation{padding:23px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.explanation>div:first-child{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.reason{background:#f3f6fa;border-left:3px solid #91acbf;padding:13px 17px;border-radius:0 8px 8px 0;color:#405673}.studio-toolbar{display:flex;gap:17px;align-items:center;flex-wrap:wrap;margin:22px 0}.studio-toolbar label{font-weight:650}.studio-toolbar select{width:auto;max-width:100%}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}form label{display:block;margin:15px 0;font-size:12px;font-weight:650}input:not([type=checkbox]):not([type=radio]),textarea,select{display:block;width:100%;min-width:0;margin-top:6px;padding:10px 12px;background:#fff;border:1px solid #bfccdc;border-radius:8px;color:#223854;font-size:14px}textarea{resize:vertical;min-height:85px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.option-editor{min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px}.option-editor legend{font-size:12px;font-weight:750;padding:0 5px}.option-editor>div{display:flex;align-items:center;gap:12px}.option-editor label{display:flex;align-items:center;gap:9px;flex:1;min-width:0;margin:4px 0}.option-editor input[type=checkbox]{width:17px;height:17px;accent-color:var(--teal)}.bank{margin-top:24px}.bank .section-head{margin-top:0}.bank-row{display:flex;align-items:center;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.bank-row>div:first-child{flex:1;min-width:0;overflow-wrap:anywhere}.bank-row strong{display:block;margin:8px 0}.bank-row small{color:var(--muted)}.bank-row>div:last-child{display:flex;gap:8px}#status{position:sticky;bottom:12px;z-index:10;margin:0 auto 12px;max-width:min(660px,94vw);padding:12px 20px;border-radius:11px;background:#223e55;color:white;box-shadow:0 5px 20px #18384c20;font-size:12px}#status:empty{display:none}#status.error{background:#8d4235}footer{max-width:1180px;margin:0 auto;padding:20px 0 30px;border-top:1px solid var(--line);display:flex;gap:16px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:11px}footer button{background:none;border:0;text-decoration:underline;color:#755949;padding:5px}.busy{cursor:progress}.loading{padding:45px;text-align:center}@media(max-width:1240px){main,.notice,footer{margin-left:24px;margin-right:24px}}@media(max-width:850px){.sandbox{display:none}.exam-layout{grid-template-columns:1fr}.navigator{order:-1}.number-grid{grid-template-columns:repeat(8,minmax(0,1fr));margin:12px 0}.navigator p.hint{display:none}.navigator .full{width:auto}.hero-art{min-width:210px}.studio-grid,.study-grid{grid-template-columns:1fr}.hero{padding:30px}}@media(max-width:560px){.top{padding:14px 16px;gap:10px;flex-wrap:wrap}.brand{font-size:20px}.logo{font-size:23px;padding:7px 10px}nav button{padding:8px 9px;font-size:12px}main{margin:25px 16px 35px}.notice{margin:15px 16px 0;font-size:11px}footer{margin-left:16px;margin-right:16px}.heading p{font-size:14px}.hero{padding:26px}.hero h2{font-size:28px}.hero-art{display:none}.tracks{grid-template-columns:1fr}.panel{padding:20px}.section-head{align-items:flex-start;flex-wrap:wrap}.history-row{gap:8px;flex-wrap:wrap}.history-row>div{min-width:160px}.exam-top{align-items:flex-start}.exam-top h1{font-size:24px}.timer{min-width:125px;padding:8px 12px}.timer small{font-size:9px}.exam-top .eyebrow{font-size:9px}.question h2{font-size:20px}.question-head{margin-bottom:20px}.number-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.question-tools>span{width:100%;margin:0}.answer{padding:13px 10px;gap:9px}.review-row{flex-wrap:wrap;gap:9px}.review-row>span:first-child{flex:1 1 100%}.review-summary{gap:12px;font-size:12px}.result-hero{flex-direction:column;align-items:flex-start;padding:24px}.bank-row{align-items:flex-start;flex-wrap:wrap}.bank-row>div:first-child{flex-basis:100%}.studio-toolbar{gap:10px}.end-actions{flex-wrap:wrap}.primary,.secondary,.light,.danger,.flagged{font-size:13px}.meta{gap:10px}}

/* Retro CRT theme: dark + cyberpunk neon + CRT monitor hover + 60s/70s cartoon. Tokens come from /theme.css; page CRT overlay (body::after) is in /theme-fx.css. */
:root{--bg:var(--t-bg);--bg2:var(--t-bg-alt);--sh:var(--t-info);
color:hsl(var(--t-fg));background:hsl(var(--t-bg));--navy:hsl(var(--t-primary));--muted:hsl(var(--t-muted));--line:hsl(var(--t-border));--teal:hsl(var(--t-info));--mint:hsl(var(--t-info) / .14);--orange:hsl(var(--t-warn))}
html{background:hsl(var(--t-bg))}
body{background:hsl(var(--t-bg));color:hsl(var(--t-fg));overflow-x:hidden}
button,input,textarea,select{color:inherit}
a{color:hsl(var(--t-primary))}
a:hover{color:hsl(var(--t-warn));text-shadow:2px 0 hsl(var(--t-accent) / .9),-2px 0 hsl(var(--t-info) / .9)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid hsl(var(--t-warn));outline-offset:3px}
.skip{background:hsl(var(--t-warn));color:hsl(var(--t-ink));font-family:var(--t-font-mono);font-weight:700;border:var(--t-stroke) solid hsl(var(--t-outline))}
/* top bar + 70s stripe */
.top{background:hsl(var(--t-bg-alt));border-bottom:0;position:relative;margin-bottom:6px}
.top::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:6px;background:var(--t-stripes);pointer-events:none}
.brand{font-family:var(--t-font-display);font-weight:400;letter-spacing:.02em;text-transform:uppercase;color:hsl(var(--t-fg))}
.brand:hover{color:hsl(var(--t-fg))}
.brand small{font-family:var(--t-font-mono);color:hsl(var(--t-muted))}
.logo{font-family:var(--t-font-display);font-weight:400;background:hsl(var(--t-primary));color:hsl(var(--t-ink));border:var(--t-stroke) solid hsl(var(--t-outline));border-radius:12px;box-shadow:4px 4px 0 hsl(var(--t-accent));transform:rotate(-3deg)}
.logo>span{color:hsl(var(--t-ink))}
.brand:hover .logo{animation:crt-glitch .5s steps(2,end) 1}
nav button{font-family:var(--t-font-display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;color:hsl(var(--t-muted));font-weight:400;transition:color .15s,background .15s}
nav button:hover{color:hsl(var(--t-fg));text-shadow:2px 0 hsl(var(--t-accent) / .9),-2px 0 hsl(var(--t-info) / .9)}
nav button.active{background:hsl(var(--t-primary));color:hsl(var(--t-ink));border:2px solid hsl(var(--t-outline));padding:8px 13px;box-shadow:3px 3px 0 hsl(var(--t-accent))}
/* stickers */
.sandbox,.eyebrow,.tag{font-family:var(--t-font-mono);font-weight:700;text-transform:uppercase;color:hsl(var(--t-ink));background:hsl(var(--t-warn));border:2px solid hsl(var(--t-outline));border-radius:8px;transform:rotate(-2deg);box-shadow:3px 3px 0 hsl(var(--t-accent))}
.eyebrow{display:inline-block;padding:.25rem .7rem;text-shadow:none}
.sandbox{padding:5px 10px}
.tag{padding:3px 9px}
.tag.amber{background:hsl(var(--t-primary));box-shadow:3px 3px 0 hsl(var(--t-info))}
.hero .eyebrow{color:hsl(var(--t-ink))}
.notice{border:2px solid hsl(var(--t-outline));border-left-width:6px;border-left-color:hsl(var(--t-info));border-radius:10px;background:hsl(var(--t-info) / .12);color:hsl(var(--t-fg));box-shadow:4px 4px 0 hsl(var(--t-info))}
h1,h2,h3{font-family:var(--t-font-display);font-weight:400;color:hsl(var(--t-fg))}
h1,h2{text-shadow:3px 3px 0 hsl(var(--t-accent));letter-spacing:.01em}
h1{letter-spacing:.01em}
.heading p{color:hsl(var(--t-muted))}
.hero{border:var(--t-stroke) solid hsl(var(--t-outline));border-radius:var(--t-radius);box-shadow:var(--t-offset) var(--t-offset) 0 hsl(var(--t-primary));color:hsl(var(--t-fg));
background-color:hsl(var(--t-sky-mid));background-image:radial-gradient(hsl(var(--t-primary) / .16) 1.3px,transparent 1.7px),linear-gradient(115deg,hsl(var(--t-sky-mid)),hsl(var(--t-surface)));background-size:14px 14px,auto}
.hero p{color:hsl(var(--t-fg))}
.hero-note{color:hsl(var(--t-muted));font-family:var(--t-font-mono)}
.hero-art span{background:hsl(var(--t-ink) / .55);border:2px solid hsl(var(--t-outline));border-radius:10px;font-family:var(--t-font-mono);font-weight:700;color:hsl(var(--t-warn))}
.hero-art b{font-family:var(--t-font-display);font-weight:400;background:hsl(var(--t-warn));color:hsl(var(--t-ink));border:var(--t-stroke) solid hsl(var(--t-outline));border-radius:22px;box-shadow:4px 4px 0 hsl(var(--t-accent))}
.section-head>span{font-family:var(--t-font-mono);color:hsl(var(--t-muted))}
.history,.bank{background-image:radial-gradient(hsl(var(--t-primary) / .10) 1.3px,transparent 1.7px);background-size:14px 14px}
/* panels / cards */
.panel,.timer{position:relative;border:var(--t-stroke) solid hsl(var(--t-border));border-radius:var(--t-radius);background:hsl(var(--t-surface));box-shadow:var(--t-offset) var(--t-offset) 0 hsl(var(--sh));transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.tracks>:nth-child(odd),.study-grid>:nth-child(odd),.studio-grid>:nth-child(odd),.exam-layout>:nth-child(odd){--sh:var(--t-primary)}
.tracks>:nth-child(even),.study-grid>:nth-child(even),.studio-grid>:nth-child(even),.exam-layout>:nth-child(even){--sh:var(--t-warn)}
.history{--sh:var(--t-accent)}.bank{--sh:var(--t-info)}
.timer{--sh:var(--t-accent)}
.panel h2{color:hsl(var(--t-fg))}
.track-icon{background:hsl(var(--t-accent) / .18);color:hsl(var(--t-fg));border:2px solid hsl(var(--t-outline));border-radius:50%}
.lesson-text{color:hsl(var(--t-fg))}
.callout,.studio-notice{background:hsl(var(--t-warn) / .12);border:2px dashed hsl(var(--t-warn));border-radius:12px;color:hsl(var(--t-fg))}
.ack{color:hsl(var(--t-fg))}
.history-row,.bank-row,.review-row,.explanation,.question-footer,.meta{border-color:hsl(var(--t-border));border-style:dashed}
.history-row,.bank-row,.review-row{position:relative;transition:background .15s}
.history-row:hover,.bank-row:hover,.review-row:hover{background:hsl(var(--t-primary) / .08)}
/* buttons: pills that press */
.primary,.secondary,.light,.danger,.flagged{position:relative;font-family:var(--t-font-display);font-weight:400;text-transform:uppercase;letter-spacing:.06em;font-size:14px;border:var(--t-stroke) solid hsl(var(--t-outline));border-radius:999px;padding:9px 20px;box-shadow:5px 5px 0 hsl(var(--t-accent));transition:transform .12s ease,box-shadow .12s ease,background .15s}
.primary{background:hsl(var(--t-primary));color:hsl(var(--t-ink))}
.secondary{background:hsl(var(--t-surface));color:hsl(var(--t-fg));box-shadow:5px 5px 0 hsl(var(--t-info))}
.light{background:hsl(var(--t-info));color:hsl(var(--t-ink));box-shadow:5px 5px 0 hsl(var(--t-primary))}
.danger{background:hsl(var(--t-danger));color:hsl(var(--t-ink));box-shadow:5px 5px 0 hsl(var(--t-accent))}
.flagged{background:hsl(var(--t-warn));color:hsl(var(--t-ink));box-shadow:5px 5px 0 hsl(var(--t-primary))}
.primary:hover,.secondary:hover,.light:hover,.danger:hover,.flagged:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 hsl(var(--t-accent));animation:crt-pop .3s ease-out}
.secondary:hover{box-shadow:3px 3px 0 hsl(var(--t-info))}.light:hover{box-shadow:3px 3px 0 hsl(var(--t-primary))}.flagged:hover{box-shadow:3px 3px 0 hsl(var(--t-primary))}
.primary:active,.secondary:active,.light:active,.danger:active,.flagged:active{transform:translate(5px,5px);box-shadow:0 0 0 hsl(var(--t-accent))}
.text-button{font-family:var(--t-font-display);font-weight:400;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;color:hsl(var(--t-primary));text-decoration:underline;text-underline-offset:3px}
.text-button:hover{color:hsl(var(--t-warn));text-shadow:2px 0 hsl(var(--t-accent) / .9),-2px 0 hsl(var(--t-info) / .9)}
button:disabled{opacity:.6;box-shadow:none;transform:none;animation:none}
/* exam */
#clock{font-family:var(--t-font-mono);font-weight:700;color:hsl(var(--t-info))}
#clock.urgent{color:hsl(var(--t-danger))}
.timer>span,.timer small{font-family:var(--t-font-mono)}
.answer{position:relative;border:2px solid hsl(var(--t-border));border-radius:14px;background:hsl(var(--t-ink) / .45);transition:border-color .15s,box-shadow .15s,transform .15s}
.answer.chosen{border-color:hsl(var(--t-primary));background:hsl(var(--t-primary) / .14);box-shadow:4px 4px 0 hsl(var(--t-primary))}
.letter{font-family:var(--t-font-mono);color:hsl(var(--t-warn))}
.question-tools>span{color:hsl(var(--t-info))}
.number{border:2px solid hsl(var(--t-border));border-radius:10px;background:hsl(var(--t-ink));color:hsl(var(--t-fg));font-family:var(--t-font-mono);font-weight:700;transition:transform .12s,box-shadow .12s}
.number.answered{background:hsl(var(--t-info) / .22);border-color:hsl(var(--t-info));color:hsl(var(--t-fg))}
.number.current{background:hsl(var(--t-primary));border-color:hsl(var(--t-outline));color:hsl(var(--t-ink));outline:2px solid hsl(var(--t-warn));outline-offset:2px}
.number sup{color:hsl(var(--t-warn))}
.review-summary{background-color:hsl(var(--t-surface));background-image:radial-gradient(hsl(var(--t-primary) / .13) 1.3px,transparent 1.7px);background-size:14px 14px;border:2px solid hsl(var(--t-border));border-radius:12px}
.result-hero{background-color:hsl(var(--t-info) / .16);background-image:radial-gradient(hsl(var(--t-info) / .22) 1.3px,transparent 1.7px);background-size:14px 14px;border:var(--t-stroke) solid hsl(var(--t-outline));border-radius:var(--t-radius);box-shadow:var(--t-offset) var(--t-offset) 0 hsl(var(--t-info))}
.result-hero strong{font-family:var(--t-font-display);font-weight:400;color:hsl(var(--t-info));text-shadow:3px 3px 0 hsl(var(--t-accent))}
.result-hero p{color:hsl(var(--t-fg))}
.reason{background:hsl(var(--t-accent) / .1);border-left:4px solid hsl(var(--t-accent));border-radius:0 10px 10px 0;color:hsl(var(--t-fg))}
/* forms (no scanline overlay on inputs) */
form label{font-family:var(--t-font-mono);text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--t-fg))}
.ack,.answer,.option-editor label{text-transform:none;letter-spacing:normal;font-family:inherit}
input:not([type=checkbox]):not([type=radio]),textarea,select{background:hsl(var(--t-ink));border:2px solid hsl(var(--t-outline) / .55);border-radius:10px;color:hsl(var(--t-fg));transition:border-color .15s,box-shadow .15s}
input:not([type=checkbox]):not([type=radio]):hover,textarea:hover,select:hover{border-color:hsl(var(--t-primary))}
input:not([type=checkbox]):not([type=radio]):focus,textarea:focus,select:focus{border-color:hsl(var(--t-warn));box-shadow:3px 3px 0 hsl(var(--t-primary))}
input::placeholder,textarea::placeholder{color:hsl(var(--t-muted));opacity:1}
select option{background:hsl(var(--t-ink));color:hsl(var(--t-fg))}
.option-editor{border:2px dashed hsl(var(--t-border));border-radius:12px}
.option-editor legend{font-family:var(--t-font-mono);color:hsl(var(--t-warn))}
/* status toast */
#status{border:var(--t-stroke) solid hsl(var(--t-outline));border-radius:14px;background:hsl(var(--t-info));color:hsl(var(--t-ink));box-shadow:5px 5px 0 hsl(var(--t-accent));font-family:var(--t-font-mono);font-weight:700}
#status.error{background:hsl(var(--t-danger));color:hsl(var(--t-ink))}
/* footer + stripe */
footer{position:relative;border-top:0;padding-top:30px}
footer::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--t-stripes);pointer-events:none}
footer button{color:hsl(var(--t-warn));font-family:var(--t-font-mono)}
footer button:hover{color:hsl(var(--t-primary))}
/* CRT monitor hover: scanlines + scan band + glass glow */
.panel::after,.answer::after,.number::after,.primary::after,.secondary::after,.light::after,.danger::after,.flagged::after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .2s ease;
background:repeating-linear-gradient(0deg,hsl(var(--t-shade) / .34) 0 1px,transparent 1px 3px),linear-gradient(180deg,transparent,hsl(var(--t-fg) / .13) 50%,transparent) 0 -100%/100% 38% no-repeat;
box-shadow:inset 0 0 38px hsl(var(--t-primary) / .38),inset 0 0 0 2px hsl(var(--t-primary) / .45)}
.panel:hover,.answer:hover,.number:hover{animation:crt-pop .3s ease-out}
.panel:hover{transform:translate(-3px,-3px);border-color:hsl(var(--t-outline));box-shadow:calc(var(--t-offset) + 3px) calc(var(--t-offset) + 3px) 0 hsl(var(--sh))}
.answer:hover{border-color:hsl(var(--t-outline))}
.number:hover{border-color:hsl(var(--t-outline))}
.panel:hover::after,.answer:hover::after,.number:hover::after,.primary:hover::after,.secondary:hover::after,.light:hover::after,.danger:hover::after,.flagged:hover::after{opacity:1;animation:crt-sweep 1.3s linear infinite}
.panel:hover h2,.panel:hover h3{text-shadow:2px 0 hsl(var(--t-accent) / .9),-2px 0 hsl(var(--t-info) / .9)}
@media(max-width:560px){.panel,.hero,.result-hero{box-shadow:4px 4px 0 hsl(var(--sh,var(--t-primary)))}.hero{box-shadow:4px 4px 0 hsl(var(--t-primary))}.result-hero{box-shadow:4px 4px 0 hsl(var(--t-info))}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
