:root{color-scheme:dark;--space: #060a10;--panel: #0e1a24;--field: #142532;--line: #2a4252;--line-strong: #3e5e70;--ink: #f2eee6;--soft: #cfdce2;--muted: #a9bcc6;--dim: #7f95a1;--amber: #ffb347;--flare: #ff8a6b;--display: "Chakra Petch", system-ui, sans-serif;--mono: "Share Tech Mono", ui-monospace, monospace;--w-start: 440px;--h-start: 260px;--w-question: 440px;--h-question: 200px;--w-resolution: 440px;--h-resolution: 296px;--w-summary: 440px;--h-summary: 390px;--h-dock: 114px;--glass: rgb(14 26 36 / .72);--glass-edge: rgb(62 94 112 / .45)}html,body{margin:0;height:100%;background:var(--space);color:var(--ink);font-family:var(--display);overflow:hidden}#app{position:relative;height:100%}#scene,#hud{position:absolute;inset:0;display:block}#scene{image-rendering:pixelated}#hud{pointer-events:none}.reveal{position:absolute;inset:0 24% 0 0;display:grid;place-items:start center;padding-top:128px;pointer-events:none}.reveal[hidden]{display:none}.reveal-flash{position:fixed;inset:0;opacity:0}.reveal-tier{position:relative;font-family:var(--mono);font-weight:700;font-size:calc(clamp(36px,6vw,88px) * var(--reveal-scale, 1));letter-spacing:.08em;white-space:nowrap}@media(max-width:820px){.reveal{inset:0;padding-top:36vh}}.topbar{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:18px 24px 0 56px;pointer-events:none}.topbar>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:20px;letter-spacing:.12em}.info-dialog{max-width:min(440px,calc(100% - 32px));box-sizing:border-box;padding:20px 22px;border:1px solid var(--glass-edge);border-radius:14px;background:#0e1a24eb;color:var(--soft);font-size:16px;line-height:1.5}.info-dialog::backdrop{background:#060a108c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.info-dialog h2{margin:0;font-size:24px;color:var(--ink)}.info-dialog a{color:var(--amber)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-close{border:none;background:none;color:var(--muted);font-size:28px;line-height:1;cursor:pointer}.dialog-close:focus-visible{outline:2px solid var(--ink);border-radius:4px}.stage{position:absolute;inset:0;pointer-events:none}.panel{position:absolute;inset:0;opacity:0;visibility:hidden}.panel[data-shown=true]{opacity:1;visibility:visible}.stage.animated .panel{transition:opacity .15s ease,visibility 0s linear .15s}.stage.animated .panel[data-shown=true]{transition:opacity .15s ease .15s,visibility 0s linear .15s}@media(prefers-reduced-motion:reduce){.stage.animated .panel,.stage.animated .panel[data-shown=true]{transition:none}}.float{position:absolute;left:56px;top:max(64px,calc((100% + 64px - 44px - var(--h-dock) - var(--h)) / 2));width:var(--w);height:var(--h);box-sizing:border-box;padding:20px 22px;display:flex;flex-direction:column;gap:14px;pointer-events:auto}.start-box{--w: var(--w-start);--h: var(--h-start)}.question-box{--w: var(--w-question);--h: var(--h-question)}.float.resolution{--w: var(--w-resolution);--h: var(--h-resolution)}.summary-box{--w: var(--w-summary);--h: var(--h-summary);gap:10px}.dock{position:absolute;left:50%;bottom:28px;transform:translate(-50%);width:min(560px,calc(100% - 32px));height:var(--h-dock);box-sizing:border-box;padding:16px 20px;display:flex;flex-direction:column;pointer-events:auto}.float,.dock,.hint-pop{background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-edge);border-radius:14px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.actions{margin-top:auto}h1{margin:0;line-height:1.15;font-weight:700;text-wrap:balance}.hero{font-size:36px}.lede{margin:0;font-size:16px;line-height:1.5;color:var(--soft)}.question{font-size:22px;font-weight:600;color:var(--soft)}.target{display:block;margin:2px 0;font-size:34px;font-weight:700;color:var(--amber)}.float-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px}.hint-anchor{position:relative;display:flex}.hint-pop{position:absolute;right:-12px;bottom:calc(100% + 14px);z-index:3;width:max-content;max-width:280px;margin:0;padding:10px 14px;border-radius:10px;background:#0e1a24eb;font-family:var(--mono);font-size:14px;line-height:1.4;color:var(--soft)}.hint-pop:after{content:"";position:absolute;right:20px;bottom:-6px;width:10px;height:10px;background:#0e1a24eb;border-right:1px solid var(--glass-edge);border-bottom:1px solid var(--glass-edge);transform:rotate(45deg)}.hint-pop[hidden]{display:none}.icon-button{display:inline-flex;margin:-4px;padding:4px;border:none;background:none;cursor:pointer;opacity:.8}.icon-button:hover,.icon-button[aria-expanded=true]{opacity:1}.icon-button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.icon-button[hidden]{display:none}.btn.next{align-self:flex-start;min-width:200px;margin-top:auto}.eyebrow,.label,.seconds,label{font-family:var(--mono)}.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber)}.label,label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.btn{border-radius:8px;height:52px;padding:0 24px;border:none;background:var(--amber);color:var(--panel);font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.btn:hover{background:#ffc56e}.btn:focus-visible,.link:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.link{min-height:44px;border:none;background:none;color:var(--soft);font-family:var(--display);font-weight:600;font-size:15px;text-decoration:underline;cursor:pointer}.progress{display:flex;gap:6px}.progress span{width:28px;height:6px;background:var(--line)}.answer{display:flex;flex-direction:column;gap:8px}.row{position:relative;display:flex;gap:10px}.input-pop{position:absolute;left:0;bottom:calc(100% + 14px);z-index:3;width:max-content;max-width:min(420px,100%);margin:0;padding:10px 14px;border:1px solid var(--glass-edge);border-radius:10px;background:#0e1a24eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--mono);font-size:14px;line-height:1.4;color:var(--flare);opacity:0;pointer-events:none}.input-pop.shown{opacity:1}.input-pop:after{content:"";position:absolute;left:24px;bottom:-6px;width:10px;height:10px;background:#0e1a24eb;border-right:1px solid var(--glass-edge);border-bottom:1px solid var(--glass-edge);transform:rotate(45deg)}#answer{border-radius:8px;flex:1;min-width:0;height:52px;box-sizing:border-box;padding:0 16px;border:1px solid var(--line-strong);background:var(--field);color:var(--ink);font-family:var(--display);font-weight:600;font-size:20px}#answer::placeholder{color:var(--dim)}#answer:focus{outline:2px solid var(--amber);outline-offset:2px}.fuel-row{display:flex;align-items:center;gap:12px}.fuel{flex:1;display:flex;gap:3px}.fuel span{flex:1;height:8px;background:var(--line)}.fuel span.on{background:var(--amber)}.fuel span.low{background:var(--flare)}.seconds{min-width:36px;text-align:right;font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}.versus{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:6px}.side{display:flex;flex-direction:column;gap:4px;min-width:0}.side-label{font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);min-height:2.6em;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.side-label.country{color:var(--ink)}.side-value{font-size:26px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap}.thrust-row{display:flex;align-items:center;gap:12px}.thrust{flex:1;display:flex;gap:3px}.thrust span{flex:1;height:10px;background:var(--line)}.thrust-note{font-family:var(--mono);font-size:14px;color:var(--muted);white-space:nowrap}.answer-outcome{display:flex;align-items:center;gap:16px;padding-top:4px;white-space:nowrap}.answer-tier{font-size:44px;font-weight:700;line-height:1;text-transform:uppercase}.gain-tag{position:relative;padding:4px 18px 4px 10px;background:var(--amber);color:var(--panel);font-family:var(--mono);font-size:18px;font-variant-numeric:tabular-nums;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%)}.float.resolution{border-color:var(--tier)}.total-block{display:flex;flex-direction:column;gap:4px}.total{font-size:52px;font-weight:700;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}.rank{align-self:flex-start;font-size:16px;color:var(--soft);opacity:0;transform-origin:left center}.flight-chart{display:block;width:100%;height:auto;overflow:visible}.chart-base{stroke:var(--line);stroke-width:1}.chart-segment{stroke-width:3;stroke-linecap:square}.chart-point{fill:var(--ink)}.chart-tick,.chart-total{font-family:var(--mono);font-size:9px;fill:var(--muted);text-anchor:middle}.chart-total{font-size:11px;fill:var(--amber);text-anchor:start}.share-preview{width:100%;box-sizing:border-box;padding:6px 12px;border:1px dashed var(--line-strong);border-radius:8px;background:#14253299;color:var(--ink);font-family:var(--mono);font-size:14px;line-height:1.5;text-align:left;white-space:pre-line;cursor:pointer;-webkit-user-select:text;user-select:text}.share-preview:hover{border-color:var(--amber)}.share-preview:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.summary-actions{margin-top:auto;display:flex;align-items:center;gap:14px}@media(max-width:820px){:root{--w-start: auto;--h-start: 180px;--w-question: auto;--h-question: 160px;--w-resolution: auto;--h-resolution: 240px;--w-summary: auto;--h-summary: 300px;--h-dock: 102px}.topbar{padding:10px 12px 0 16px}.float{left:16px;right:16px;top:calc(42% + 8px);padding:14px 16px;gap:10px}.dock{left:16px;right:16px;bottom:16px;transform:none;width:auto;padding:12px 14px}.hero{font-size:26px}.lede{font-size:15px}.question{font-size:18px}.target{font-size:26px}.side-value{font-size:20px}.side-label{font-size:12px}.answer-tier{font-size:30px}.gain-tag{font-size:15px}.total{font-size:36px}.total-block{flex-direction:row;align-items:baseline;gap:12px}.rank{font-size:14px}.summary-box{gap:7px}.share-preview{font-size:13px;padding:6px 10px}.btn,#answer{height:48px}.btn{padding:0 16px;font-size:15px}#answer{font-size:18px}.summary-actions .btn{flex:1}}
