@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/orbitron-latin-500-normal.1c7ec788.woff2) format("woff2"),url(/_next/static/media/orbitron-latin-500-normal.2e998d23.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/orbitron-latin-700-normal.56740425.woff2) format("woff2"),url(/_next/static/media/orbitron-latin-700-normal.d1606ff1.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:900;src:url(/_next/static/media/orbitron-latin-900-normal.1f4ef87d.woff2) format("woff2"),url(/_next/static/media/orbitron-latin-900-normal.a6ffcbc0.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-cyrillic-ext-400-normal.17d05b18.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-ext-400-normal.7daf4077.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-cyrillic-400-normal.17524150.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-400-normal.29859c59.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-greek-400-normal.77d339c7.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-greek-400-normal.4a5b0cb1.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-vietnamese-400-normal.553f85d1.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-vietnamese-400-normal.fd17702b.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-latin-ext-400-normal.4d63b447.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-ext-400-normal.ef62d646.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/jetbrains-mono-latin-400-normal.db9d659a.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-400-normal.b0c7be19.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-cyrillic-ext-500-normal.d9de1144.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-ext-500-normal.02ec8c39.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-cyrillic-500-normal.ae6258df.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-500-normal.00657183.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-greek-500-normal.89c6cba8.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-greek-500-normal.96a101cf.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-vietnamese-500-normal.3bbdce79.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-vietnamese-500-normal.5b6505bb.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-latin-ext-500-normal.b7bedb53.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-ext-500-normal.d0559b71.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/jetbrains-mono-latin-500-normal.af2e87f5.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-500-normal.24c9023a.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/jetbrains-mono-cyrillic-ext-700-normal.1a0d0474.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-ext-700-normal.5f007e01.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/jetbrains-mono-cyrillic-700-normal.ffc7bcaa.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-cyrillic-700-normal.d894fc2f.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/jetbrains-mono-greek-700-normal.c396066f.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-greek-700-normal.01f43261.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/jetbrains-mono-vietnamese-700-normal.a2cb9bd4.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-vietnamese-700-normal.ba52a63c.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/jetbrains-mono-latin-ext-700-normal.3125316a.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-ext-700-normal.7c3a7a66.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/jetbrains-mono-latin-700-normal.9545a3d1.woff2) format("woff2"),url(/_next/static/media/jetbrains-mono-latin-700-normal.c9484cde.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#070a0f;--bg-elev:#0d1219;--surface:#121923;--surface-2:#1a2330;--surface-3:#232f40;--border:rgba(255,255,255,0.1);--border-strong:#67768a;--text:#eef2f7;--text-muted:#a3afbf;--text-dim:#8392a6;--accent:#f59e0b;--accent-hover:#fbbf24;--on-accent:#0b0f14;--positive:#22c55e;--danger:#ef4444;--info:#38bdf8;--warning:#f59e0b;--ring:#5eead4;--radius:6px;--radius-lg:10px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--shadow:0 8px 28px rgba(0,0,0,0.45);--font-display:"Orbitron","Eurostile","Bank Gothic",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--font-body:var(--font-mono);--ease:cubic-bezier(0.2,0.8,0.2,1);--dur-fast:120ms;--dur-fade:220ms;--dur:200ms;--dur-slow:400ms;--z-hud:10;--z-overlay:100;--z-modal:200}*{box-sizing:border-box;margin:0}body,html{height:100%}body{background:var(--bg);color:var(--text);font:400 16px/1.5 var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,select,textarea{font-family:inherit}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:.06em;line-height:1.2;text-wrap:balance}p{text-wrap:pretty}a{color:var(--info)}svg{flex:none}kbd{font:500 .85em var(--font-mono)}code{font-family:var(--font-mono);background:var(--bg-elev);padding:1px 6px;border-radius:4px;font-size:.9em}:focus{outline:none}:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-radius:4px}.skip-link{position:fixed;left:var(--s4);top:-64px;z-index:1000;background:var(--accent);color:var(--on-accent);padding:var(--s3) var(--s4);font-weight:700;border-radius:var(--radius);transition:top var(--dur-fast)}.skip-link:focus{top:var(--s4)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.faq{display:flex;flex-direction:column;gap:var(--s2)}.faq details{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);min-height:48px;padding:0 var(--s4);cursor:pointer;list-style:none;font-weight:600}.faq summary::-webkit-details-marker{display:none}.faq summary svg{flex:none;color:var(--text-muted);transition:transform var(--dur) var(--ease)}.faq details[open] summary svg{transform:rotate(180deg)}.faq details[open]{border-color:var(--border-strong)}.faq-body{padding:0 var(--s4) var(--s4);display:flex;flex-direction:column;gap:var(--s3);color:var(--text-muted);font-size:.9rem;line-height:1.55;animation:fade-in var(--dur) var(--ease)}.faq-body b,.faq-body i{color:var(--text)}.faq-body ul{margin:0;padding-left:var(--s5);display:flex;flex-direction:column;gap:var(--s2)}.faq-body code{font-family:var(--font-mono);font-size:.85em;color:var(--text)}.page-fade{animation:fade-in var(--dur-fade) var(--ease)}html[data-leaving] .page-fade{opacity:0;transition:opacity var(--dur-fade) ease-in;pointer-events:none}.fade-swap{animation:fade-in var(--dur-fade) var(--ease)}.fade-swap.fade-out{opacity:0;animation:none;transition:opacity var(--dur-fade) ease-in;pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:44px;padding:0 var(--s5);font:700 .8rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur-fast) var(--ease),color var(--dur) var(--ease)}.btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--surface-3);border-color:var(--text-dim)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn-primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn-ghost:hover:not(:disabled){background:var(--surface);color:var(--text);border-color:var(--border)}.btn-danger{background:transparent;border-color:var(--danger);color:#fca5a5}.btn-danger:hover:not(:disabled){background:rgba(239,68,68,.14);border-color:var(--danger)}.btn-lg{min-height:56px;font-size:.95rem;padding:0 var(--s6)}.btn-lg.btn-create{font-size:.82rem}.btn-sm{min-height:44px;padding:0 var(--s4);font-size:.72rem}.btn-block{width:100%;justify-content:flex-start}.btn-block .btn-chev{margin-left:auto;opacity:.6;transition:transform var(--dur) var(--ease)}.btn-block:hover .btn-chev{transform:translateX(3px);opacity:1}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s5)}.panel+.panel{margin-top:var(--s5)}.stack>.panel+.panel{margin-top:0}.panel>.btn,.panel>.hint{margin-top:var(--s4)}.panel>.preview{margin-bottom:var(--s4)}.panel>.bindings+.hint,.panel>.weapons+.hint{margin-top:var(--s4)}.panel>h3,.section-title{font-size:.78rem;color:var(--text-muted);letter-spacing:.18em;text-transform:uppercase;margin-bottom:var(--s3)}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font:500 .72rem var(--font-mono);letter-spacing:.04em;border:1px solid var(--border-strong);color:var(--text-muted);background:var(--bg-elev);white-space:nowrap}.badge-info{color:var(--info);border-color:rgba(56,189,248,.5)}.badge-warn{color:var(--accent-hover);border-color:rgba(245,158,11,.55)}.badge-ok{color:var(--positive);border-color:rgba(34,197,94,.5)}.keycap{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 var(--s2);font:700 .8rem var(--font-mono);color:var(--on-accent);background:#e6ebf2;border-radius:5px;box-shadow:0 2px 0 #8b97a8}.hint{color:var(--text-muted);font-size:.875rem}.error{color:#fca5a5;font-size:.9rem;display:flex;gap:var(--s2);align-items:flex-start}.stack{flex-direction:column;gap:var(--s5)}.row,.stack{display:flex}.row{gap:var(--s3);flex-wrap:wrap;align-items:center}.row.center{justify-content:center}.field{display:grid;grid-template-columns:minmax(150px,220px) 1fr auto;align-items:center;grid-gap:var(--s3) var(--s4);gap:var(--s3) var(--s4);min-height:52px;padding:var(--s3) 0;border-bottom:1px solid var(--border)}.field:last-child{border-bottom:0}.field>.label{color:var(--text);font-size:.95rem}.field>.label small{display:block;color:var(--text-dim);font-size:.8rem}.field .value{font:500 .85rem var(--font-mono);color:var(--text-muted);min-width:56px;text-align:right}.field .control{grid-column:2/4;justify-self:start}.field.compact{grid-template-columns:1fr auto}.pw-wrap{position:relative;display:inline-block;width:100%}.pw-wrap .input{padding-right:48px}.pw-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:44px;height:40px;display:grid;place-items:center;color:var(--text-muted);background:transparent;border:0;border-radius:var(--radius);cursor:pointer;transition:color var(--dur) var(--ease)}.input,.pw-toggle:hover,.pw-toggle[aria-pressed=true],.select{color:var(--text)}.input,.select{width:100%;min-height:44px;padding:0 var(--s3);font:400 1rem var(--font-body);background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius);transition:border-color var(--dur) var(--ease)}.input:hover,.select:hover{border-color:var(--text-dim)}.input[aria-invalid=true]{border-color:var(--danger)}.input::placeholder{color:var(--text-dim)}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:44px;background:transparent;cursor:pointer}.slider::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(90deg,var(--accent) var(--fill,50%),var(--surface-3) var(--fill,50%))}.slider::-moz-range-track{height:6px;border-radius:3px;background:var(--surface-3)}.slider::-moz-range-progress{height:6px;border-radius:3px;background:var(--accent)}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:#fff;border:3px solid var(--accent);box-shadow:0 1px 4px rgba(0,0,0,.5)}.slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--accent)}.switch{position:relative;display:inline-flex;align-items:center;min-width:52px;min-height:44px;cursor:pointer}.switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.switch .track{width:44px;height:24px;border-radius:12px;background:var(--surface-3);border:1px solid var(--border-strong);transition:background var(--dur) var(--ease);position:relative}.switch .track:after{content:"";position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#cbd5e1;transition:transform var(--dur) var(--ease),background var(--dur) var(--ease)}.switch input:checked+.track{background:var(--accent);border-color:var(--accent)}.switch input:checked+.track:after{transform:translateX(20px);background:#0b0f14}.switch input:focus-visible+.track{outline:3px solid var(--ring);outline-offset:2px}.switch input:disabled+.track{opacity:.45}.seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius);overflow:hidden}.seg button{min-height:44px;min-width:56px;padding:0 var(--s4);font:500 .85rem var(--font-mono);text-transform:capitalize;color:var(--text-muted);background:var(--bg-elev);border:0;border-right:1px solid var(--border);cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.seg button:last-child{border-right:0}.seg button:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.seg button[aria-checked=true]{background:var(--accent);color:var(--on-accent);font-weight:700}.seg button:disabled{opacity:.45;cursor:not-allowed}.seg button:focus-visible{outline-offset:-3px}.tabs{display:flex;gap:var(--s1);overflow-x:auto;padding-bottom:var(--s1);border-bottom:1px solid var(--border);margin-bottom:var(--s5);scrollbar-width:thin}.tab{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:0 var(--s4);font:700 .72rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);background:transparent;border:0;border-bottom:3px solid transparent;cursor:pointer;white-space:nowrap;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--accent-hover);border-bottom-color:var(--accent)}.tab:focus-visible{outline-offset:-3px}.swatches{display:flex;gap:var(--s2);flex-wrap:wrap}.swatch{position:relative;width:44px;height:44px;border-radius:50%;border:3px solid transparent;background-clip:padding-box;cursor:pointer;display:grid;place-items:center;color:#0b0f14}.swatch[aria-checked=true]{border-color:#fff}.bindings{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:0 var(--s6);gap:0 var(--s6)}.keybtn{min-width:112px;min-height:44px;padding:0 var(--s3);font:700 .85rem var(--font-mono);color:var(--text);background:var(--bg-elev);border:solid var(--border-strong);border-width:1px 1px 3px;border-radius:var(--radius);cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.keybtn:hover{background:var(--surface-2)}.keybtn.listening{border-color:var(--accent);color:var(--accent-hover);animation:pulse 1.1s ease-in-out infinite}@keyframes pulse{50%{background:rgba(245,158,11,.14)}}.preview{height:88px;display:grid;place-items:center;background:repeating-conic-gradient(#1b2431 0 25%,#151c27 0 50%) 0 0 /24px 24px;border-radius:var(--radius);border:1px solid var(--border)}.weapons{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:var(--s3);gap:var(--s3)}.weapon{display:flex;flex-direction:column;gap:var(--s1);text-align:left;padding:var(--s4);color:var(--text);font:inherit;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.weapon:hover:not(.static){border-color:var(--text-dim);background:var(--surface-2)}.weapon.static,.weapon[aria-checked=true]{border-color:var(--accent);background:rgba(245,158,11,.08)}.weapon.static{cursor:default}.weapon b{font:700 .95rem var(--font-display);letter-spacing:.08em;display:flex;align-items:center;gap:var(--s2)}.weapon span{color:var(--text-muted);font:400 .8rem var(--font-mono)}.weapon .stat-row{display:flex;gap:var(--s3);flex-wrap:wrap}.page-shell{min-height:100dvh;display:flex;flex-direction:column}.page-header{display:flex;align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);border-bottom:1px solid var(--border);background:rgba(13,18,25,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:-webkit-sticky;position:sticky;top:0;z-index:20}.page-header h1{font-size:1.1rem;letter-spacing:.2em;text-transform:uppercase}.page-main{width:100%;max-width:960px;margin:0 auto;padding:var(--s6) var(--s5) var(--s8);flex:1 1}@media (max-width:600px){.page-main{padding:var(--s5) var(--s4) var(--s7)}.page-header{padding:var(--s3) var(--s4)}}.menu{position:relative;min-height:100dvh;padding:var(--s7) 0;overflow:hidden;isolation:isolate}.menu,.menu-inner{display:grid;align-items:center}.menu-inner{width:100%;max-width:960px;margin:0 auto;padding:0 var(--s5);grid-template-columns:minmax(0,520px) minmax(0,1fr);grid-gap:var(--s7);gap:var(--s7)}.menu:before{inset:0;z-index:-2;background:radial-gradient(900px 500px at 78% 40%,rgba(245,158,11,.1),transparent 60%),radial-gradient(700px 500px at 10% 100%,rgba(34,197,94,.07),transparent 60%),linear-gradient(180deg,#0a0e14,#070a0f)}.menu:after,.menu:before{content:"";position:absolute}.menu:after{inset:-2px;z-index:-1;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 0);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse at 70% 45%,#000,transparent 70%);mask-image:radial-gradient(ellipse at 70% 45%,#000,transparent 70%);animation:drift 40s linear infinite}@keyframes drift{to{background-position:48px 48px}}.brand{display:flex;align-items:center;gap:var(--s3);color:var(--accent)}.brand,.wordmark{margin-bottom:var(--s2)}.wordmark{font:900 clamp(2.6rem,7vw,4.6rem)/1 var(--font-display);letter-spacing:.12em;color:var(--text);text-shadow:0 0 36px rgba(245,158,11,.25)}.tagline{color:var(--text-muted);max-width:44ch;margin-bottom:var(--s6)}.menu-nav{display:flex;flex-direction:column;gap:var(--s3)}.menu-nav .btn{min-height:64px}.menu-nav .btn .desc{display:block;font:400 .8rem var(--font-body);letter-spacing:0;text-transform:none;color:var(--text-muted);margin-top:2px}.menu-nav .btn-primary .desc{color:rgba(11,15,20,.75)}.menu-nav .lines{display:flex;flex-direction:column;text-align:left}.menu-foot{margin-top:var(--s6);display:flex;gap:var(--s2);flex-wrap:wrap}.menu-art{display:grid;place-items:center;color:rgba(245,158,11,.9)}.menu-art svg{width:min(100%,340px);height:auto;filter:drop-shadow(0 0 28px rgba(245,158,11,.28))}.menu-art .ring-spin{transform-origin:50% 50%;animation:spin 60s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:860px){.menu{padding:var(--s6) 0}.menu-inner{grid-template-columns:minmax(0,1fr);gap:var(--s5)}.menu-art{display:none}}@media (max-width:600px){.menu-inner{padding:0 var(--s4)}}.diff-grid{display:grid;grid-gap:var(--s3);gap:var(--s3)}.diff-card{display:flex;align-items:center;gap:var(--s4);text-align:left;text-decoration:none;padding:var(--s4);min-height:72px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}.diff-card:hover{border-color:var(--accent);background:var(--surface-2)}.diff-card:active{transform:translateY(1px)}.diff-card .name{font:700 .95rem var(--font-display);letter-spacing:.14em;text-transform:uppercase}.diff-card .desc{color:var(--text-muted);font-size:.85rem}.diff-card .bars{margin-left:auto;display:flex;gap:3px}.diff-card .bars i{width:6px;height:18px;border-radius:2px;background:var(--surface-3)}.diff-card .bars i.on{background:var(--accent)}.room-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--s2)}.room{display:grid;grid-template-columns:1fr auto auto;grid-gap:var(--s4);gap:var(--s4);align-items:center;padding:var(--s3) var(--s4);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg)}.room .name{font-weight:600;align-items:center}.room .meta,.room .name{display:flex;gap:var(--s2);flex-wrap:wrap}.room .meta{margin-top:var(--s1)}.room form{display:flex}.cap,.room form{gap:var(--s2);align-items:center}.cap{display:inline-flex;font:500 .85rem var(--font-mono);color:var(--text-muted)}.cap .meter{width:56px;height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden}.cap .meter i{display:block;height:100%;background:var(--positive)}.empty{text-align:center;padding:var(--s6) var(--s4);color:var(--text-muted);display:grid;grid-gap:var(--s3);gap:var(--s3);justify-items:center}.skeleton{height:64px;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--bg-elev),var(--surface-2),var(--bg-elev));background-size:200% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}@media (max-width:640px){.room{grid-template-columns:1fr auto}.room .cap{grid-column:1}.field{grid-template-columns:1fr auto}.field .control{grid-column:1/-1}.field .slider-wrap{grid-column:1/-1;order:3}}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:var(--s2);flex:none}.game{position:fixed;inset:0;background:#000}.canvas{width:100%;height:100%;display:block}.overlay{position:absolute;inset:0;z-index:var(--z-overlay);display:grid;place-items:center;padding:var(--s5);background:radial-gradient(ellipse at center,rgba(7,10,15,.72),rgba(7,10,15,.92));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center;animation:fade-in var(--dur-slow) var(--ease)}@keyframes fade-in{0%{opacity:0}}.dialog{width:min(560px,100%);max-height:100%;overflow-y:auto;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--s6);display:flex;flex-direction:column;gap:var(--s4);text-align:left;animation:rise var(--dur-slow) var(--ease)}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.dialog.wide{width:min(760px,100%)}.dialog h2{font-size:1.4rem;letter-spacing:.14em;text-transform:uppercase}.dialog .lead{color:var(--text-muted)}.dialog .actions{display:flex;gap:var(--s3);flex-wrap:wrap}.dialog.center{text-align:center;align-items:center}.controls-help{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:var(--s2) var(--s4);gap:var(--s2) var(--s4);font-size:.85rem;color:var(--text-muted)}.controls-help div{display:flex;align-items:center;gap:var(--s2)}.loader{width:min(320px,70vw);height:4px;background:var(--surface-3);border-radius:2px;overflow:hidden}.loader i{display:block;width:40%;height:100%;background:var(--accent);border-radius:2px;animation:slide 1.1s var(--ease) infinite}@keyframes slide{0%{transform:translateX(-100%)}to{transform:translateX(260%)}}.loading-mark{color:var(--accent)}.loading-mark svg{animation:spin 6s linear infinite}.roster{list-style:none;padding:0;flex-direction:column}.roster,.roster li{display:flex;gap:var(--s2)}.roster li{align-items:center;padding:var(--s2) var(--s3);min-height:44px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.roster li.you{border-color:rgba(34,197,94,.6)}.roster .host-badge{margin-left:auto}.chat{position:absolute;left:var(--s4);bottom:112px;width:min(420px,60vw);display:flex;flex-direction:column;gap:2px;font-size:.875rem;pointer-events:none;z-index:var(--z-hud)}.chat>div{background:rgba(7,10,15,.55);padding:2px var(--s2);border-radius:3px;word-break:break-word;text-shadow:0 1px 2px #000}.chat .sys{color:var(--text-muted);font-style:italic}.chat input{pointer-events:auto;margin-top:var(--s1);min-height:44px;padding:0 var(--s3);background:rgba(7,10,15,.92);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);font:inherit}.chat.persistent{position:static;width:100%;max-height:180px;overflow-y:auto;pointer-events:auto}.hud{position:absolute;inset:0;pointer-events:none;z-index:var(--z-hud);font-family:var(--font-display);text-shadow:0 1px 4px rgba(0,0,0,.9)}.hud-top-left{left:var(--s4);flex-direction:column;gap:2px;font:500 .72rem var(--font-mono);color:rgba(238,242,247,.85)}.hud-timer,.hud-top-left{position:absolute;top:var(--s3);display:flex}.hud-timer{left:50%;transform:translateX(-50%);align-items:center;gap:var(--s2);padding:var(--s1) var(--s4);font:700 1.25rem var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.1em;background:rgba(7,10,15,.55);border:1px solid var(--border);border-radius:999px}.feed{position:absolute;top:var(--s3);right:var(--s4);list-style:none;padding:0;display:flex;flex-direction:column;align-items:flex-end;gap:var(--s1);font:500 .85rem var(--font-body)}.feed li{display:flex;align-items:center;gap:var(--s2);padding:3px var(--s3);background:rgba(7,10,15,.62);border-left:3px solid transparent;border-radius:3px;animation:fade-in var(--dur) var(--ease)}.feed li.you{border-left-color:var(--positive)}.feed li.died{border-left-color:var(--danger)}.feed .icon{color:var(--text-muted)}.feed .head .icon{color:var(--accent-hover)}.vitals{position:absolute;left:var(--s4);bottom:var(--s4);display:flex;flex-direction:column;gap:var(--s2);min-width:190px}.vital{display:grid;grid-template-columns:24px auto;align-items:center;grid-column-gap:var(--s2);column-gap:var(--s2)}.vital .num{font:900 2rem/1 var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.vital .bar{grid-column:1/-1;height:5px;margin-top:3px;background:rgba(255,255,255,.14);border-radius:3px;overflow:hidden}.vital .bar i{display:block;height:100%;background:var(--positive);transition:width var(--dur) var(--ease)}.vital.low .bar i{background:var(--danger)}.vital.low .num{color:#fca5a5}.vital.armor .num{font-size:1.35rem;color:var(--info)}.vital.armor .bar i{background:var(--info)}.ammo{position:absolute;right:var(--s4);bottom:var(--s4);text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.ammo .weapon{font:700 .8rem var(--font-display);letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}.ammo .count{font:900 2.4rem/1 var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ammo .count small{font-size:1.1rem;color:var(--text-muted);font-weight:700}.ammo .count.reloading{font-size:1.1rem;letter-spacing:.2em;color:var(--accent-hover);animation:pulse-text .9s ease-in-out infinite}.ammo .count.empty-mag{color:#fca5a5}@keyframes pulse-text{50%{opacity:.5}}.dead{position:absolute;left:50%;top:36%;transform:translate(-50%,-50%);text-align:center;font:900 2.4rem var(--font-display);letter-spacing:.24em;color:#fca5a5}.dead small{display:block;margin-top:var(--s2);font:500 1rem var(--font-body);letter-spacing:.05em;color:var(--text)}.countdown{position:absolute;left:50%;top:28%;transform:translateX(-50%);font:900 6rem var(--font-display);letter-spacing:.1em;text-shadow:0 0 40px rgba(245,158,11,.5);animation:pop 1s ease-out infinite}@keyframes pop{0%{transform:translateX(-50%) scale(1.25);opacity:.4}to{transform:translateX(-50%) scale(1);opacity:1}}.pickup-hint{bottom:24%;display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);font:500 .95rem var(--font-body);background:rgba(7,10,15,.72);border:1px solid var(--border-strong);border-radius:var(--radius)}.pickup-hint,.scores{position:absolute;left:50%;transform:translateX(-50%)}.scores{top:18%;min-width:min(440px,92vw);background:rgba(7,10,15,.9);border:1px solid var(--border-strong);border-radius:var(--radius-lg);border-collapse:separate;border-spacing:0;overflow:hidden;font-family:var(--font-body)}.scores caption{padding:var(--s3) var(--s4);font:700 .75rem var(--font-display);letter-spacing:.2em;color:var(--text-muted)}.scores caption,.scores th{text-align:left;text-transform:uppercase}.scores th{font:500 .72rem var(--font-mono);color:var(--text-dim);border-bottom:1px solid var(--border)}.scores td,.scores th{padding:var(--s2) var(--s4)}.scores td{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scores td:not(:first-child),.scores th:not(:first-child){text-align:right;width:64px}.scores tr.you td{background:rgba(34,197,94,.1)}.scores td:first-child{display:flex;align-items:center}.xhair{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none}.preview .xhair{position:relative;left:0;top:0}.hitmarker{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px;opacity:0;background:linear-gradient(45deg,transparent 45%,#fff 45% 55%,transparent 55%),linear-gradient(-45deg,transparent 45%,#fff 45% 55%,transparent 55%)}.hitmarker.head{filter:drop-shadow(0 0 3px #f59e0b)}.hitmarker.on{animation:hit .2s ease-out}@keyframes hit{0%{opacity:1;transform:scale(1.3)}to{opacity:0;transform:scale(1)}}.vignette{position:absolute;inset:0;opacity:0;box-shadow:inset 0 0 140px 40px rgba(220,38,38,.8)}.vignette.on{animation:dmg .5s ease-out}@keyframes dmg{0%{opacity:1}to{opacity:0}}.hurt{left:50%;top:50%;width:0;height:0;animation:hurtfade 1.2s ease-out forwards}.hurt,.hurt i{position:absolute}.hurt i{left:-110px;top:-34vh;width:220px;height:64px;background:radial-gradient(ellipse at 50% 0,rgba(255,50,40,.95),rgba(255,50,40,0) 70%)}@keyframes hurtfade{0%{opacity:1}to{opacity:0}}.dmgpops{left:50%;top:50%;width:0;height:0}.dmg,.dmgpops{position:absolute}.dmg{left:14px;top:-34px;font:700 .9rem var(--font-mono);color:#fff;text-shadow:0 1px 3px #000,0 0 2px #000;animation:dmgfloat .9s ease-out forwards}.dmg.head{color:#fcd34d}@keyframes dmgfloat{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-26px)}}.scope{inset:0;background:radial-gradient(circle at center,transparent 0 30vmin,#000 30.4vmin)}.scope,.scope i{position:absolute}.scope i{background:rgba(0,0,0,.85)}.scope .h{left:calc(50% - 30vmin);width:60vmin;top:50%;height:2px}.scope .v{top:calc(50% - 30vmin);height:60vmin;left:50%;width:2px}@media (max-width:700px){.vital .num{font-size:1.5rem}.ammo .count{font-size:1.8rem}.hud-timer{font-size:1rem}.chat{bottom:96px}}.end-fade{position:absolute;inset:0;z-index:calc(var(--z-hud) + 5);display:grid;place-items:center;pointer-events:none;background:rgba(7,10,15,0);animation:end-dark 1.5s var(--ease) forwards}@keyframes end-dark{to{background:rgba(7,10,15,.72)}}.end-banner{font:900 clamp(2rem,7vw,4.5rem) var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--text);text-shadow:0 0 40px rgba(245,158,11,.45);opacity:0;animation:end-banner 1.1s var(--ease) .25s forwards}@keyframes end-banner{0%{opacity:0;transform:scale(1.35);letter-spacing:.5em}to{opacity:1;transform:scale(1);letter-spacing:.22em}}.results-head{display:flex;align-items:center;gap:var(--s4)}.results-head h2{font-size:1.8rem}.results-table{width:100%;border-collapse:separate;border-spacing:0 var(--s1);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.results-table th{text-align:left;padding:var(--s1) var(--s3);font:500 .72rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}.results-table td{padding:var(--s2) var(--s3);background:var(--bg-elev)}.results-table td:first-child{border-radius:var(--radius) 0 0 var(--radius)}.results-table td:last-child{border-radius:0 var(--radius) var(--radius) 0}.results-table td:not(:nth-child(2)),.results-table th:not(:nth-child(2)){text-align:right;width:72px}.results-table td:first-child,.results-table th:first-child{width:48px;text-align:left}.results-table .rank{font:700 1rem var(--font-display);color:var(--text-muted)}.results-table .who{display:flex;align-items:center;gap:var(--s2)}.results-table tr.winner td{background:rgba(245,158,11,.12)}.results-table tr.winner .rank{color:var(--accent-hover)}.results-table tr.you td{box-shadow:inset 0 1px 0 rgba(34,197,94,.7),inset 0 -1px 0 rgba(34,197,94,.7)}.results-table tbody tr{animation:row-in .45s var(--ease) both;animation-delay:calc(var(--i, 0) * 70ms + .15s)}@keyframes row-in{0%{opacity:0;transform:translateY(8px)}}