:root{color-scheme:dark;--ink:#f3f7ff;--panel:#141b2b;--panel-2:#1b2438;--line:#2b3752;--accent:#ffd23f;--accent-2:#ff7b3a;--muted:#9fb0cc;color:var(--ink);background:#0a0f1a;font-family:Inter,ui-sans-serif,system-ui,sans-serif}html[data-contrast=high]{--ink:#fff;--panel:#000;--panel-2:#000;--line:#fff;--accent:#ff0;--muted:#fff;background:#000}html[data-interface=large]{font-size:118%}*{box-sizing:border-box}[hidden]{display:none!important}body{min-height:100svh;margin:0}#runtime{flex-direction:column;align-items:center;gap:.7rem;min-height:100svh;padding:.7rem;display:flex}.title-bar{align-items:center;gap:.8rem;width:min(62rem,100%);display:flex}h1{letter-spacing:-.02em;flex:1;margin:0;font-size:1.25rem}.corn{font-variant-numeric:tabular-nums;color:var(--accent);margin:0;font-weight:800}.icon-button{border:1px solid var(--line);background:var(--panel);min-height:44px;color:inherit;cursor:pointer;border-radius:.6rem;padding:0 .9rem}.panel{border:1px solid var(--line);background:var(--panel);border-radius:1rem;gap:.6rem;width:min(38rem,100%);padding:1.1rem;display:grid}.panel h2{margin:0;font-size:1.15rem}.loadout{color:var(--accent);margin:0;font-weight:700}.row{gap:.35rem;display:grid}.row.buttons{grid-auto-columns:1fr;grid-auto-flow:column;gap:.5rem}label{color:var(--muted);font-size:.85rem}select,button{border:1px solid var(--line);background:var(--panel-2);min-height:44px;color:inherit;font:inherit;cursor:pointer;border-radius:.6rem;padding:.5rem .8rem}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--accent);color:#1a1200;border-color:#0000;font-weight:800}.huge{letter-spacing:.04em;min-height:64px;font-size:1.35rem}.hint{color:var(--muted);margin:0;font-size:.85rem}#game-ui{gap:.5rem;width:min(62rem,100%);display:grid}.banner{background:var(--panel-2);border:1px solid var(--line);text-align:center;border-radius:999px;margin:0;padding:.4rem .8rem;font-weight:700}.hud{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.hud p{margin:0;display:grid}.hud span{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-size:.66rem}.hud strong{font-variant-numeric:tabular-nums;font-size:1.2rem}.hud button{margin-left:auto}#stage-frame{border:1px solid var(--line);background:#0a0f1a;border-radius:.9rem;width:100%;position:relative;overflow:hidden}#stage{aspect-ratio:16/9;touch-action:none;width:100%;height:auto;display:block}.combo{color:var(--accent);letter-spacing:.05em;background:#0000008c;border-radius:999px;margin:0;padding:.3rem .7rem;font-weight:900;position:absolute;top:.6rem;right:.8rem}.overlay-hint{color:#fff;white-space:nowrap;background:#0000008c;border-radius:999px;padding:.3rem .8rem;position:absolute;bottom:.7rem;left:50%;transform:translate(-50%)}#launch-meter{background:#0009;border-radius:.7rem;width:min(18rem,55%);padding:.5rem .7rem;position:absolute;bottom:.8rem;left:.8rem}#launch-meter p{margin:0 0 .3rem;font-size:.85rem;font-weight:800}.meter{background:#ffffff2e;border-radius:999px;height:.85rem;display:block;overflow:hidden}.meter.small{width:5rem;height:.6rem}.meter>span{height:100%;width:var(--fill,0%);background:linear-gradient(90deg, var(--accent-2), var(--accent));display:block}#launch-meter[data-phase=charging] .meter>span{background:linear-gradient(90deg,#4fb0ff,#7fe3ff)}.controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.controls button{flex:auto;min-width:44px}.wing{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;margin:0;font-size:.7rem;display:flex}.floating{z-index:5;width:min(20rem,80%);position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}#game-ui{position:relative}.headline strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(2.4rem,9vw,4rem);line-height:1}.headline,.score,.verdict{margin:0}.score strong{color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.6rem}.corn-earned{color:var(--accent);margin:0;font-weight:800}.breakdown{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.breakdown li{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.2rem .55rem;font-size:.76rem}dl{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.5rem;margin:0;display:grid}dt{color:var(--muted);font-size:.72rem}dd{font-variant-numeric:tabular-nums;margin:0;font-size:1rem;font-weight:700}.celebration{border:1px solid var(--accent);background:#ffd23f1f;border-radius:.7rem;gap:.25rem;padding:.6rem .8rem;display:grid}.celebration p{margin:0;font-weight:700}.scoreboard{border:1px solid var(--line);border-radius:.7rem;gap:.2rem;padding:.6rem .8rem;display:grid}.scoreboard p{font-variant-numeric:tabular-nums;margin:0}.scoreboard .winner{color:var(--accent);font-weight:900}dialog{border:1px solid var(--line);background:var(--panel);color:inherit;border-radius:1rem;width:min(34rem,94vw);max-height:86svh}dialog::backdrop{background:#0009}.dialog-content{gap:.6rem;display:grid}.dialog-content.wide{max-height:76svh;overflow-y:auto}.dialog-head{background:var(--panel);justify-content:space-between;align-items:center;gap:.6rem;padding-bottom:.4rem;display:flex;position:sticky;top:0}.dialog-head h2{flex:1;margin:0;font-size:1.1rem}dialog h3{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:.4rem 0 0;font-size:.8rem}dialog label{min-height:44px;color:inherit;justify-content:space-between;align-items:center;gap:1rem;display:flex}.cards{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.5rem;display:grid}.card{text-align:left;align-content:start;gap:.2rem;min-height:5.4rem;padding:.6rem;display:grid}.card[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.card strong{font-size:.9rem}.card small{color:var(--muted);font-size:.7rem;line-height:1.35}.rarity{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:.68rem}.card[data-rarity=legendary] .rarity,.card[data-rarity=mythic] .rarity{color:var(--accent-2)}.list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.list li{border:1px solid var(--line);border-radius:.6rem;gap:.1rem;padding:.5rem .7rem;display:grid}.list li.done{border-color:var(--accent)}.list small{color:var(--muted);font-size:.74rem}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}html[data-motion=reduced] *{transition:none!important;animation:none!important}@media (width<=640px){.hud .secondary{display:none}.title-bar h1{font-size:1.05rem}}
