:root{--bg: #070b14;--panel: rgba(12, 20, 36, .94);--cyan: #4de2ff;--pink: #ff4d9a;--white: #eef6ff;--muted: rgba(238, 246, 255, .65);--line: rgba(77, 226, 255, .35);--font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;min-height:100dvh;overflow:hidden;background:#04060c;color:var(--white);font-family:var(--font);-webkit-user-select:none;user-select:none;touch-action:manipulation}#app{position:relative;width:100%;height:100%;min-height:100dvh;max-width:480px;margin:0 auto;background:#000}#game{display:block;width:100%;height:100%;min-height:100dvh;background:#0b1220}.hud{position:absolute;top:0;left:0;right:0;z-index:5;padding:max(.55rem,env(safe-area-inset-top)) .85rem .4rem;pointer-events:none}.hud .row{display:flex;justify-content:space-between;align-items:baseline;font-weight:800;font-size:.95rem;text-shadow:0 2px 8px #000;gap:.5rem}#place{color:var(--cyan);font-size:.82rem;letter-spacing:.04em}.hud .row.sub{margin-top:.2rem;font-size:.78rem;font-weight:700;justify-content:space-between}.hp{color:#ff6b8a;letter-spacing:.12em;text-shadow:0 1px 6px #000}.tip-inline{color:var(--muted);font-weight:600;font-size:.68rem}.boost-bar{margin-top:.4rem;height:8px;border-radius:999px;background:#ffffff14;border:1px solid var(--line);overflow:hidden}.boost-bar.thin{height:5px;margin-top:.2rem}.boost-bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#1a8cff,var(--cyan));transition:width .08s linear}.p2-hud{margin-top:.45rem;font-size:.78rem;font-weight:700;color:var(--pink);text-shadow:0 1px 4px #000}.p2-hud .boost-bar i{background:linear-gradient(90deg,#a02060,var(--pink))}.tip{margin:.35rem 0 0;font-size:.7rem;color:var(--muted);text-align:center;text-shadow:0 1px 4px #000}.touch{position:absolute;left:0;right:0;bottom:0;z-index:20;display:flex;gap:.5rem;justify-content:space-between;padding:.55rem .65rem max(.75rem,env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,rgba(0,0,0,.55))}.touch2{bottom:auto;top:50%;transform:translateY(-50%);padding:.4rem .5rem;background:linear-gradient(90deg,rgba(0,0,0,.45),transparent 30%,transparent 70%,rgba(0,0,0,.45));z-index:19}.touch2 .tbtn{min-height:48px;font-size:.75rem;border-color:#ff4d9a73}.touch[hidden],.touch2[hidden]{display:none!important}.tbtn{flex:1;min-height:64px;border:2px solid var(--line);border-radius:16px;background:#0a1220e6;color:var(--white);font:inherit;font-weight:800;font-size:1.1rem;touch-action:none;box-shadow:0 4px #0006}.tbtn.boost{flex:1.2;border-color:#ff4d9a8c;color:#ffc0dc;font-size:.85rem;letter-spacing:.06em}.tbtn:active,.tbtn.is-down{transform:translateY(2px);background:#1e5078d9}.menu{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:1rem;background:#040810b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto}.menu[hidden]{display:none!important}.card{width:min(100%,380px);background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:1.2rem;text-align:center;box-shadow:0 20px 50px #00000080}.eyebrow{margin:0;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);font-weight:700}h1{margin:.35rem 0 0;font-size:2.1rem;line-height:1.05;letter-spacing:-.02em}h2{margin:0;font-size:1.4rem;color:var(--cyan)}.blurb{margin:.75rem 0 1rem;color:var(--muted);font-size:.92rem;line-height:1.4;white-space:pre-wrap}.pick{display:block;text-align:left;font-size:.78rem;font-weight:700;margin-bottom:.75rem}.pick select,.pick input{display:block;width:100%;margin-top:.35rem;padding:.55rem .65rem;border-radius:10px;border:1px solid var(--line);background:#00000059;color:var(--white);font:inherit;text-transform:uppercase;letter-spacing:.08em}.pick select{text-transform:none;letter-spacing:normal}.btn{width:100%;border:none;border-radius:999px;padding:.8rem 1.1rem;font:inherit;font-weight:800;cursor:pointer;color:#041018;background:linear-gradient(180deg,#7af0ff,#2ec8ff);box-shadow:0 4px #0a6a8a;margin-top:.35rem}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #0a6a8a}.btn.ghost{background:transparent;color:var(--cyan);border:1px solid var(--line);box-shadow:none;margin-top:.5rem}.online-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.35rem}.online-row .btn{margin-top:0;padding:.65rem .5rem;font-size:.82rem}.note{margin:.75rem 0 0;font-size:.65rem;color:#eef6ff66;line-height:1.35}
