:root{--bg-0: #030711;--bg-1: #060d1e;--bg-2: #0a1430;--panel: rgba(10, 24, 54, .55);--panel-solid: rgba(9, 20, 44, .9);--panel-border: rgba(56, 189, 248, .18);--panel-border-hi: rgba(0, 229, 255, .55);--text: #eaf4ff;--muted: #7fa8d8;--electric: #00e5ff;--electric-2: #1e7bff;--electric-3: #7b5bff;--glow: rgba(0, 229, 255, .55);--glow-soft: rgba(0, 229, 255, .22);--good: #22ffae;--amber: #ffc23d;--bad: #ff5a6e;--radius: 18px;--shadow: 0 24px 70px rgba(0, 0, 0, .55);--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg-0);-webkit-font-smoothing:antialiased;overflow:hidden;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}.app{height:100vh;height:100dvh;position:relative}.world-canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}.world-canvas canvas{display:block}.app-ui{position:relative;z-index:2;height:100%;pointer-events:none}.app-ui button,.app-ui a,.app-ui input,.app-ui .attract,.app-ui .option-card,.app-ui .overlay-backdrop{pointer-events:auto}.tco-root{height:100%}.screen{height:100%;display:flex;flex-direction:column;padding:clamp(20px,3.2vw,56px);gap:clamp(16px,2vw,28px);max-width:1400px;margin:0 auto}.screen-center{justify-content:center;align-items:center;text-align:center}.screen-scroll{overflow-y:auto}.hud{position:relative;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);padding:clamp(14px,1.6vw,22px) clamp(18px,2vw,28px);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow),inset 0 1px #ffffff0d}.hud:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;background:linear-gradient(120deg,transparent,var(--glow-soft),transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.hud-stats{display:flex;gap:clamp(20px,4vw,64px);margin-bottom:16px;flex-wrap:wrap}.hud-stat{display:flex;flex-direction:column;gap:2px}.hud-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.hud-value{font-size:clamp(20px,2.4vw,30px);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.hud-value.muted{color:var(--muted);font-weight:600}.hud-stat-current .hud-value{color:#fff;text-shadow:0 0 22px var(--glow)}.gauge{width:100%}.gauge-track{position:relative;height:16px;border-radius:999px;box-shadow:inset 0 0 0 1px #00000059,0 0 24px #00e5ff1f}.gauge-baseline{position:absolute;top:-5px;bottom:-5px;width:2px;background:#ffffffbf;transform:translate(-50%)}.gauge-indicator{position:absolute;top:50%;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;background:#030711;border:3px solid #fff;box-shadow:0 0 0 4px #0006,0 0 22px 3px var(--glow),0 6px 16px #00000080}.gauge-bubble{position:absolute;bottom:155%;left:50%;transform:translate(-50%);padding:4px 11px;border-radius:9px;font-size:13px;font-weight:800;color:#04121f;white-space:nowrap;font-variant-numeric:tabular-nums;box-shadow:0 0 20px #00e5ff66}.gauge-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:inherit}.gauge-scale{display:flex;justify-content:space-between;margin-top:10px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.gauge-scale-mid{color:var(--text);font-weight:600}.question-body{flex:1;display:flex;flex-direction:column;gap:clamp(14px,2vw,26px);min-height:0}.question-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.q-index{font-size:clamp(24px,2.8vw,36px);font-weight:900;letter-spacing:-.02em;background:linear-gradient(120deg,var(--electric),#7fd7ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 26px var(--glow-soft)}.q-total{color:var(--muted);font-weight:600;font-size:.55em;-webkit-text-fill-color:var(--muted)}.q-phase{font-size:12px;text-transform:uppercase;letter-spacing:.12em;padding:6px 13px;border-radius:999px;background:#00e5ff1f;color:var(--electric);border:1px solid rgba(0,229,255,.4);box-shadow:0 0 18px #00e5ff2e,inset 0 0 12px #00e5ff1a}.q-topic{color:var(--muted);font-size:15px}.question-timer{margin-left:auto}.question-prompt{font-size:clamp(20px,2.5vw,33px);line-height:1.32;font-weight:700;margin:0;max-width:62ch;letter-spacing:-.01em}.options{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,20px);align-items:stretch}.options>*{display:flex}@media (max-width: 900px){.options{grid-template-columns:1fr}}.option-card{position:relative;overflow:hidden;text-align:left;display:flex;flex-direction:column;gap:14px;background:linear-gradient(180deg,#0f204499,#0812288c);border:1px solid var(--panel-border);border-radius:var(--radius);padding:clamp(16px,1.6vw,24px);color:var(--text);cursor:pointer;font:inherit;transition:transform .16s ease,border-color .16s ease,box-shadow .2s ease,background .2s ease;min-height:168px;width:100%;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.option-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--electric),transparent);opacity:0;transition:opacity .2s ease}.option-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 30%,rgba(0,229,255,.1) 50%,transparent 70%);transform:translate(-120%);transition:transform .6s ease;pointer-events:none}.option-card:hover:not(:disabled){transform:translateY(-5px);border-color:var(--panel-border-hi);box-shadow:0 18px 44px #00000080,0 0 0 1px #00e5ff40,0 0 40px #00e5ff2e}.option-card:hover:not(:disabled):before{opacity:1}.option-card:hover:not(:disabled):after{transform:translate(120%)}.option-card:active:not(:disabled){transform:translateY(-1px) scale(.99)}.option-card:disabled{opacity:.4;cursor:default}.option-key{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:#041019;font-weight:900;font-size:18px;background:linear-gradient(135deg,var(--electric),var(--electric-2));box-shadow:0 0 18px #00e5ff73}.option-label{font-size:clamp(14px,1.35vw,17px);line-height:1.45}.timer{position:relative;width:66px;height:66px;filter:drop-shadow(0 0 10px var(--glow-soft))}.timer-num{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}.timer-urgent{animation:pulse .7s ease-in-out infinite;filter:drop-shadow(0 0 12px rgba(255,90,110,.6))}@keyframes pulse{50%{transform:scale(1.09)}}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px;background:#020610c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.overlay-card{position:relative;width:min(780px,100%);background:linear-gradient(180deg,#0c1c3ef5,#060e22fa);border:1px solid var(--panel-border-hi);border-radius:22px;padding:clamp(22px,3vw,42px);box-shadow:var(--shadow),0 0 60px #00e5ff2e}.overlay-card:before{content:"";position:absolute;top:0;left:10%;right:10%;height:2px;background:linear-gradient(90deg,transparent,var(--electric),transparent);box-shadow:0 0 18px var(--glow)}.overlay-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.overlay-chosen{font-size:15px;color:var(--muted);display:flex;align-items:center;gap:10px}.overlay-impact{font-size:clamp(26px,3vw,42px);font-weight:900;color:var(--bad);font-variant-numeric:tabular-nums;text-shadow:0 0 24px rgba(255,90,110,.35)}.overlay-impact.good{color:var(--good);text-shadow:0 0 24px rgba(34,255,174,.4)}.overlay-text{font-size:clamp(16px,1.7vw,20px);line-height:1.55;margin:0 0 24px;color:#d7e6fb}.overlay-actions{display:flex;justify-content:flex-end}.badge-best{font-size:12px;font-weight:800;letter-spacing:.04em;padding:3px 9px;border-radius:7px;background:#22ffae29;color:var(--good);border:1px solid rgba(34,255,174,.45);box-shadow:0 0 16px #22ffae33}.badge-best.sm{padding:1px 6px;margin-left:6px}.badge-timeout{font-size:11px;margin-left:8px;color:var(--amber);border:1px solid rgba(255,194,61,.45);padding:1px 7px;border-radius:7px}.opening,.prompt{max-width:800px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:13px;font-weight:700;color:var(--electric);margin-bottom:12px;text-shadow:0 0 20px var(--glow-soft)}.title{font-size:clamp(42px,7.2vw,92px);line-height:.98;margin:0 0 24px;font-weight:900;letter-spacing:-.03em;background:linear-gradient(180deg,#ffffff 0%,#bfe9ff 55%,var(--electric) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 60px rgba(0,229,255,.35);filter:drop-shadow(0 6px 30px rgba(0,229,255,.25))}.lede{font-size:clamp(17px,2vw,22px);line-height:1.55;color:#cfe2fb;margin:0 auto 30px}.lede strong{color:#fff;text-shadow:0 0 20px var(--glow-soft)}.rules{list-style:none;padding:0;margin:0 auto 38px;display:inline-flex;flex-wrap:wrap;gap:10px 14px;justify-content:center}.rules li{font-size:14px;color:#bcd4f2;background:var(--panel);border:1px solid var(--panel-border);padding:9px 15px;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-primary,.btn-secondary{position:relative;overflow:hidden;font:inherit;font-weight:800;cursor:pointer;border-radius:13px;padding:14px 28px;border:1px solid transparent;transition:transform .14s ease,box-shadow .2s ease,filter .15s ease}.btn-primary{background:linear-gradient(135deg,var(--electric) 0%,var(--electric-2) 60%,var(--electric-3) 120%);color:#04121f;letter-spacing:.01em;box-shadow:0 8px 26px #0006,0 0 26px #00e5ff66}.btn-primary:after{content:"";position:absolute;top:0;bottom:0;width:45%;left:-60%;transform:skew(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:sheen 3.4s ease-in-out infinite}@keyframes sheen{0%,60%{left:-60%}to{left:160%}}.btn-primary:hover{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 12px 34px #00000073,0 0 44px #00e5ff99}.btn-primary:active{transform:translateY(-1px) scale(.99)}.btn-secondary{background:#0a183680;color:var(--text);border-color:var(--panel-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-secondary:hover{border-color:var(--panel-border-hi);transform:translateY(-3px);box-shadow:0 0 30px #00e5ff38}.btn-lg{font-size:clamp(16px,1.8vw,20px);padding:16px 36px}.scorecard,.reveal{max-width:900px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:22px}.section-title{font-size:clamp(22px,3vw,38px);margin:0;font-weight:900;line-height:1.18;letter-spacing:-.02em;background:linear-gradient(180deg,#fff,#bfe9ff);-webkit-background-clip:text;background-clip:text;color:transparent}.score-table{width:100%;border-collapse:collapse;font-size:clamp(14px,1.5vw,17px)}.score-table th,.score-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--panel-border)}.score-table th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.score-table .num{text-align:right;font-variant-numeric:tabular-nums}.score-table tbody tr{transition:background .15s}.score-table tbody tr:hover{background:#00e5ff0d}.score-table tfoot td{font-weight:900;font-size:clamp(16px,1.8vw,20px);border-bottom:none;padding-top:18px}.score-table .final{font-size:clamp(22px,2.6vw,34px);text-shadow:0 0 26px currentColor}.choice-key{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--electric),var(--electric-2));color:#041019;font-weight:900;font-size:14px;box-shadow:0 0 14px #00e5ff59}.rating{border:1px solid var(--panel-border-hi);border-radius:var(--radius);padding:20px 24px;background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 0 40px #00e5ff1f}.rating-label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.rating-text{font-size:clamp(18px,2.2vw,27px);font-weight:800;margin:6px 0 0;letter-spacing:-.01em}.reveal-grid{display:flex;flex-direction:column;gap:10px}.reveal-row{display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:center;background:linear-gradient(180deg,#0f204480,#08122880);border:1px solid var(--panel-border);border-radius:13px;padding:15px 19px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .2s,box-shadow .2s}.reveal-row:hover{border-color:var(--panel-border-hi);box-shadow:0 0 28px #00e5ff29}@media (max-width: 720px){.reveal-row{grid-template-columns:1fr;gap:4px}}.reveal-cap{font-weight:800;color:var(--electric);font-size:clamp(15px,1.6vw,18px);text-shadow:0 0 18px var(--glow-soft)}.reveal-metric{color:#d7e6fb;font-size:clamp(14px,1.5vw,17px)}.reveal-programs{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;padding-top:8px;color:#d7e6fb;font-size:clamp(14px,1.5vw,17px)}.reveal-programs-label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.prompt-actions{display:flex;gap:16px;justify-content:center;margin-top:24px;flex-wrap:wrap}.attract{cursor:pointer;gap:18px}.attract-rings{position:relative;width:180px;height:180px;display:grid;place-items:center;margin-bottom:8px}.attract-ring{position:absolute;width:120px;height:120px;border-radius:50%;border:2px solid var(--electric)}.attract-core{position:relative;width:120px;height:120px;border-radius:50%;display:grid;place-items:center;font-size:54px;color:var(--electric);background:radial-gradient(circle at 50% 40%,#00e5ff40,#060e22e6 70%);border:2px solid var(--panel-border-hi)}.attract-title{font-size:clamp(40px,8vw,96px);margin:0}.attract-cta{display:inline-flex;align-items:center;gap:12px;font-size:clamp(18px,2.4vw,26px);font-weight:700;color:var(--electric);text-shadow:0 0 22px var(--glow);letter-spacing:.02em;margin-top:8px}.attract-touch{font-size:.8em}.tap-ripple-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:60;overflow:hidden}.tap-ripple{position:absolute;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;border:2px solid var(--electric);box-shadow:0 0 26px var(--glow),inset 0 0 22px var(--glow-soft)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}.screen-scroll::-webkit-scrollbar{width:8px}.screen-scroll::-webkit-scrollbar-thumb{background:#00e5ff40;border-radius:999px}
