:root{color-scheme:dark;--bg:#101117;--card:#191b24;--line:#3a3e4c;--text:#f5f3ec;--muted:#aeb1bf;--yellow:#f7d046;--red:#ff625f;--green:#57d38c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100svh;background:radial-gradient(circle at 50% 0,#26202b 0,transparent 34rem),var(--bg);color:var(--text)}button{font:inherit}.shell{width:min(100% - 32px,560px);margin:auto;padding:28px 0 48px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.brand{color:var(--text);font-weight:950;letter-spacing:-.06em;text-decoration:none;font-size:1.25rem}.brand span{color:var(--yellow)}.mode,.meta,footer{color:var(--muted);font-size:.78rem}.card{background:linear-gradient(145deg,#1d1f29,#171820);border:1px solid var(--line);border-radius:28px;padding:clamp(24px,6vw,42px);box-shadow:0 24px 80px #0005}.hero{padding-top:52px;text-align:center}.eyebrow,.category{color:var(--yellow);font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.hero h1{font-size:clamp(2.8rem,12vw,5rem);line-height:.92;letter-spacing:-.075em;margin:18px 0}.hero em{color:var(--yellow);font-style:normal}.lead{color:#c2c3cb;line-height:1.65;max-width:390px;margin:0 auto 32px}.primary,.secondary,.choices button{width:100%;min-height:58px;border-radius:16px;border:1px solid transparent;font-weight:850;cursor:pointer}.primary{background:var(--yellow);color:#18170f;box-shadow:0 8px 28px #f7d04622}.secondary{margin-top:10px;background:transparent;border-color:var(--line);color:var(--text)}button:focus-visible{outline:3px solid #fff;outline-offset:3px}button:disabled{cursor:default}.status-row,.score-row{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.88rem}.timer{height:5px;background:#2b2d37;border-radius:9px;overflow:hidden;margin:20px 0 42px}.timer span{display:block;height:100%;width:100%;background:var(--yellow);transform-origin:left}.card h2{font-size:clamp(1.65rem,7vw,2.5rem);line-height:1.25;letter-spacing:-.045em;min-height:6.2rem;margin:0 0 30px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choices button{position:relative;display:grid;place-items:center;aspect-ratio:1;background:#272a35;border-color:#393c49;color:var(--text);padding:16px;overflow:hidden}.choices img{width:min(100%,144px);height:auto;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 12px 12px #0006)}.choices button:hover:not(:disabled){border-color:var(--yellow);transform:translateY(-2px)}.choices button:hover:not(:disabled) img{transform:scale(1.08)}.choices button.correct{background:#173a2a;border-color:var(--green)}.choices button.wrong{background:#442322;border-color:var(--red)}.choices button.correct::after,.choices button.wrong::after{position:absolute;right:10px;top:10px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#111;font-weight:950}.choices button.correct::after{content:"✓";background:var(--green)}.choices button.wrong::after{content:"✕";background:var(--red)}.feedback{min-height:64px;margin:20px 0;color:#c8cad2;line-height:1.45;font-size:.9rem}.feedback strong{display:block;color:var(--text);margin-bottom:5px}.score-row{border-top:1px solid var(--line);padding-top:18px}.score-row strong{color:var(--text)}.result{text-align:center}.result h2{min-height:auto;margin:22px 0}.final-score{display:inline-flex;align-items:baseline;gap:.12em;letter-spacing:0}.final-score strong{font-size:6rem;line-height:1}.final-score span{font-size:1.5rem;color:var(--muted)}.result>p:not(.eyebrow,.meta){color:#c8cad2;margin-bottom:30px}footer{max-width:560px;margin:0 auto 24px;padding:0 24px;text-align:center;line-height:1.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@media(max-width:380px){.card h2{min-height:auto}.timer{margin-bottom:28px}.choices button{padding:10px}}@media(prefers-reduced-motion:no-preference){button{transition:transform .15s,border-color .15s,background .15s}.choices img{transition:transform .15s}.timer span{transition:width .1s linear}.card{animation:enter .35s ease-out}@keyframes enter{from{opacity:0;transform:translateY(8px)}}}
