:root {color-scheme:dark;--bg:#10101b;--surface:#1b1b2b;--surface-2:#222239;--line:#333344;--text:#f7f5ed;--muted:#a1a0b2;--lime:#c9fd62;--lav:#b2a2fa;--pink:#f6b1e0;--radius:14px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.5;overflow-x:hidden}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--lav);outline-offset:4px}
[hidden],.screen[hidden]{display:none!important}
.site-shell{width:min(1200px,calc(100% - 80px));margin:0 auto;position:relative;z-index:1}
.page-glow{pointer-events:none;position:fixed;width:480px;height:480px;filter:blur(85px);opacity:.11;border-radius:50%;z-index:0}
.glow-left{background:#aa5fff;left:-290px;top:160px}.glow-right{background:#9fe652;right:-300px;bottom:0}
.site-header{display:flex;align-items:center;justify-content:space-between;padding:28px 0;border-bottom:1px solid #353545}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--text);font-weight:950;font-size:25px;letter-spacing:-1.7px;line-height:1}
.brand-symbol{display:inline-grid;place-items:center;background:var(--lime);color:#111119;border-radius:9px;width:35px;height:35px;font-size:32px;font-weight:400;line-height:1}
.brand-light{font-weight:400}.brand-period{color:var(--lime)}
.header-right{display:flex;align-items:center;gap:30px}.status-pill{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:30px;padding:7px 13px;font-weight:bold;font-size:10px;letter-spacing:1px;color:#c7c3d2}.status-dot{width:6px;height:6px;background:var(--lime);border-radius:50%;box-shadow:0 0 10px #c9fd6288}.header-link,.site-footer button{border:0;background:none;color:var(--text);font-size:12px;font-weight:750;letter-spacing:.3px}.header-link span{color:var(--lime);font-size:17px;margin-left:5px}
.intro-kicker,.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--lime)}.intro-kicker{margin:48px 0 15px;display:flex;align-items:center;gap:9px}.tiny-star{font-size:16px}.kicker-line{width:29px;height:1px;background:var(--muted);display:inline-block;margin:0 5px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.75fr);gap:42px;align-items:start}.hero-main{min-width:0}
h1,h2,p{margin-top:0}h1{font-size:clamp(57px,7vw,103px);line-height:.95;letter-spacing:-.085em;font-weight:950;margin:8px 0 29px}h1 .outlined{-webkit-text-stroke:1.7px #f9f6ef;color:transparent}h1 .underline-glow,h2 .underline-glow{position:relative;white-space:nowrap}.underline-glow:after{content:'';display:block;position:absolute;left:0;right:0;bottom:-8px;height:7px;background:var(--lime);transform:rotate(-1.5deg);border-radius:5px}.period{color:var(--lime)}.hero-sub{font-size:20px;line-height:1.42;letter-spacing:-.3px;max-width:510px;margin:0 0 14px}.hero-support{color:var(--muted);font-size:14px;line-height:1.7;max-width:460px;margin:0 0 25px}
.setup-card{background:var(--surface);border:1px solid #393947;border-radius:var(--radius);padding:22px;max-width:530px;box-shadow:0 30px 80px #0000001b}.setup-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.setup-label{font-size:10px;font-weight:850;letter-spacing:1.6px}.setup-help{font-size:12px;color:var(--muted)}.timings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:17px 0}.time-choice{min-width:0;border:1px solid #3d3b50;background:var(--surface-2);border-radius:9px;color:var(--text);font-weight:850;font-size:23px;line-height:1.15;padding:13px 10px 10px;transition:background .15s,color .15s,border-color .15s}.time-choice span{display:block;font-size:9px;letter-spacing:1.1px;margin-top:5px;color:#b4b1c2;font-weight:800}.time-choice:hover{border-color:var(--lime)}.time-choice.active{background:var(--lime);border-color:var(--lime);color:#171723}.time-choice.active span{color:#39411e}.primary-button{border:0;background:var(--lime);color:#15151e;padding:16px 20px;border-radius:9px;display:flex;justify-content:space-between;align-items:center;width:100%;font-weight:950;font-size:15px;letter-spacing:.4px;transition:transform .15s,filter .15s}.primary-button:hover{transform:translateY(-2px);filter:brightness(1.04)}.button-arrow{font-size:20px;line-height:1}.setup-footer{display:flex;justify-content:space-between;gap:8px;padding-top:18px;flex-wrap:wrap}.setup-footer>span{font-size:9px;color:#c1bdcf;letter-spacing:.5px;font-weight:850}.check-mark{color:var(--lime);margin-right:5px}
.hero-visual{min-height:495px;background:#25243b;border:1px solid #49455d;border-radius:17px;padding:20px 22px;position:relative;overflow:hidden;box-shadow:16px 16px 0 #c9fd620d}.hero-visual:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 60% 40%,#7d65be40 0,transparent 60%);pointer-events:none}.visual-top,.visual-bottom{display:flex;justify-content:space-between;position:relative;z-index:2;font-weight:850;letter-spacing:1.4px;font-size:10px;color:#c7c2da}.visual-center{position:relative;height:360px;display:grid;place-items:center}.target-ring{border:1px solid #78718b65;border-radius:50%;position:absolute;width:330px;height:330px;top:50%;left:50%;transform:translate(-50%,-50%)}.target-ring-two{width:250px;height:250px;border-color:#ab9bfb80}.target-ring-three{width:170px;height:170px;border-color:#d7caffb0}.target-orbit{height:60px;width:60px;border-radius:50%;display:grid;place-items:center;position:absolute;top:43px;right:17px;background:var(--lime);color:#12121c;font-size:36px;box-shadow:0 0 30px #c9fd6266;transform:rotate(-14deg)}.target-label{z-index:2;display:flex;flex-direction:column;align-items:center;gap:3px}.target-100{font-size:112px;font-weight:950;letter-spacing:-12px;line-height:1;color:#eee9ff;text-shadow:0 8px 45px #ddc9fe40;padding-right:10px}.small-dot{color:var(--lime)}.target-word{font-size:10px;letter-spacing:2px;color:var(--lime);font-weight:900}.visual-bottom{display:block;border-top:1px solid #555169;padding-top:15px}.bar-scale{height:53px;display:flex;align-items:end;gap:10px;padding:0 5px}.scale-bar{flex:1;background:#6a647f;border-radius:2px 2px 0 0}.scale-bar-on{background:var(--lime)}.scale-labels{display:flex;justify-content:space-between;padding-top:9px;font-size:9px;color:#c4bfd2}
.bottom-facts{display:grid;grid-template-columns:.7fr .95fr .95fr 1.5fr;gap:15px;margin:52px 0 43px;padding-top:25px;border-top:1px solid #3c3b4a}.bottom-facts>div:not(.facts-detail){display:flex;flex-direction:column;gap:1px}.bottom-facts strong{font-size:27px;font-weight:950;letter-spacing:-1px}.bottom-facts span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:1px}.facts-detail{align-self:center;text-align:right;color:var(--lime);font-size:11px;font-weight:850;letter-spacing:1px}.facts-detail span{color:#b8b6c7;font-size:11px;display:block;margin-top:3px}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:23px 0 30px;border-top:1px solid #333340;color:#7f7e90;font-size:10px;font-weight:800;letter-spacing:1px}.site-footer button{color:#adabbc;font-size:10px;letter-spacing:1px}
/* Game */
.game-screen{max-width:840px;margin:50px auto 70px}.game-status-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.game-status-row .eyebrow{color:#c7c4d0}.progress-dots{display:flex;gap:7px;margin-top:13px}.progress-dot{width:27px;height:6px;border-radius:99px;background:#454456}.progress-dot.complete{background:var(--lime)}.progress-dot.current{background:var(--lav)}.game-score{text-align:right}.game-score span{display:block;font-size:10px;letter-spacing:1.2px;color:#b4b0c0;font-weight:900}.game-score strong{display:inline;font-size:30px;color:var(--lime);letter-spacing:-1.5px}.game-score .score-max{display:inline;font-size:13px;letter-spacing:0;margin-left:5px}
.question-card{background:var(--surface);border:1px solid #454252;border-radius:18px;padding:38px 46px 42px;box-shadow:0 20px 80px #05040d4d;min-height:560px}.question-head{display:flex;justify-content:space-between;align-items:center}.timer-box{position:relative;width:54px;height:54px;display:grid;place-items:center}.timer-svg{position:absolute;inset:0;transform:rotate(-90deg)}.timer-track,.timer-arc{fill:none;stroke-width:4}.timer-track{stroke:#414052}.timer-arc{stroke:var(--lime);stroke-linecap:round;transition:stroke-dashoffset .1s linear}.timer-arc.timer-urgent{stroke:#ff9b91}.time-remaining{font-size:17px;font-weight:900;z-index:1}.time-suffix{position:absolute;right:-12px;bottom:11px;font-size:10px;color:#c4c1d0;font-weight:700}.question-emoji{font-size:47px;margin-top:30px;margin-bottom:12px}.question-card h2{font-size:clamp(28px,4vw,46px);letter-spacing:-1.8px;line-height:1.13;max-width:650px;margin:0 0 11px;font-weight:950}.question-instruction{font-size:14px;color:#b5b3c3;line-height:1.7;margin-bottom:38px}.input-label{display:block;font-size:10px;letter-spacing:1.7px;font-weight:900;margin-bottom:12px;color:#d1cdda}.answer-entry{display:flex;gap:10px}.answer-entry input{flex:1;min-width:0;background:#141421;color:white;border:1px solid #575369;border-radius:9px;padding:15px 17px;font-size:17px;outline:none}.answer-entry input:focus{border-color:var(--lime);box-shadow:0 0 0 3px #c9fd6222}.answer-entry input::placeholder{color:#77758b}.submit-answer{background:var(--lime);border:0;border-radius:9px;padding:0 18px;color:#13131c;font-size:12px;letter-spacing:.5px;font-weight:950;white-space:nowrap}.submit-answer span{font-size:17px;margin-left:8px}.answer-feedback{min-height:28px;color:#c4c0d4;font-size:12px;padding-top:9px}.answer-feedback.is-error{color:#ffb1ad}.suggestion-button{border:1px solid #6e668b;color:#e1d7fe;background:#342d49;padding:8px 11px;border-radius:7px;font-size:12px;margin-bottom:9px}.question-tools{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #3c394d;margin-top:24px;padding-top:19px}.text-button{color:#c7c3d7;background:none;border:none;padding:2px 0;font-size:12px;text-decoration:underline;text-underline-offset:4px}.text-button span{color:var(--lime);text-decoration:none}.text-button:disabled{opacity:.4;cursor:default}.skip-button{text-decoration:none}.hint-text{color:var(--lav);font-size:12px;margin-top:14px;margin-bottom:0}.game-bottom{display:flex;justify-content:space-between;font-size:10px;font-weight:850;letter-spacing:1px;color:#747185;margin-top:18px}
.reveal-phase{text-align:center;padding:4px 0 0}.reveal-kicker{font-size:11px;color:var(--lime);font-weight:950;letter-spacing:2.5px}.reveal-score{display:flex;justify-content:center;align-items:baseline;gap:11px;margin:6px 0}.reveal-score>span:first-child{font-weight:950;font-size:clamp(75px,11vw,120px);letter-spacing:-8px;line-height:1.1;color:var(--lime)}.reveal-score>span:last-child{font-size:12px;letter-spacing:2px;font-weight:900}.reveal-answer{font-size:21px;font-weight:900;color:var(--text);margin:14px 0 4px}.reveal-explainer{font-size:13px;color:var(--muted);margin-bottom:35px}.next-button{max-width:320px;margin:0 auto}
/* End */
.end-screen{padding:20px 0 60px}.end-heading h2{font-size:clamp(48px,6vw,82px);line-height:1;letter-spacing:-.07em;margin-bottom:40px}.end-heading .intro-kicker{margin-bottom:20px}.results-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px}.final-score-card,.rounds-card{padding:30px;background:var(--surface);border:1px solid #403d50;border-radius:15px}.final-score{font-weight:950;letter-spacing:-.075em;font-size:clamp(68px,8vw,113px);color:var(--lime);line-height:1.2;margin-top:9px}.final-score span{font-size:21px;letter-spacing:-.3px;color:#c3bfd3}.result-rank{display:inline-flex;background:#c9fd6223;color:var(--lime);border:1px solid #c9fd624d;border-radius:5px;padding:5px 11px;font-size:11px;font-weight:950;letter-spacing:1.1px;margin:5px 0 18px}.result-caption{color:#c4c0d0;max-width:350px;font-size:14px;line-height:1.7}.result-best{font-weight:850;font-size:11px;letter-spacing:.9px;margin:25px 0 18px}.secondary-button{display:block;width:100%;border:1px solid #5c586e;background:#29283c;color:#faf7ff;font-size:12px;font-weight:850;letter-spacing:1px;padding:15px;border-radius:9px;margin-top:10px}.secondary-button:hover{border-color:var(--lime)}.copy-status{display:block;color:var(--lime);min-height:20px;font-size:12px;margin-top:12px}.rounds-title{display:flex;justify-content:space-between;border-bottom:1px solid #454154;padding-bottom:17px;font-size:11px;letter-spacing:1.4px;font-weight:900}.rounds-list{list-style:none;padding:0;margin:0}.rounds-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #353344;padding:13px 0}.rounds-list li:last-child{border-bottom:none}.round-info{display:flex;align-items:center;gap:13px;min-width:0}.round-info>div{min-width:0}.round-index{font-size:11px;font-weight:900;color:#817e97}.round-question,.round-answer{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.round-question{font-size:12px;font-weight:850}.round-answer{font-size:11px;color:var(--muted);margin-top:2px}.rounds-list strong{color:var(--lime);font-size:15px;flex:none}
/* Dialog */
.rules-dialog{background:#202034;color:var(--text);border:1px solid #777086;border-radius:18px;max-width:min(520px,calc(100% - 26px));padding:34px 36px;box-shadow:0 40px 100px #000c}.rules-dialog::backdrop{background:#070711c9;backdrop-filter:blur(8px)}.rules-dialog h2{font-size:36px;line-height:1.05;letter-spacing:-1.8px;margin:13px 0 24px}.dialog-close{position:absolute;top:18px;right:20px;border:0;background:transparent;color:#ddd6ed;font-size:17px;padding:6px}.rules-list{margin:0 0 24px;padding:0;list-style:none}.rules-list li{display:flex;gap:17px;border-bottom:1px solid #413e50;padding:10px 0;font-size:13px;line-height:1.65}.rules-list li span{font-size:12px;font-weight:900;color:var(--lime);padding-top:1px}.rules-note{background:#302d42;border:1px solid #4c465d;border-radius:10px;padding:18px}.rules-note strong{font-size:13px}.rules-note p{font-size:12px;line-height:1.7;color:#cbc5da;margin:7px 0 0}.dialog-done{margin-top:17px}
@media(max-width:950px){.hero-grid{grid-template-columns:minmax(0,1fr) 330px;gap:20px}.hero-visual{min-height:420px}.visual-center{height:290px}.target-ring{width:275px;height:275px}.target-ring-two{width:207px;height:207px}.target-ring-three{width:145px;height:145px}.target-100{font-size:94px}.target-orbit{right:6px}.bottom-facts{grid-template-columns:repeat(3,1fr)}.facts-detail{display:none}}
@media(max-width:760px){.site-shell{width:calc(100% - 34px)}.site-header{padding:20px 0}.brand{font-size:22px}.header-right{gap:12px}.status-pill{display:none}.intro-kicker{margin-top:33px;font-size:9px;letter-spacing:1px}.hero-grid{grid-template-columns:1fr}.hero-visual{display:none}h1{font-size:clamp(56px,11.8vw,85px)}.hero-sub{font-size:18px}.hero-support{font-size:14px}.setup-card{max-width:none}.bottom-facts{margin:38px 0 24px}.site-footer>span:nth-child(2){display:none}.game-screen{margin:35px auto 50px}.question-card{padding:26px 23px 33px;min-height:560px}.question-emoji{margin-top:35px}.answer-entry{flex-direction:column}.answer-entry input{width:100%}.submit-answer{min-height:50px}.results-grid{grid-template-columns:1fr}.end-heading h2{margin-bottom:25px}}
@media(max-width:420px){h1{font-size:clamp(49px,12.2vw,60px)}.setup-card{padding:16px}.time-choice{font-size:20px;padding:13px 3px}.time-choice span{font-size:8px}.setup-footer{gap:8px}.setup-footer>span{font-size:8px}.site-footer{font-size:9px}.header-link{font-size:11px}.bottom-facts strong{font-size:24px}.bottom-facts span{font-size:8px}.question-card h2{font-size:29px}.question-card{padding:23px 18px}.progress-dot{width:20px}.game-bottom{font-size:8px}.final-score-card,.rounds-card{padding:20px}.rules-dialog{padding:27px 23px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.judge-status{color:var(--lav);font-size:12px;margin:12px 1px 0}.judge-status.offline{color:#ffb1ad}.submit-answer:disabled,.answer-entry input:disabled{cursor:wait;opacity:.65}
#replaceButton { border-color: rgba(230,170,55,.4); margin-top: 0.7rem; }
#reportButton { display: block; margin: 0 0 1rem auto; }
