:root{--fg:#f3f5fa;--dim:#9aa3b5;--panel:#080a109e;--accent:#ffd23f;--energy:#38e07b;--nitro:#36c8ff;--danger:#ff5a5f;--gutter:max(12px, env(safe-area-inset-left));--gutter-r:max(12px, env(safe-area-inset-right));--gutter-t:max(10px, env(safe-area-inset-top));--gutter-b:max(12px, env(safe-area-inset-bottom))}html,body{touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,sans-serif}.hidden,[hidden]{display:none!important}.dim{color:var(--dim)}.small{letter-spacing:.12em;margin:14px 0 6px;font-size:12px}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;border:0}button:disabled{cursor:default;opacity:.45}button.primary{background:var(--accent);color:#111;letter-spacing:.08em;border-radius:10px;width:100%;min-height:52px;margin-top:16px;font-size:18px;font-weight:800;display:block}button.secondary{background:#ffffff1f;border-radius:10px;width:100%;min-height:44px;margin-top:8px;font-weight:700;display:block}.menu{z-index:20;background:#0304088c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:auto}.menu .card,.death .card{background:var(--panel);-webkit-backdrop-filter:blur(6px);text-align:center;box-sizing:border-box;overscroll-behavior:contain;touch-action:pan-y;width:min(340px,100vw - 32px);max-height:calc(100vh - 16px);border-radius:16px;max-height:calc(100dvh - 16px);margin:auto;padding:24px 22px;overflow-y:auto;box-shadow:0 10px 40px #00000080}.menu h1{letter-spacing:.14em;margin:0;font-size:30px;font-weight:900}.menu h1+p{margin:4px 0 18px}.menu input{box-sizing:border-box;width:100%;min-height:48px;color:var(--fg);font:inherit;text-align:center;-webkit-user-select:text;user-select:text;background:#00000059;border:2px solid #ffffff2e;border-radius:10px;padding:0 14px;font-size:18px}.menu input:focus{border-color:var(--accent);outline:none}.regions{flex-direction:column;gap:6px;display:flex}.region{letter-spacing:.06em;background:#ffffff14;border:2px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;min-height:44px;padding:0 14px;font-weight:700;display:flex}.region.selected{border-color:var(--accent);background:#ffd23f1f}.region .rtt{color:var(--dim);font-weight:500}.region.offline .rtt{color:var(--danger)}.region:disabled{opacity:.55}.note{min-height:1.2em;color:var(--dim);margin:10px 0 0;font-size:14px}.note.error{color:var(--danger)}.hud{pointer-events:none;z-index:10;font-size:14px;position:fixed;inset:0}.hud .lb,.hud .side{top:var(--gutter-t);background:var(--panel);text-shadow:0 1px 2px #000;border-radius:10px;margin:0;padding:8px 10px;position:absolute}.hud .lb{left:var(--gutter);min-width:170px;list-style:none}.hud .lb li{white-space:nowrap;align-items:center;gap:6px;line-height:20px;display:flex}.hud .lb li.me{color:var(--accent);font-weight:800}.hud .lb li.gap{color:var(--dim);justify-content:center;line-height:12px}.hud .lb .rank{text-align:right;width:18px;color:var(--dim)}.hud .lb li.me .rank{color:var(--accent)}.hud .lb .swatch{border-radius:3px;flex:none;width:10px;height:10px}.hud .lb .pname{text-overflow:ellipsis;flex:1;max-width:120px;overflow:hidden}.hud .lb .bot{color:var(--dim);background:#ffffff24;border-radius:4px;padding:0 4px;font-size:10px}.hud .lb .score{font-variant-numeric:tabular-nums;margin-left:auto;padding-left:8px}.hud .side{right:var(--gutter-r);text-align:right;min-width:150px}.hud .fields{font-size:18px;font-weight:800}.hud .best{color:var(--accent);letter-spacing:.1em;font-size:12px;font-weight:700}.hud .feed{flex-direction:column;gap:2px;margin-top:6px;display:flex}.hud .feed .kill{color:var(--dim);font-size:13px}.hud .feed .kill.mine{color:var(--fg);font-weight:700}.hud .bars{left:50%;bottom:calc(var(--gutter-b) + 70px);flex-direction:column;gap:6px;width:min(360px,60vw);display:flex;position:absolute;transform:translate(-50%)}.hud .bar{background:#0000008c;border-radius:8px;height:16px;position:relative;overflow:hidden}.hud .bar.nitro{height:10px}.hud .bar .fill{width:0;position:absolute;inset:0 auto 0 0}.hud .bar.energy .fill{background:var(--energy)}.hud .bar.nitro .fill{background:var(--nitro)}.hud .bar .label{letter-spacing:.1em;text-align:center;color:#fff;text-shadow:0 1px 2px #000;font-size:11px;font-weight:800;line-height:16px;position:absolute;inset:0}.hud .bar.nitro .label{font-size:8px;line-height:10px}.hud .abilities{left:50%;bottom:var(--gutter-b);gap:14px;display:flex;position:absolute;transform:translate(-50%)}.hud .ability{--p:1;--ring:var(--dim);background:conic-gradient(var(--ring) calc(var(--p) * 360deg), #ffffff1f 0);pointer-events:auto;touch-action:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.hud .ability:before{content:"";background:#080a10d9;border-radius:50%;position:absolute;inset:5px}.hud .ability>span{line-height:1.1;position:relative}.hud .ability .name{letter-spacing:.08em;font-size:9px;font-weight:800}.hud .ability .key{color:var(--dim);font-size:15px;font-weight:800}.hud .ability.ready{--ring:var(--accent)}.hud .ability.nitro{--ring:var(--nitro)}.hud .ability.nitro.ready{--ring:var(--accent)}.hud .ability.low{opacity:.4}.hud .ability.down:before{background:#ffd23f59}.hud .banner{background:var(--panel);border-radius:10px;padding:10px 16px;font-weight:700;position:absolute;top:40%;left:50%;transform:translate(-50%)}.hud .death{pointer-events:auto;background:#28000659;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hud .death button.primary{min-height:64px}.hud .death h2{letter-spacing:.14em;color:var(--danger);margin:0 0 8px;font-size:28px}.hud .death p{margin:6px 0;font-size:16px}.hud .death .killer{font-size:18px;font-weight:800}.hud.touch .bars{top:var(--gutter-t);width:auto;bottom:auto;left:var(--gutter);right:var(--gutter-r);flex-direction:row;align-items:center;transform:none}.hud.touch .bar.energy{flex:2}.hud.touch .bar.nitro{flex:1;height:16px}.hud.touch .bar.nitro .label{font-size:10px;line-height:16px}.hud.touch .lb,.hud.touch .side{top:calc(var(--gutter-t) + 24px)}.hud.touch .lb{min-width:0;padding:6px 8px;font-size:11px}.hud.touch .lb li{gap:4px;line-height:15px}.hud.touch .lb .pname{max-width:72px}.hud.touch .lb .rank{width:14px}.hud.touch .side{min-width:0;padding:6px 8px;font-size:11px}.hud.touch .fields{font-size:14px}.hud.touch .abilities{left:auto;right:var(--gutter-r);flex-direction:column-reverse;gap:12px;transform:none}.hud.touch .ability{width:76px;height:76px}.hud.touch .ability .name{font-size:12px}.hud.touch .ability .key{display:none}@media (max-height:420px){.hud.touch .ability{width:66px;height:66px}.hud.touch .abilities{gap:8px}.hud.touch .lb li{line-height:13px}.menu .card{width:min(420px,100vw - 32px);padding:12px 16px}.menu h1{font-size:20px}.menu h1+p{display:none}.menu input{min-height:40px;margin-top:8px;font-size:16px}.small{margin:8px 0 4px}.regions{flex-flow:wrap}.region{flex:140px;min-height:40px}.menu button.primary{min-height:48px;margin-top:10px}.note{margin-top:6px}.hud .death .card{padding:12px 16px}.hud .death h2{margin-bottom:4px;font-size:22px}.hud .death p{margin:3px 0}}
