:root{color-scheme:dark;--bg: #071018;--ink: #e7f2ff;--muted: #9eb0c4;--gold: #f0b429;--gold-2: #d4892a;--line: rgba(232, 242, 255, .14);--panel: rgba(7, 16, 28, .9);--danger: #ff5d3a;font-family:Trebuchet MS,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);overflow:hidden}body{background:radial-gradient(ellipse at 50% 30%,#14324c,#071018 58%)}button,input{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}#app{height:100dvh;display:flex;flex-direction:column;min-height:0}.theater{flex:1;min-height:0;display:flex;justify-content:center}.ad-column,.theater-tag{display:none}.stage-column{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}#stage{position:relative;flex:1;min-height:0;background:#06263c;touch-action:none;user-select:none;-webkit-user-select:none;overflow:hidden;container-type:inline-size}#c{position:absolute;inset:0;width:100%;height:100%;display:block}.ad-slot{position:relative;border:1px dashed rgba(190,210,230,.38);background:#ffffff08;border-radius:12px;min-height:72px}.ad-slot:before{content:"Ad slot";position:absolute;inset:0;display:grid;place-items:center;color:#bed2e66b;letter-spacing:.18em;text-transform:uppercase;font-size:11px;pointer-events:none}.ad-slot-bottom{flex:none;height:72px;margin:8px}.ad-kicker,.theater-tag{margin:0;letter-spacing:.16em;text-transform:uppercase;font-size:11px;color:var(--muted)}#hud{position:absolute;inset:0;z-index:3;pointer-events:none}#hud button{pointer-events:auto}#vignette{position:absolute;inset:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 80px 20px #ff281400;transition:box-shadow .12s linear}.banner{position:absolute;top:18%;left:50%;z-index:4;margin:0;transform:translate(-50%) translateY(8px);opacity:0;pointer-events:none;font-family:Impact,Arial Black,sans-serif;letter-spacing:.08em;font-size:clamp(22px,8cqi,40px);text-align:center;color:#fff;text-shadow:0 2px 0 #123,0 8px 24px rgba(0,0,0,.45);white-space:nowrap}.banner.show{animation:banner-in 1.7s ease forwards}@keyframes banner-in{0%{opacity:0;transform:translate(-50%) translateY(12px) scale(.96)}12%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}72%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-8px)}}.hud-top,.hud-bottom{position:absolute;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.hud-top{top:10px}.hud-bottom{bottom:12px;align-items:flex-end}.hud-center{position:absolute;top:58px;left:12px;right:12px;display:flex;flex-direction:column;align-items:center;gap:6px}.icon-btn,.round-btn,.primary,.ghost,.text-btn{border:0;background:transparent}.icon-btn{width:42px;height:42px;border-radius:50%;background:#040c168c;border:1px solid var(--line);font-size:16px}.icon-btn.is-muted{opacity:.45;text-decoration:line-through}.score-block{text-align:center;text-shadow:0 2px 8px rgba(0,0,0,.45)}.score-block span{display:block;font-family:Impact,Arial Black,sans-serif;font-size:clamp(28px,9cqi,42px);letter-spacing:.04em;line-height:.9}.score-block small{color:var(--gold);letter-spacing:.12em;font-size:11px}#sector{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#d5e8f8;text-shadow:0 2px 8px rgba(0,0,0,.55)}#bossbar{width:min(280px,80%)}.boss-label{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}.bar{height:8px;border-radius:99px;background:#00000073;overflow:hidden;border:1px solid rgba(255,255,255,.2)}#boss-fill{height:100%;width:100%;background:linear-gradient(90deg,#ffb020,#ff4d3a)}#statuses{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;min-height:1.2em}#statuses span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;background:#04101c8c;border-radius:99px;padding:3px 8px}.round-btn{width:74px;height:74px;border-radius:50%;background:#050e1ab8;border:2px solid rgba(240,180,41,.85);color:var(--gold);display:grid;place-items:center;position:relative;box-shadow:0 8px 20px #00000047}.round-btn svg{width:32px;height:32px}.round-label{position:absolute;bottom:8px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.round-btn.special{background:radial-gradient(circle at 50% 50%,rgba(240,180,41,calc(var(--p, 1) * .35)),#050e1acc 70%)}.round-btn:disabled{opacity:.4}.badge{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;border-radius:99px;background:var(--danger);color:#fff;font-size:12px;display:grid;place-items:center;padding:0 5px}.hull-block{text-align:center}.pips{display:flex;gap:4px;justify-content:center}.pips i{width:14px;height:10px;border-radius:2px;background:#fff3;display:block}.pips i.on{background:#7dffa1;box-shadow:0 0 8px #7dffa199}.coin-line{margin-top:6px;display:inline-flex;align-items:center;gap:6px;font-family:Impact,Arial Black,sans-serif;letter-spacing:.06em;font-size:18px}.coin-dot{width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff4c4,var(--gold) 45%,var(--gold-2))}.overlay{position:absolute;inset:0;z-index:6;display:flex}.overlay[hidden]{display:none!important}.title-overlay{align-items:flex-end;justify-content:center;pointer-events:none;background:linear-gradient(180deg,#040c1600,#040c160d 34%,#040c16c7 62%,#040a12f0)}.dim{align-items:center;justify-content:center;padding:16px;background:#040a129e}.panel{pointer-events:auto;width:min(440px,100%);background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:18px 18px 16px;box-shadow:0 18px 50px #00000059}.title-panel{background:transparent;border:0;box-shadow:none;text-align:center;padding:8px 18px 22px}.eyebrow{margin:0 0 4px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-size:11px}h1,h2{margin:0;font-family:Impact,Arial Black,sans-serif;font-weight:400;letter-spacing:.03em}h1{font-size:clamp(46px,16cqi,78px);line-height:.88;text-transform:uppercase;background:linear-gradient(180deg,#fff 10%,#f6d78a,#e08a2e);-webkit-background-clip:text;background-clip:text;color:transparent}h2{font-size:clamp(28px,8cqi,36px);text-transform:uppercase}.credit{margin:8px 0 0;color:#d5e6f6;letter-spacing:.02em}.tagline,.note,.best{color:var(--muted)}.tagline{margin:8px 0 14px}.best{margin:10px 0 0;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.row,.stack{display:flex;gap:8px}.stack{flex-direction:column}.row{justify-content:center;flex-wrap:wrap}.primary,.ghost{border-radius:999px;padding:12px 18px;min-height:46px}.primary{background:linear-gradient(180deg,#ffd56a,#e09a22);color:#2a1a04;font-weight:700}.ghost{background:#ffffff0a;border:1px solid var(--line)}.text-btn{margin-top:6px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.howto{margin:12px 0 16px;padding-left:18px}.howto li{margin:8px 0;line-height:1.35}.big-score{font-family:Impact,Arial Black,sans-serif;font-size:48px;margin:8px 0;letter-spacing:.04em}.shop-coins{margin:6px 0 10px;color:var(--gold);letter-spacing:.08em}.upgrade{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:10px 0;border-top:1px solid var(--line);align-items:center}.upgrade b{font-size:15px}.upgrade small{color:var(--muted);grid-column:1}.upgrade button{grid-row:1 / span 2;grid-column:2}.error{position:absolute;inset:auto 16px 16px;z-index:8;background:#3a1212;padding:12px;border-radius:12px}@media (max-width: 420px){.round-btn{width:64px;height:64px}.round-btn svg{width:26px;height:26px}.hud-bottom{left:8px;right:8px}}@media (min-width: 1024px) and (orientation: landscape){.theater{align-items:stretch;gap:18px;padding:14px 18px 18px}.ad-column{display:flex;flex:1;max-width:340px;min-width:160px;flex-direction:column;gap:8px}.ad-column .ad-slot{flex:1}.stage-column{flex:0 0 auto;align-items:center;justify-content:center}.theater-tag{display:block;margin-bottom:8px}#stage{flex:none;height:min(calc(100dvh - 56px),920px);width:calc(min(calc(100dvh - 56px),920px)*.5625);max-width:42vw;border-radius:22px;box-shadow:0 24px 70px #00000073;border:1px solid rgba(255,255,255,.08)}.ad-slot-bottom{display:none}}.scroll-panel{max-height:min(78dvh,680px);overflow:auto}.scroll-panel h3{margin:14px 0 4px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.meta-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}.meta-row b{display:block}.meta-row small{display:block;opacity:.72;font-size:12px}.meta-row button{flex:0 0 auto}@media (prefers-reduced-motion: reduce){.banner.show{animation:none;opacity:1}}
