:root{--bg:#090c0d;--bg-2:#0d1514;--panel:#0d1514e0;--panel-strong:#080d0df0;--line:#d8fff524;--line-strong:#39d7bb66;--text:#edf8f4;--muted:#9db0ab;--dim:#687974;--teal:#39d7bb;--teal-2:#8ef6df;--amber:#f0b65a;--red:#ff5a5f;--ink:#050707;--font-ui:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Space Grotesk", Inter, ui-sans-serif, system-ui, sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100vh;color:var(--text);font-family:var(--font-ui);letter-spacing:0;background:linear-gradient(#39d7bb14,#0000 24%),linear-gradient(135deg,#f0b65a14,#0000 34%),linear-gradient(#090c0d 0%,#0b1211 55%,#070908 100%);margin:0}body:before{z-index:-1;content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(#d8fff507 1px,#0000 1px),linear-gradient(90deg,#d8fff505 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:64px 64px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000000b8,#0000 86%);mask-image:linear-gradient(#000000b8,#0000 86%)}button,input{font:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.loading-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.loading-card{border:1px solid var(--line);background:var(--panel);min-height:54px;color:var(--teal-2);border-radius:8px;align-items:center;gap:12px;padding:14px 18px;font-weight:800;display:inline-flex}.game-shell,.result-shell{min-height:100vh;padding:18px}.top-nav{justify-content:space-between;align-items:center;gap:14px;width:min(100%,1280px);margin:0 auto 16px;display:flex}.brand-mark{min-height:40px;color:var(--muted);font-family:var(--font-display);align-items:center;gap:10px;font-size:.9rem;font-weight:800;display:inline-flex}.brand-mark strong{border:1px solid var(--line-strong);min-height:32px;color:var(--teal-2);background:#39d7bb1a;border-radius:8px;align-items:center;padding:0 11px;font-size:.82rem;display:inline-flex}.clerk-auth-controls{align-items:center;gap:8px;min-height:38px;display:inline-flex}.auth-button,.share-button,.primary-action{background:var(--teal);color:#06100f;cursor:pointer;border:1px solid #39d7bb73;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 16px;font-size:.88rem;font-weight:900;transition:transform .16s,border-color .16s,background .16s,color .16s;display:inline-flex}.auth-button:hover,.share-button:hover,.primary-action:hover{background:var(--teal-2);transform:translateY(-1px)}.auth-button:disabled,.primary-action:disabled{cursor:default;opacity:.44;transform:none}.auth-button-secondary{border-color:var(--line);color:var(--text);background:#edf8f414}.auth-button-secondary:hover{color:var(--teal-2);background:#edf8f41f}.clerk-auth-controls-disabled{opacity:.7}.clerk-user-button{place-items:center;width:38px;height:38px;display:grid}.game-layout{grid-template-columns:minmax(156px,210px) minmax(420px,1fr) minmax(330px,390px);align-items:stretch;gap:16px;width:min(100%,1280px);min-height:calc(100vh - 92px);margin:0 auto;display:grid}.score-rail,.question-panel,.final-panel,.breakdown-panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:8px;box-shadow:inset 0 1px #ffffff0a,0 18px 60px #00000047}.score-rail{flex-direction:column;gap:14px;padding:16px;display:flex}.score-total{border-bottom:1px solid var(--line);gap:2px;padding-bottom:16px;display:grid}.score-total span,.rail-stat,.question-meta,.small-label,.breakdown-row span,.summary-metrics span,.answer-kicker,.reveal-stats span{color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;font-size:.72rem;font-weight:800}.score-total strong{color:var(--teal-2);font-family:var(--font-display);font-size:clamp(2.3rem,5vw,4.4rem);font-weight:900;line-height:.96}.score-total small{color:var(--dim);font-weight:800}.rail-stat{background:#edf8f40d;border:1px solid #edf8f414;border-radius:8px;align-items:center;gap:9px;min-height:38px;padding:0 11px;display:flex}.progress-dots{grid-template-columns:repeat(5,1fr);gap:7px;margin-top:auto;display:grid}.progress-dots span{background:#edf8f424;border-radius:999px;height:9px;display:block}.progress-dots span.active{background:var(--amber)}.progress-dots span.complete{background:var(--teal)}.globe-stage{background:linear-gradient(#d8fff514,#0000 40%),#070c0ce0;border:1px solid #39d7bb38;border-radius:8px;place-items:center;min-height:610px;padding:clamp(10px,1.4vw,18px);display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff08,0 18px 70px #00000057}.globe-frame{aspect-ratio:1;isolation:isolate;background:radial-gradient(circle at 46% 43%,#39d7bb14,#0000 45%),radial-gradient(circle,#02050500 46%,#02050594 82%);border-radius:8px;width:min(100%,720px);position:relative;overflow:hidden}.globe-loading{color:#d8fff561;place-items:center;font-weight:900;display:grid;position:absolute;inset:0}.globe-canvas-host{z-index:1;min-width:0;min-height:0;position:absolute;inset:0}.globe-canvas,.globe-label-renderer{width:100%;height:100%;display:block;position:absolute;inset:0}.globe-canvas{cursor:grab;touch-action:none}.globe-canvas:active{cursor:grabbing}.globe-label-renderer{pointer-events:none;overflow:hidden}.globe-depth-cue{z-index:2;pointer-events:none;border-radius:999px;position:absolute;inset:4%;box-shadow:inset -28px -34px 74px #01040561,inset 20px 18px 58px #8ef6df0f,0 0 70px #39d7bb1f}.globe-zoom-controls{z-index:4;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#050a0abd;border-radius:8px;align-items:center;gap:6px;padding:6px;display:inline-flex;position:absolute;top:14px;right:14px;box-shadow:0 0 0 1px #d8fff521,0 14px 36px #00000042}.globe-zoom-button{width:34px;height:34px;color:var(--text);cursor:pointer;background:#edf8f40f;border:0;border-radius:6px;place-items:center;transition:transform .16s,background .16s,color .16s,opacity .16s;display:grid}.globe-zoom-button:hover:not(:disabled){color:var(--teal-2);background:#39d7bb24}.globe-zoom-button:active:not(:disabled){transform:scale(.96)}.globe-zoom-button:disabled{cursor:default;opacity:.38}.globe-zoom-value{min-width:48px;color:var(--muted);font-family:var(--font-mono);text-align:center;font-size:.7rem;font-weight:900}.globe-marker-label{pointer-events:none;color:var(--text);font-family:var(--font-mono);opacity:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;background:#050808b8;border-radius:6px;max-width:165px;padding:5px 7px;font-size:.61rem;font-weight:900;line-height:1;transition:opacity .14s,transform .14s;overflow:hidden;transform:translateY(-3px);box-shadow:0 0 0 1px #ffffff1a,0 8px 20px #0000004d}.globe-marker-label.is-hidden{opacity:0;transform:translateY(2px)}.globe-marker-label-guess{color:var(--amber)}.globe-marker-label-answer{color:#ffb5b7}.globe-fallback{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:18px;width:min(100%,560px);padding:20px;display:grid}.globe-fallback p{color:var(--muted);margin:0;font-weight:750}.fallback-controls{gap:14px;display:grid}.fallback-controls label{color:var(--text);gap:8px;font-weight:850;display:grid}.fallback-controls input{width:100%;accent-color:var(--teal)}.question-panel{flex-direction:column;gap:18px;padding:18px;display:flex}.question-meta{flex-wrap:wrap;gap:8px;display:flex}.question-meta span{background:#edf8f40f;border:1px solid #edf8f414;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;display:inline-flex}.question-panel h1{color:var(--text);font-family:var(--font-display);margin:0;font-size:clamp(1.45rem,2.3vw,2.25rem);font-weight:900;line-height:1.08}.guess-panel,.reveal-panel{gap:14px;margin-top:auto;display:grid}.guess-readout{min-height:48px;color:var(--amber);font-family:var(--font-mono);background:#f0b65a14;border:1px solid #f0b65a3d;border-radius:8px;align-items:center;gap:10px;padding:0 13px;font-size:.82rem;font-weight:850;display:flex}.primary-action{width:100%}.reveal-panel{border-top:1px solid var(--line);padding-top:16px}.answer-kicker{color:var(--teal-2)}.reveal-panel h2{font-family:var(--font-display);margin:-6px 0 0;font-size:clamp(1.28rem,2vw,1.9rem);line-height:1.1}.reveal-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.reveal-stats div,.summary-metrics div{background:#edf8f40e;border:1px solid #edf8f41a;border-radius:8px;align-content:center;gap:4px;min-height:76px;padding:12px;display:grid}.reveal-stats strong,.summary-metrics strong{color:var(--text);font-family:var(--font-display);font-size:1.28rem;font-weight:900}.reveal-panel p{color:var(--muted);margin:0;font-size:.98rem;font-weight:650;line-height:1.55}.result-shell{width:min(100%,1060px);margin:0 auto}.final-panel{grid-template-columns:minmax(280px,1fr) minmax(260px,.8fr);gap:18px;padding:20px;display:grid}.final-score-block{align-content:start;gap:12px;display:grid}.final-score-block h1{color:var(--teal-2);font-family:var(--font-display);margin:0;font-size:clamp(4.4rem,14vw,8.6rem);font-weight:900;line-height:.86}.final-score-block p{color:var(--muted);margin:0;font-weight:850}.performance-label{width:fit-content;min-height:42px;color:var(--amber);background:#f0b65a1a;border:1px solid #f0b65a47;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-weight:900;display:inline-flex}.share-button{background:var(--amber);color:#120d04;border-color:#f0b65a80;width:fit-content}.share-button:hover{background:#ffd08a}.summary-metrics{gap:10px;display:grid}.breakdown-panel{gap:10px;margin-top:16px;padding:14px;display:grid}.breakdown-row{background:#edf8f40b;border:1px solid #edf8f414;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.breakdown-row h2{margin:3px 0;font-size:1rem;line-height:1.2}.breakdown-row p{color:var(--muted);margin:0;font-size:.88rem;font-weight:700}.breakdown-score{justify-items:end;gap:2px;min-width:112px;display:grid}.breakdown-score strong{color:var(--teal-2);font-family:var(--font-display);font-size:1.55rem;font-weight:900;line-height:1}@media (max-width:1080px){.game-layout{grid-template-columns:150px minmax(0,1fr);grid-template-areas:"rail panel""globe globe"}.score-rail{grid-area:rail}.question-panel{grid-area:panel}.globe-stage{grid-area:globe;min-height:560px}.score-total strong{font-size:2.4rem}}@media (max-width:740px){.game-shell,.result-shell{padding:12px}.top-nav{align-items:flex-start}.brand-mark{flex-direction:column;align-items:flex-start;gap:4px}.clerk-auth-controls{flex-wrap:wrap;justify-content:flex-end}.auth-button{min-height:38px;padding:0 11px;font-size:.8rem}.game-layout{grid-template-columns:1fr;grid-template-areas:"rail""panel""globe";gap:12px;min-height:0}.score-rail{grid-template-columns:1fr 1fr;gap:10px;padding:12px;display:grid}.score-total{border-right:1px solid var(--line);border-bottom:0;grid-row:span 2;padding:0 12px 0 0}.score-total strong{font-size:2.2rem}.rail-stat{min-height:34px}.progress-dots{grid-column:1/-1;margin-top:0}.question-panel{padding:14px}.question-panel h1{font-size:1.28rem}.globe-stage{min-height:min(92vw,510px)}.globe-frame{width:min(100%,500px)}.globe-zoom-controls{gap:4px;padding:4px;top:10px;right:10px}.globe-zoom-button{width:32px;height:32px}.globe-zoom-value{min-width:42px}.final-panel{grid-template-columns:1fr;padding:16px}.breakdown-row{grid-template-columns:1fr}.breakdown-score{justify-items:start}}@media (max-width:460px){.top-nav{flex-direction:column}.clerk-auth-controls{justify-content:flex-start}.score-rail{grid-template-columns:1fr}.score-total{border-right:0;border-bottom:1px solid var(--line);padding:0 0 12px}.reveal-stats{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
