:root{--ui-scale:1;font-size:calc(16px * var(--ui-scale));--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", "Segoe UI Mono", Menlo, Consolas, "Liberation Mono", monospace;--bg-0:#05080e;--bg-1:#0a1019;--bg-2:#0f1724;--bg-3:#162133;--bg-4:#1d2a40;--panel:#0a101ad6;--panel-solid:#0c131f;--panel-raised:#141e2eeb;--line:#94b2dc21;--line-strong:#94b2dc42;--line-accent:#38bdf873;--text:#e7eef8;--text-2:#a8b7cb;--text-3:#6d7e96;--text-inverse:#04121c;--accent:#38bdf8;--accent-strong:#0ea5e9;--accent-soft:#38bdf821;--accent-glow:#38bdf866;--success:#34d399;--success-soft:#34d39924;--warning:#fbbf24;--warning-soft:#fbbf2424;--danger:#f87171;--danger-strong:#ef4444;--danger-soft:#f8717124;--gold:#f5c542;--gold-soft:#f5c54224;--violet:#a78bfa;--radius-xs:4px;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-xl:20px;--shadow-sm:0 2px 8px #00000059;--shadow:0 12px 32px #00000073;--shadow-lg:0 24px 64px #0009;--glass:blur(12px) saturate(140%);--ease:cubic-bezier(.2, .7, .2, 1);--fast:.12s;--med:.22s;--gap:.75rem;--hud-edge:.625rem;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg-0);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;text-rendering:optimizelegibility;overscroll-behavior:none;margin:0;font-size:1rem;line-height:1.45;overflow:hidden}#app{position:fixed;inset:0}.app{height:100%}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:.01em;font-size:1.375rem;font-weight:700}h2{font-size:1rem;font-weight:650}h3{font-size:.9375rem;font-weight:650}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}a{color:var(--accent)}img,svg,canvas{display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:#38bdf859}*{scrollbar-width:thin;scrollbar-color:#94b2dc40 transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#94b2dc38;border-radius:8px}::-webkit-scrollbar-track{background:0 0}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.muted{color:var(--text-3)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.icon{flex-shrink:0}.swatch{border-radius:3px;flex-shrink:0;width:.625rem;height:.625rem;display:inline-block;box-shadow:inset 0 0 0 1px #00000059}.btn-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.center-state{color:var(--text-2);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.flag{line-height:1;font-family:"Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", var(--font);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.flag--sm{font-size:.875rem}.flag--md{font-size:1.125rem}.flag--lg{font-size:1.5rem}.flag--badge{font-family:var(--mono);letter-spacing:.04em;color:#dbe7f6;border:1px solid var(--line-strong);background:linear-gradient(#2a3a55,#1a2639);border-radius:3px;min-width:1.35rem;padding:.125rem .2rem;font-size:.5625rem;font-weight:700}.flag--badge.flag--lg{min-width:1.9rem;padding:.2rem .25rem;font-size:.75rem}[data-reduced-motion=true] *,[data-reduced-motion=true] :before,[data-reduced-motion=true] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){html:not([data-reduced-motion=false]) *,html:not([data-reduced-motion=false]) :before,html:not([data-reduced-motion=false]) :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes scale-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-danger{0%,to{box-shadow:0 0 #ef444480}50%{box-shadow:0 0 0 6px #ef444400}}.btn{border-radius:var(--radius-sm);letter-spacing:.01em;white-space:nowrap;height:2.375rem;transition:background var(--fast) var(--ease), border-color var(--fast) var(--ease), color var(--fast) var(--ease), transform var(--fast) var(--ease), box-shadow var(--fast) var(--ease);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45}.btn--sm{gap:.375rem;height:1.875rem;padding:0 .7rem;font-size:.8125rem}.btn--lg{height:3rem;padding:0 1.4rem;font-size:1rem}.btn--block{width:100%}.btn--primary{color:var(--text-inverse);background:linear-gradient(#47c6fb,#1ea7ea);box-shadow:0 0 0 1px #38bdf899,0 6px 20px #0ea5e947}.btn--primary:hover:not(:disabled){background:linear-gradient(#67d2fd,#2bb2f0);box-shadow:0 0 0 1px #7dd3fccc,0 8px 26px #0ea5e961}.btn--secondary{background:var(--bg-3);border-color:var(--line-strong);color:var(--text)}.btn--secondary:hover:not(:disabled),.btn--secondary.is-active{background:var(--bg-4);border-color:var(--line-accent)}.btn--ghost{color:var(--text-2)}.btn--ghost:hover:not(:disabled){color:var(--text);background:#94b2dc14}.btn--danger{color:#fecaca;background:#ef444424;border-color:#f8717173}.btn--danger:hover:not(:disabled){background:#ef444442}.btn--success{color:#bbf7d0;background:#34d39929;border-color:#34d39980}.btn--success:hover:not(:disabled){background:#34d39947}.btn.is-active:not(.btn--primary){border-color:var(--line-accent);color:var(--accent)}.link-btn{color:var(--accent);align-items:center;gap:.3rem;font-size:.8125rem;font-weight:600;display:inline-flex}.link-btn:hover{text-decoration:underline}.icon-btn{border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;color:var(--text-2);transition:background var(--fast) var(--ease), color var(--fast) var(--ease), border-color var(--fast) var(--ease);border:1px solid #0000;flex-shrink:0;place-items:center;display:inline-grid;position:relative}.icon-btn--sm{width:1.75rem;height:1.75rem}.icon-btn--lg{width:2.75rem;height:2.75rem}.icon-btn:hover:not(:disabled){color:var(--text);background:#94b2dc1a}.icon-btn--secondary{background:var(--bg-3);border-color:var(--line-strong);color:var(--text)}.icon-btn--primary{background:var(--accent);color:var(--text-inverse)}.icon-btn--primary:hover:not(:disabled){color:var(--text-inverse);background:#67d2fd}.icon-btn--danger:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.icon-btn.is-active{color:var(--accent);background:var(--accent-soft);border-color:#38bdf859}.icon-btn:disabled{opacity:.35}.icon-btn__badge{background:var(--danger-strong);color:#fff;border-radius:999px;place-items:center;min-width:1rem;height:1rem;padding:0 .25rem;font-size:.625rem;font-weight:700;display:grid;position:absolute;top:-4px;right:-4px}.input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;height:2.375rem;transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);background:#05090fb3;outline:none;padding:0 .75rem}.input::placeholder{color:var(--text-3)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input.is-invalid{border-color:var(--danger)}.input--code{font-family:var(--mono);letter-spacing:.08em}.input-icon{position:relative}.input-icon>.icon{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.input-icon>.input{padding-left:2.2rem}.field{flex-direction:column;gap:.375rem;display:flex}.field__label,.form-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.6875rem;font-weight:700}.field-error{color:var(--danger);margin-top:.375rem;font-size:.8125rem}.select{position:relative}.select__input{appearance:none;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#05090fb3;outline:none;width:100%;height:2.375rem;padding:0 2rem 0 .75rem}.select__input:focus{border-color:var(--accent)}.select__chevron{pointer-events:none;color:var(--text-3);position:absolute;top:50%;right:.7rem;transform:translateY(-50%)}.number-field__row{align-items:center;gap:.25rem;display:flex}.number-field__input{text-align:center;font-family:var(--mono);-moz-appearance:textfield}.number-field__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-field__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-field__btn{border-radius:var(--radius-sm);background:var(--bg-3);border:1px solid var(--line-strong);flex-shrink:0;place-items:center;width:2.375rem;height:2.375rem;display:grid}.number-field__btn:hover:not(:disabled){border-color:var(--line-accent)}.number-field__btn:disabled{opacity:.35}.number-field__suffix{color:var(--text-3);font-size:.8125rem}.slider{flex-direction:column;gap:.4rem;display:flex}.slider.is-disabled{opacity:.5}.slider__head{justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.8125rem;display:flex}.slider__label{color:var(--text-2)}.slider__value{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text);font-size:.8125rem}.slider__input{--fill:50%;--track:#94b2dc2e;--thumb:#e7f6ff;--fill-color:var(--accent);appearance:none;cursor:pointer;background:0 0;width:100%;height:1.375rem;margin:0}.slider__input:disabled{cursor:not-allowed}.slider__input::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--fill-color) 0 var(--fill), var(--track) var(--fill) 100%);border-radius:999px;height:.3rem}.slider__input::-moz-range-track{background:var(--track);border-radius:999px;height:.3rem}.slider__input::-moz-range-progress{background:var(--fill-color);border-radius:999px;height:.3rem}.slider__input::-webkit-slider-thumb{appearance:none;background:var(--thumb);border:2px solid var(--fill-color);width:1rem;height:1rem;transition:box-shadow var(--fast) var(--ease);border-radius:50%;margin-top:-.35rem;box-shadow:0 0 0 4px #38bdf81f}.slider__input::-moz-range-thumb{background:var(--thumb);border:2px solid var(--fill-color);border-radius:50%;width:.85rem;height:.85rem}.slider__input:hover::-webkit-slider-thumb{box-shadow:0 0 0 6px #38bdf838}.slider__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 6px #38bdf838}.slider__input:focus-visible{outline:none}.toggle{justify-content:space-between;align-items:center;gap:1rem;padding:.25rem 0;display:flex}.toggle.is-disabled{opacity:.5}.toggle__text{min-width:0}.toggle__label{color:var(--text);cursor:pointer;font-size:.875rem}.toggle__desc{color:var(--text-3);margin-top:.1rem;font-size:.75rem}.switch{border:1px solid var(--line-strong);width:2.5rem;height:1.4rem;transition:background var(--med) var(--ease);background:#94b2dc33;border-radius:999px;flex-shrink:0;position:relative}.switch__knob{width:calc(1.4rem - 6px);height:calc(1.4rem - 6px);transition:transform var(--med) var(--ease);box-shadow:var(--shadow-sm);background:#d5e2f2;border-radius:50%;position:absolute;top:2px;left:2px}.switch.is-on{background:var(--accent-strong);border-color:var(--accent)}.switch.is-on .switch__knob{background:#fff;transform:translate(1.1rem)}.segmented{border:1px solid var(--line);border-radius:var(--radius-sm);background:#05090f99;gap:2px;padding:3px;display:flex;overflow-x:auto}.segmented__item{min-height:2rem;color:var(--text-2);white-space:nowrap;transition:background var(--fast) var(--ease), color var(--fast) var(--ease);border-radius:4px;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:0 .7rem;font-size:.8125rem;font-weight:600;display:inline-flex}.segmented--sm .segmented__item{min-height:1.6rem;padding:0 .55rem;font-size:.75rem}.segmented__item:hover:not(:disabled){color:var(--text)}.segmented__item.is-active{background:var(--bg-4);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-accent), 0 2px 8px #0000004d}.segmented__item:disabled{opacity:.45}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;flex-shrink:0;gap:.25rem;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs__tab{color:var(--text-3);white-space:nowrap;transition:color var(--fast) var(--ease), border-color var(--fast) var(--ease);border-bottom:2px solid #0000;align-items:center;gap:.4rem;margin-bottom:-1px;padding:.6rem .85rem;font-size:.8125rem;font-weight:600;display:inline-flex}.tabs__tab:hover{color:var(--text)}.tabs__tab.is-active{color:var(--accent);border-bottom-color:var(--accent)}.tabs__badge{background:var(--danger-strong);color:#fff;border-radius:999px;place-items:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.625rem;font-weight:700;display:inline-grid}.kbd{border:1px solid var(--line-strong);background:var(--bg-2);min-width:1.4rem;height:1.4rem;font-family:var(--mono);color:var(--text-2);border-bottom-width:2px;border-radius:4px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.6875rem;font-weight:600;line-height:1;display:inline-flex}.spinner{flex-shrink:0;display:inline-block;position:relative}.spinner__ring{border:2px solid #38bdf833;border-top-color:var(--accent);border-radius:50%;animation:.8s linear infinite spin;position:absolute;inset:0}.progress{background:#94b2dc24;border-radius:999px;height:.375rem;position:relative;overflow:hidden}.progress__fill{border-radius:inherit;background:var(--accent);transform-origin:0;height:100%;transition:transform var(--med) var(--ease)}.progress--gold .progress__fill{background:linear-gradient(90deg, #d9a521, var(--gold))}.progress--danger .progress__fill{background:var(--danger)}.progress--success .progress__fill{background:var(--success)}.progress--warning .progress__fill{background:var(--warning)}.badge{letter-spacing:.02em;background:var(--accent-soft);height:1.2rem;color:var(--accent);white-space:nowrap;border:1px solid #38bdf84d;border-radius:999px;align-items:center;padding:0 .45rem;font-size:.6875rem;font-weight:700;display:inline-flex}.badge--warning{background:var(--warning-soft);color:var(--warning);border-color:#fbbf2459}.chip-row{flex-wrap:wrap;gap:.375rem;display:flex}.chip{border:1px solid var(--line);height:1.6rem;color:var(--text-2);white-space:nowrap;background:#94b2dc1a;border-radius:999px;align-items:center;gap:.3rem;padding:0 .6rem;font-size:.75rem;display:inline-flex}.chip--button:hover{color:var(--text);border-color:var(--line-strong)}.chip.is-active{background:var(--accent-soft);color:var(--accent);border-color:#38bdf873}.chip--gold{background:var(--gold-soft);color:var(--gold);border-color:#f5c54266}.empty{text-align:center;color:var(--text-3);flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;display:flex}.empty__icon{color:var(--text-3);opacity:.7}.empty__title{color:var(--text-2);font-weight:600}.empty__body{max-width:28rem;font-size:.875rem}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--glass);box-shadow:var(--shadow);flex-direction:column;gap:.75rem;min-width:0;padding:1rem;display:flex}.card__head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.card__head h2{letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);font-size:.75rem}.card__hint{color:var(--text-3);font-size:.75rem}.card__text{color:var(--text-2);font-size:.875rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.panel__head{border-bottom:1px solid var(--line);align-items:center;gap:.5rem;padding:.6rem .75rem;display:flex}.panel__title{font-size:.8125rem}.panel__actions{gap:.25rem;margin-left:auto;display:flex}.panel__body{padding:.75rem}.modal-backdrop{z-index:200;pointer-events:auto;padding:max(1rem, var(--safe-top)) max(1rem, var(--safe-right)) max(1rem, var(--safe-bottom)) max(1rem, var(--safe-left));-webkit-backdrop-filter:blur(3px);animation:fade-in var(--med) var(--ease);background:#02050a9e;place-items:center;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line-strong);border-radius:var(--radius-lg);width:100%;max-height:min(88vh,52rem);box-shadow:var(--shadow-lg), 0 0 0 1px #38bdf80f;animation:scale-in var(--med) var(--ease);background:linear-gradient(#141e2ef7,#0b111bfa);outline:none;flex-direction:column;display:flex;overflow:hidden}.modal--sm{max-width:26rem}.modal--md{max-width:34rem}.modal--lg{max-width:46rem}.modal--xl{max-width:60rem}.modal__head{border-bottom:1px solid var(--line);align-items:center;gap:.6rem;padding:.85rem .85rem .85rem 1.1rem;display:flex}.modal__icon{color:var(--accent)}.modal__title{flex:1;font-size:1rem}.modal__body{flex-direction:column;gap:1rem;padding:1.1rem;display:flex;overflow-y:auto}.modal__text{color:var(--text-2);font-size:.9rem}.modal__foot{border-top:1px solid var(--line);background:#05090f59;justify-content:flex-end;gap:.5rem;padding:.85rem 1.1rem;display:flex}.toast-host{z-index:300;right:max(1rem, var(--safe-right));bottom:max(1rem, var(--safe-bottom));pointer-events:none;flex-direction:column;gap:.5rem;width:min(22rem,100vw - 2rem);display:flex;position:fixed}.app--game .toast-host{bottom:auto;top:calc(4.5rem + var(--safe-top));left:50%;right:auto;transform:translate(-50%)}.app--game:has(.spectator-banner) .toast-host{top:calc(7.25rem + var(--safe-top))}@media (max-width:680px){.app--game:has(.spectator-banner) .toast-host{top:calc(9.75rem + var(--safe-top))}}.app--game:has(.eliminated-card,.modal-backdrop) .toast-host{top:auto;bottom:max(1rem, var(--safe-bottom));left:auto;right:max(1rem, var(--safe-right));transform:none}.app--game:has(.end-backdrop) .toast-host{top:auto;bottom:max(1rem, var(--safe-bottom));left:max(1rem, var(--safe-left));right:auto;transform:none}@media (max-width:680px){.app--game:has(.end-backdrop) .toast-host{top:calc(4.5rem + var(--safe-top));bottom:auto;left:50%;transform:translate(-50%)}}.toast{pointer-events:auto;border-radius:var(--radius);background:var(--panel-raised);border:1px solid var(--line-strong);box-shadow:var(--shadow);animation:rise-in var(--med) var(--ease);-webkit-backdrop-filter:var(--glass);align-items:flex-start;gap:.6rem;padding:.7rem .75rem;font-size:.875rem;display:flex}.toast--success{border-color:#34d3994d}.toast--warning{border-color:#fbbf244d}.toast--danger{border-color:#f8717157}.toast__icon{background:var(--accent-soft);width:1.75rem;height:1.75rem;color:var(--accent);border-radius:50%;flex:none;margin-top:-.2rem;padding:.3rem}.toast--success .toast__icon{background:var(--success-soft);color:var(--success)}.toast--warning .toast__icon{background:var(--warning-soft);color:var(--warning)}.toast--danger .toast__icon{background:var(--danger-soft);color:var(--danger)}.toast__text{flex:1;min-width:0}.toast__detail{color:var(--text-2);margin-top:.1rem;font-size:.8125rem}.toast__close{color:var(--text-3);padding:.1rem}.toast__close:hover{color:var(--text)}.screen{z-index:1;height:100%;padding:max(1rem, var(--safe-top)) max(1.25rem, var(--safe-right)) max(1.25rem, var(--safe-bottom)) max(1.25rem, var(--safe-left));animation:fade-in var(--med) var(--ease);position:relative;overflow:hidden auto}.screen-header{align-items:center;gap:.85rem;max-width:88rem;margin:0 auto 1rem;display:flex}.screen-header__title{flex:1;align-items:center;gap:.7rem;min-width:0;display:flex}.screen-header__title h1{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.screen-header__icon{color:var(--accent);filter:drop-shadow(0 0 8px var(--accent-glow))}.screen-header__sub{color:var(--text-3);font-size:.8125rem}.screen-header__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}@media (max-width:640px){.screen{padding:max(.75rem, var(--safe-top)) max(.75rem, var(--safe-right)) max(.75rem, var(--safe-bottom)) max(.75rem, var(--safe-left))}.screen-header{flex-wrap:wrap}.screen-header__actions{justify-content:flex-start;width:100%}.modal-backdrop{align-items:end;padding:.5rem}.modal{max-height:92vh}}.menu-bg{z-index:0;background:var(--bg-0);position:fixed;inset:0;overflow:hidden}.menu-bg__canvas{opacity:.9;filter:saturate(.95);width:100%;height:100%;position:absolute;inset:0}.menu-bg__grid{background-image:linear-gradient(#78aae60d 1px,#0000 1px),linear-gradient(90deg,#78aae60d 1px,#0000 1px);background-size:3rem 3rem;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 85%);mask-image:radial-gradient(#000 30%,#0000 85%)}.menu-bg__vignette{background:radial-gradient(at 70% 40%,#0000 0%,#05080e59 55%,#05080ed9 100%),linear-gradient(90deg,#05080ed1 0%,#05080e59 45%,#0000 70%);position:absolute;inset:0}.logo{align-items:center;gap:.85rem;display:flex}.logo-mark{filter:drop-shadow(0 4px 18px #38bdf859)}.logo__text{flex-direction:column;display:flex}.logo__word{letter-spacing:.28em;color:#eef6ff;text-shadow:0 2px 18px #38bdf840;font-size:2rem;font-weight:800;line-height:1}.logo__sub{letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-top:.4rem;font-size:.75rem}.menu-screen{padding-top:max(1.5rem, var(--safe-top));display:flex}.menu-screen__inner{grid-template:"brand. .""main.side"1fr"footer footer footer"/minmax(0,27rem) 1fr minmax(0,20rem);gap:1.5rem 2rem;width:100%;max-width:82rem;min-height:100%;margin:0 auto;display:grid}.menu-screen__brand{animation:rise-in .5s var(--ease);grid-area:brand;padding:1rem 0 .5rem}.menu-screen__main{animation:rise-in .6s var(--ease);flex-direction:column;grid-area:main;align-self:center;gap:1rem;display:flex}.menu-screen__side{animation:rise-in .7s var(--ease);flex-direction:column;grid-area:side;align-self:end;gap:1rem;display:flex}.profile-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--glass);align-items:center;gap:.75rem;padding:.75rem;display:flex}.profile-card__flag{border-radius:var(--radius);background:var(--bg-3);border:1px solid var(--line-strong);width:3rem;height:3rem;color:var(--text-3);transition:border-color var(--fast) var(--ease);place-items:center;display:grid}.profile-card__flag:hover{border-color:var(--accent)}.profile-card__body{flex:1;min-width:0}.profile-card__label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:.6875rem;font-weight:700;display:block}.profile-card__input{width:100%;transition:border-color var(--fast) var(--ease);background:0 0;border:0;border-bottom:1px solid #0000;outline:none;padding:.1rem 0;font-size:1.15rem;font-weight:650}.profile-card__input:hover{border-bottom-color:var(--line-strong)}.profile-card__input:focus{border-bottom-color:var(--accent)}.menu-list{flex-direction:column;gap:.5rem;display:flex}.menu-item{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;-webkit-backdrop-filter:var(--glass);transition:border-color var(--fast) var(--ease), transform var(--fast) var(--ease), background var(--fast) var(--ease);align-items:center;gap:.9rem;padding:.8rem .9rem;display:flex;position:relative;overflow:hidden}.menu-item:before{content:"";background:var(--accent);opacity:0;width:3px;transition:opacity var(--fast) var(--ease);border-radius:0 3px 3px 0;position:absolute;top:18%;bottom:18%;left:0}.menu-item:hover{border-color:var(--line-accent);background:var(--panel-raised);transform:translate(3px)}.menu-item:hover:before{opacity:1}.menu-item__icon{border-radius:var(--radius);background:var(--accent-soft);width:2.6rem;height:2.6rem;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.menu-item__text{flex-direction:column;flex:1;min-width:0;display:flex}.menu-item__title{font-size:1rem;font-weight:700}.menu-item__sub{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.menu-item__chevron{color:var(--text-3);transition:transform var(--fast) var(--ease)}.menu-item:hover .menu-item__chevron{color:var(--accent);transform:translate(3px)}.menu-item--primary{background:linear-gradient(135deg,#0ea5e947,#0a101adb 70%);border-color:#38bdf873}.menu-item--primary .menu-item__icon{background:var(--accent);color:var(--text-inverse);box-shadow:0 0 22px var(--accent-glow)}.menu-item--primary .menu-item__title{font-size:1.125rem}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin-top:.25rem;display:grid}.menu-tile{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:2.75rem;-webkit-backdrop-filter:var(--glass);transition:border-color var(--fast) var(--ease), background var(--fast) var(--ease);align-items:center;gap:.5rem;padding:.45rem .6rem;display:flex}.menu-tile:hover,.menu-tile:focus-visible{border-color:var(--line-accent);background:var(--panel-raised)}.menu-tile__icon{color:var(--accent);flex-shrink:0}.menu-tile__title{-webkit-hyphens:auto;hyphens:auto;min-width:0;font-size:.8125rem;font-weight:650;line-height:1.15}@media (max-width:400px){.menu-tile{gap:.35rem;padding:.4rem .45rem}}.career-card,.tip-card{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--glass);padding:.9rem 1rem}.career-card:hover{border-color:var(--line-accent)}.career-card__head,.tip-card__head{letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:.45rem;font-size:.6875rem;font-weight:700;display:flex}.career-card__stats{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.6rem;display:grid}.career-card__stats>div{flex-direction:column;display:flex}.stat-value{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text);font-size:1.35rem;font-weight:700}.stat-label{color:var(--text-3);font-size:.6875rem}.tip-card__head{color:var(--gold)}.tip-card__next{color:var(--text-3);place-items:center;margin-left:auto;display:grid}.tip-card__next:hover{color:var(--text)}.tip-card__text{color:var(--text-2);animation:fade-in .4s var(--ease);min-height:3.6em;margin-top:.45rem;font-size:.875rem}.menu-footer{color:var(--text-3);grid-area:footer;justify-content:space-between;align-items:center;gap:1rem;padding-top:.5rem;font-size:.75rem;display:flex}.menu-footer__version{font-family:var(--mono);align-items:center;gap:.5rem;display:inline-flex}.menu-footer__actions{align-items:center;gap:.35rem;display:flex}.lang-switch{border:1px solid var(--line);border-radius:var(--radius-sm);background:#05090f99;padding:2px;display:flex}.lang-switch__btn{letter-spacing:.08em;color:var(--text-3);border-radius:4px;padding:.25rem .55rem;font-size:.6875rem;font-weight:700}.lang-switch__btn.is-active{background:var(--bg-4);color:var(--text)}@media (max-width:1080px){.menu-screen__inner{grid-template-columns:minmax(0,27rem) 1fr;grid-template-areas:"brand.""main side""footer footer"}}@media (max-width:760px){.menu-screen__inner{grid-template:"brand""main""side""footer"/minmax(0,1fr);gap:1rem}.menu-screen__main,.menu-screen__side{align-self:stretch}.logo__word{font-size:1.6rem}.menu-footer{flex-wrap:wrap}.menu-bg__vignette{background:radial-gradient(at 50% 40%,#05080e66 0%,#05080ee0 100%)}}.flag-picker{flex-direction:column;gap:.85rem;display:flex}.flag-picker__specials{flex-wrap:wrap;gap:.4rem;display:flex}.flag-chip{border-radius:var(--radius-sm);background:var(--bg-3);border:1px solid var(--line);height:2.4rem;color:var(--text-2);align-items:center;gap:.4rem;padding:0 .7rem;font-size:.8125rem;display:inline-flex}.flag-chip--icon{justify-content:center;width:2.6rem;padding:0}.flag-chip:hover,.flag-option:hover{border-color:var(--line-accent)}.flag-chip.is-active,.flag-option.is-active{border-color:var(--accent);background:var(--accent-soft)}.flag-picker__grid{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.4rem;max-height:50vh;padding-right:.25rem;display:grid;overflow-y:auto}.flag-option{border-radius:var(--radius-sm);border:1px solid var(--line);text-align:left;background:#05090f73;align-items:center;gap:.55rem;min-width:0;padding:.45rem .55rem;display:flex}.flag-option__name{white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.flag-picker__empty{color:var(--text-3);text-align:center;grid-column:1/-1;padding:1rem}.setup-layout{grid-template-columns:minmax(0,1fr) minmax(20rem,25rem);align-items:start;gap:1rem;max-width:88rem;margin:0 auto;display:grid}.setup-layout__side{max-height:calc(100dvh - 5.5rem);position:sticky;top:0;overflow-y:auto}.map-picker{flex-direction:column;gap:.85rem;display:flex}.map-picker.is-disabled{pointer-events:none;opacity:.6}.map-picker__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.map-picker__head .tabs{border-bottom:0}.map-grid{grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:.65rem;display:grid}.map-grid--styles{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}.map-card{text-align:left;border-radius:var(--radius);border:1px solid var(--line);transition:border-color var(--fast) var(--ease), transform var(--fast) var(--ease), box-shadow var(--fast) var(--ease);background:#05090f8c;flex-direction:column;display:flex;position:relative;overflow:hidden}.map-card:hover:not(:disabled){border-color:var(--line-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.map-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 8px 24px #0ea5e938}.map-card__info{flex-direction:column;gap:.1rem;padding:.5rem .6rem .6rem;display:flex}.map-card__name{white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:650;overflow:hidden}.map-card__meta{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:.6875rem}.map-card__check{background:var(--accent);width:1.4rem;height:1.4rem;color:var(--text-inverse);border-radius:50%;place-items:center;display:grid;position:absolute;top:.45rem;right:.45rem;box-shadow:0 2px 8px #0006}.map-thumb{aspect-ratio:16/9;background:#0b1a2c;position:relative;overflow:hidden}.map-thumb img{object-fit:cover;width:100%;height:100%;animation:fade-in .3s var(--ease);image-rendering:auto}.map-thumb__placeholder{background:radial-gradient(35% 30% at 30% 45%,#5c8c548c,#0000 70%),radial-gradient(28% 35% at 68% 55%,#78965a80,#0000 70%),linear-gradient(#123050,#0b1f36);position:absolute;inset:0}.map-thumb--loading .map-thumb__placeholder:after{content:"";background:linear-gradient(100deg,#0000 20%,#ffffff0f 50%,#0000 80%) 0 0/200% 100%;animation:1.4s linear infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.procgen{flex-direction:column;gap:1rem;display:flex}.procgen__controls{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.seed-input{gap:.4rem;width:13rem;display:flex}.form-section{flex-direction:column;gap:.5rem;display:flex}.map-preview{flex-direction:column;gap:.6rem;display:flex}.map-preview__thumb{border-radius:var(--radius);border:1px solid var(--line-strong)}.map-preview__name{font-size:1.1rem;font-weight:700}.map-preview__desc{color:var(--text-2);font-size:.8125rem}.map-preview__meta{font-family:var(--mono);color:var(--text-3);align-items:center;gap:.3rem;margin-top:.2rem;font-size:.75rem;display:inline-flex}.preset-bar{flex-wrap:wrap;gap:.35rem;display:flex}.preset{border:1px solid var(--line);height:1.9rem;color:var(--text-2);transition:border-color var(--fast) var(--ease), color var(--fast) var(--ease);background:#94b2dc14;border-radius:999px;align-items:center;gap:.35rem;padding:0 .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.preset:hover:not(:disabled){color:var(--text);border-color:var(--line-strong)}.preset.is-active{background:var(--accent-soft);color:var(--accent);border-color:#38bdf880}.settings-form{flex-direction:column;gap:1rem;display:flex}.settings-form.is-disabled{opacity:.7}.disclosure{border-radius:var(--radius-sm);border:1px solid var(--line);width:100%;color:var(--text-2);background:#05090f66;align-items:center;gap:.5rem;padding:.55rem .7rem;font-size:.8125rem;font-weight:650;display:flex}.disclosure:hover{color:var(--text);border-color:var(--line-strong)}.disclosure__chevron{transition:transform var(--med) var(--ease);margin-left:auto}.disclosure.is-open .disclosure__chevron{transform:rotate(180deg)}.advanced{animation:rise-in var(--med) var(--ease);flex-direction:column;gap:1rem;display:flex}.advanced__grid{grid-template-columns:1fr 1fr;gap:.85rem 1rem;display:grid}.advanced__toggles{flex-direction:column;gap:.15rem;display:flex}.unit-toggles{grid-template-columns:repeat(auto-fill,minmax(6.8rem,1fr));gap:.35rem;display:grid}.unit-toggle{border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text);text-align:left;border:1px solid #38bdf859;align-items:center;gap:.4rem;padding:.4rem .5rem;font-size:.75rem;display:flex}.unit-toggle span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.unit-toggle.is-off{border-color:var(--line);color:var(--text-3);background:0 0;text-decoration:line-through}.unit-toggle:disabled{opacity:.5}.seed-row{flex-flow:wrap;align-items:flex-end;gap:.6rem}.seed-row .number-field{flex:1;min-width:11rem}.seed-row .toggle{width:100%}.setup-start{z-index:2;border-top:1px solid var(--line);background:var(--panel-solid);border-radius:0 0 var(--radius-lg) var(--radius-lg);flex-direction:column;gap:.5rem;margin:0 -1rem -1rem;padding:.75rem 1rem 1rem;display:flex;position:sticky;bottom:-1rem}.setup-start__summary{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.setup-start__hint{color:var(--text-3);text-align:center;font-size:.6875rem}@media (max-width:960px){.setup-layout{grid-template-columns:minmax(0,1fr)}.setup-layout__side{max-height:none;position:static;overflow:visible}}@media (max-width:520px){.advanced__grid{grid-template-columns:minmax(0,1fr)}.map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.mp-layout{grid-template-columns:minmax(0,1fr) 22rem;align-items:start;gap:1rem;max-width:88rem;margin:0 auto;display:grid}.mp-layout__side{flex-direction:column;gap:1rem;display:flex}.lobby-list{flex-direction:column;gap:.5rem;display:flex}.lobby-row{border-radius:var(--radius);border:1px solid var(--line);animation:rise-in var(--med) var(--ease);background:#05090f80;grid-template-columns:7.5rem minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.55rem;display:grid}.lobby-row:hover{border-color:var(--line-strong)}.lobby-row__thumb{border-radius:var(--radius-sm)}.lobby-row__info{flex-direction:column;gap:.3rem;min-width:0;display:flex}.lobby-row__name{font-weight:700}.lobby-row__meta{color:var(--text-3);flex-wrap:wrap;gap:.85rem;font-size:.75rem;display:flex}.lobby-row__meta span{align-items:center;gap:.3rem;display:inline-flex}.lobby-row__players{font-family:var(--mono);color:var(--text-2);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.lobby-row__players .progress{flex:1;max-width:10rem}.lobby-row__side{flex-direction:column;align-items:flex-end;gap:.45rem;display:flex}.countdown{font-family:var(--mono);color:var(--text);align-items:center;gap:.3rem;font-size:.9rem;font-weight:700;display:inline-flex}.countdown--soon{color:var(--warning)}.join-code{gap:.5rem;display:flex}.conn{border:1px solid var(--line);height:1.9rem;color:var(--text-2);white-space:nowrap;background:#05090f99;border-radius:999px;align-items:center;gap:.45rem;padding:0 .7rem;font-size:.75rem;display:inline-flex}.conn__dot{background:var(--text-3);border-radius:50%;width:.5rem;height:.5rem}.conn--ok .conn__dot{background:var(--success);box-shadow:0 0 8px var(--success)}.conn--pending .conn__dot{background:var(--warning);animation:1s ease-in-out infinite blink}.conn--bad .conn__dot{background:var(--danger)}.conn__ping{font-family:var(--mono);color:var(--text-3)}@keyframes blink{50%{opacity:.3}}@media (max-width:900px){.mp-layout{grid-template-columns:minmax(0,1fr)}.mp-layout__side{order:-1}}@media (max-width:560px){.lobby-row{grid-template-columns:5rem minmax(0,1fr)}.lobby-row__side{flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center}}.lobby-layout{grid-template-columns:minmax(15rem,20rem) minmax(0,1fr) minmax(16rem,21rem);align-items:start;gap:1rem;max-width:92rem;margin:0 auto;display:grid}.lobby-code{align-items:center;gap:.3rem;display:inline-flex}.lobby-code .mono{color:var(--accent);letter-spacing:.12em;font-weight:700}.lobby-players{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.lobby-player{border-radius:var(--radius-sm);animation:rise-in var(--med) var(--ease);background:#05090f73;border:1px solid #0000;align-items:center;gap:.5rem;padding:.4rem .5rem;font-size:.875rem;display:flex}.lobby-player.is-me{background:var(--accent-soft);border-color:#38bdf866}.lobby-player__name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.lobby-player__host{color:var(--gold);display:inline-grid}.team-columns{flex-direction:column;gap:.75rem;display:flex}.team-col{border-radius:var(--radius);border:1px solid var(--line);flex-direction:column;gap:.35rem;padding:.5rem;display:flex}.team-col.is-mine{border-color:#38bdf866}.team-col__head{align-items:center;gap:.45rem;font-size:.8125rem;font-weight:700;display:flex}.team-col__count{font-family:var(--mono);color:var(--text-3)}.team-col__join{color:var(--accent);margin-left:auto;font-size:.75rem;font-weight:600}.team-dot{background:var(--text-3);border-radius:50%;width:.65rem;height:.65rem}.team-dot--0{background:#e5484d}.team-dot--1{background:#3e8ee6}.team-dot--2{background:#46b85a}.team-dot--3{background:#f0c419}.team-dot--4{background:#9b5de5}.team-dot--5{background:#f2862e}.team-dot--6{background:#1fb8b0}.team-dot--7{background:#e85aa8}.lobby-host,.lobby-readonly{flex-direction:column;gap:1rem;display:flex}.settings-summary dl{grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin:0;display:grid}.settings-summary dt{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-size:.6875rem}.settings-summary dd{margin:0;font-weight:600}.settings-summary .chip-row{margin-top:.75rem}.lobby-chat{flex-direction:column;gap:.5rem;min-height:0;display:flex}.lobby-chat__list{border-radius:var(--radius-sm);border:1px solid var(--line);background:#05090f73;flex-direction:column;gap:.3rem;height:16rem;padding:.5rem;display:flex;overflow-y:auto}.lobby-chat__empty{color:var(--text-3);text-align:center;margin:auto;font-size:.8125rem}.lobby-chat__form{gap:.4rem;display:flex}.chat-line{word-break:break-word;font-size:.8125rem;line-height:1.35}.chat-line__from{color:var(--accent);margin-right:.4rem;font-weight:700}.chat-line.is-mine .chat-line__from{color:var(--gold)}.chat-line__text{color:var(--text)}.lobby-start{border-top:1px solid var(--line);flex-direction:column;gap:.5rem;padding-top:.75rem;display:flex}.lobby-start__status{border-radius:var(--radius-sm);min-height:3rem;color:var(--text-2);background:#05090f73;justify-content:center;align-items:center;gap:.5rem;font-weight:600;display:flex}.lobby-start__map{color:var(--text-3);text-align:center;font-size:.75rem}@media (max-width:1200px){.lobby-layout{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr)}.lobby-layout__chat{grid-column:1/-1}}@media (max-width:760px){.lobby-layout{grid-template-columns:minmax(0,1fr)}.lobby-layout__chat{order:-1}}.replays-body{flex-direction:column;gap:.75rem;max-width:64rem;margin:0 auto;display:flex}.replays-screen.is-dragging .replays-body{outline:2px dashed var(--accent);outline-offset:.5rem;border-radius:var(--radius-lg)}.replay-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.replay-item{flex-direction:row;align-items:center;gap:1rem;padding:.6rem}.replay-item__thumb{border-radius:var(--radius-sm);flex-shrink:0;width:8.5rem}.replay-item__info{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.replay-item__name{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.replay-item__meta{color:var(--text-2);flex-wrap:wrap;gap:.35rem .9rem;font-size:.75rem;display:flex}.replay-item__meta span{align-items:center;gap:.3rem;display:inline-flex}.replay-item__actions{align-items:center;gap:.25rem;display:flex}.drop-hint{color:var(--text-3);justify-content:center;align-items:center;gap:.4rem;padding:.5rem;font-size:.75rem;display:flex}@media (max-width:640px){.replay-item{flex-wrap:wrap}.replay-item__thumb{width:6rem}.replay-item__actions{justify-content:flex-end;width:100%}}.stats-body{flex-direction:column;gap:1rem;max-width:72rem;margin:0 auto;display:flex}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.5rem;display:grid}.stat-tile{border-radius:var(--radius);border:1px solid var(--line);background:#05090f80;padding:.75rem .8rem;position:relative}.stat-tile__icon{color:var(--text-3);opacity:.8;position:absolute;top:.7rem;right:.7rem}.stat-tile__value{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.stat-tile__label{color:var(--text-3);font-size:.75rem}.difficulty-wins{flex-wrap:wrap;gap:.5rem;display:flex}.difficulty-chip{border:1px solid var(--line);color:var(--text-2);border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .7rem;font-size:.8125rem;display:inline-flex}.difficulty-chip strong{font-family:var(--mono);color:var(--text)}.difficulty-chip--easy{border-color:#34d39959}.difficulty-chip--medium{border-color:#38bdf859}.difficulty-chip--hard{border-color:#fbbf2466}.difficulty-chip--impossible{border-color:#f8717173}.achievement-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.achievement{border-radius:var(--radius);border:1px solid var(--line);background:#05090f73;align-items:flex-start;gap:.75rem;padding:.75rem;display:flex}.achievement__icon{border-radius:var(--radius);width:2.6rem;height:2.6rem;color:var(--text-3);background:#94b2dc14;flex-shrink:0;place-items:center;display:grid}.achievement.is-unlocked{background:linear-gradient(135deg,#f5c5421a,#05090f73 60%);border-color:#f5c54259}.achievement.is-unlocked .achievement__icon{background:var(--gold-soft);color:var(--gold);box-shadow:0 0 18px #f5c54233}.achievement__text{flex:1;min-width:0}.achievement__title{font-size:.875rem;font-weight:700}.achievement.is-locked .achievement__title{color:var(--text-2)}.achievement__desc{color:var(--text-3);font-size:.75rem}.achievement__date{color:var(--gold);margin-top:.25rem;font-size:.6875rem}.achievement__progress{font-family:var(--mono);color:var(--text-3);align-items:center;gap:.5rem;margin-top:.35rem;font-size:.6875rem;display:flex}.achievement__progress .progress{flex:1}.achievement__check{color:var(--gold)}.achievement__lock{color:var(--text-3);opacity:.6}.help-body{max-width:60rem;margin:0 auto}.help{flex-direction:column;gap:1rem;display:flex}.help__body{min-height:18rem}.help-topics,.help-units{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:.75rem;display:grid}.help-topic,.help-unit{border-radius:var(--radius);border:1px solid var(--line);animation:rise-in var(--med) var(--ease);background:#05090f73;gap:.8rem;padding:.85rem;display:flex}.help-topic h3,.help-unit h3{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.help-topic p,.help-unit p{color:var(--text-2);font-size:.8125rem}.help-topic__icon,.help-unit__icon{border-radius:var(--radius);background:var(--accent-soft);width:2.5rem;height:2.5rem;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.help-controls{flex-direction:column;gap:1rem;display:flex}.hotkeys{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:.35rem 1.5rem;margin:0;padding:0;list-style:none;display:grid}.hotkeys__row{border-bottom:1px solid var(--line);align-items:center;gap:.75rem;padding:.35rem 0;font-size:.8125rem;display:flex}.hotkeys__keys{align-items:center;gap:.2rem;min-width:7.5rem;display:inline-flex}.hotkeys__sep{color:var(--text-3);padding:0 .1rem}.hotkeys__action{color:var(--text-2)}.settings-body{min-height:20rem}.modal.settings-modal{height:min(88vh,40rem)}.modal.settings-modal .modal__body{flex:1;min-height:0}.settings-grid{flex-direction:column;gap:.9rem;display:flex}.settings-row{justify-content:space-between;align-items:center;gap:1rem;padding:.25rem 0;display:flex}.settings-controls{flex-direction:column;gap:.85rem;display:flex}.settings-controls>p{font-size:.8125rem}.loading-screen{z-index:50;background:radial-gradient(ellipse at 50% 40%, #0f1a2b 0%, var(--bg-0) 70%);animation:fade-in var(--med) var(--ease);place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.loading-card{text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-xl);width:min(24rem,100%);box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;gap:1rem;padding:2rem 1.75rem 1.5rem;display:flex}.loading-card .progress{width:100%}.loading-card__stage{color:var(--text-2);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.loading-card__error-icon{color:var(--danger)}.loading-card__error{color:var(--text-2);word-break:break-word;font-size:.875rem}.game-screen{-webkit-user-select:none;user-select:none;background:#06101c;position:fixed;inset:0;overflow:hidden}.game-canvas{position:absolute;inset:0;overflow:hidden}.hud{z-index:10;pointer-events:none;--hud-top-h:3.25rem;--hud-panel-w:19rem;font-size:.8125rem;position:absolute;inset:0}.hud-panel{pointer-events:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:var(--glass)}.hud-panel__head{border-bottom:1px solid var(--line);align-items:center;gap:.4rem;padding:.35rem .45rem .35rem .6rem;display:flex}.hud-panel__title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:.4rem;padding:.2rem 0;font-size:.6875rem;font-weight:700;display:flex}.hud-panel__title:hover{color:var(--text)}.hud-panel__count{font-family:var(--mono);color:var(--text-3);letter-spacing:0}.is-collapsed>.hud-panel__head{border-bottom:0}.hud-top{top:calc(var(--hud-edge) + var(--safe-top));left:calc(var(--hud-edge) + var(--safe-left));right:calc(var(--hud-edge) + var(--safe-right));pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:start;gap:.5rem;display:grid;position:absolute}.hud-top__left,.hud-top__right{align-items:center;gap:.15rem;min-height:2.75rem;padding:.25rem;display:flex}.hud-top__left{justify-self:start;min-width:0;max-width:100%}.hud-top__right{justify-self:end}.hud-top__map{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;min-width:0;padding:0 .5rem 0 .25rem;font-weight:600;display:flex;overflow:hidden}.hud-top__center{flex-direction:column;justify-content:center;align-items:stretch;gap:.35rem;min-height:2.75rem;padding:.35rem .75rem;display:flex}.hud-top__center.is-spawn{box-shadow:var(--shadow), 0 0 24px #38bdf82e;border-color:#38bdf880}.spawn-phase{align-items:center;gap:.75rem;display:flex}.spawn-phase__count{color:var(--accent);text-align:center;min-width:2.2rem;text-shadow:0 0 14px var(--accent-glow);font-size:1.6rem;font-weight:700}.spawn-drain{z-index:60;pointer-events:none;background:#080c14b8;height:8px;position:fixed;top:0;left:0;right:0;box-shadow:0 2px #00000059}.spawn-drain__fill{transform-origin:0;background-color:var(--accent);background-image:repeating-linear-gradient(90deg,#0000 0 6px,#00000038 6px 8px);width:100%;height:100%;transition:transform .1s linear}.spawn-drain__fill.is-low{background-color:var(--danger);animation:.5s steps(2,jump-none) infinite spawn-drain-blink}@keyframes spawn-drain-blink{0%{opacity:1}to{opacity:.55}}@media (prefers-reduced-motion:reduce){.spawn-drain__fill{transition:none}.spawn-drain__fill.is-low{animation:none}}.spawn-phase__text{flex-direction:column;line-height:1.25;display:flex}.spawn-phase__text strong{font-size:.875rem}.spawn-phase__text span{color:var(--text-2)}.game-clock{white-space:nowrap;align-items:center;gap:1rem;display:flex}.game-clock>div{color:var(--text-2);align-items:center;gap:.35rem;display:inline-flex}.game-clock__time{font-size:.9375rem;font-weight:700;color:var(--text)!important}.game-clock__limit{color:var(--text-3);font-size:.75rem;font-weight:500}.game-clock__share .mono{color:var(--text);font-weight:700}.mini-bar{background:#94b2dc26;border-radius:999px;width:3.5rem;height:.3rem;overflow:hidden}.mini-bar__fill{background:linear-gradient(90deg, var(--accent), var(--success));border-radius:inherit;transform-origin:0;height:100%;transition:transform var(--med) var(--ease)}.time-controls{border-right:1px solid var(--line);align-items:center;gap:.1rem;margin-right:.2rem;padding-right:.35rem;display:flex}.time-controls__speed{text-align:center;min-width:2.6rem;color:var(--text);font-weight:700}.replay-bar{gap:.3rem;width:min(42rem,100vw - 33rem);padding:.45rem .65rem .4rem;display:grid}.replay-bar__timeline{align-items:center;gap:.55rem;display:flex}.replay-bar__time{min-width:2.6rem;color:var(--text-2);text-align:center;font-size:.6875rem}.replay-bar__track{cursor:pointer;touch-action:none;border-radius:var(--radius-xs);flex:1;height:1.5rem;position:relative}.replay-bar__track:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.replay-bar__rail{background:#94b2dc29;border-radius:999px;height:.4rem;position:absolute;top:50%;left:0;right:0;overflow:hidden;transform:translateY(-50%)}.replay-bar__fill,.replay-bar__pending{transform-origin:0;position:absolute;inset:0}.replay-bar__fill{background:var(--accent);transition:transform .125s linear}.replay-bar__pending{background:repeating-linear-gradient(-45deg,#38bdf880 0 .3rem,#38bdf82e .3rem .6rem);animation:.9s ease-in-out infinite alternate replay-pending}@keyframes replay-pending{0%{opacity:.55}to{opacity:1}}.replay-bar__thumb-slot{pointer-events:none;transition:transform .125s linear;position:absolute;inset:0}.replay-bar__thumb-slot.is-dragging{transition:none}.replay-bar__thumb{background:var(--text);border:2px solid var(--accent);border-radius:50%;width:.85rem;height:.85rem;position:absolute;top:50%;left:0;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000080}.replay-bar__thumb-slot.is-dragging .replay-bar__thumb,.replay-bar__track:hover .replay-bar__thumb{transform:translate(-50%,-50%)scale(1.2)}.is-seeking .replay-bar__thumb{border-color:var(--text-3)}.replay-bar__preview{border-radius:var(--radius-xs);background:var(--panel-raised);border:1px solid var(--line-strong);white-space:nowrap;pointer-events:none;gap:.35rem;padding:.15rem .45rem;font-size:.6875rem;display:flex;position:absolute;bottom:calc(100% + .3rem);transform:translate(-50%)}.replay-bar__preview span{color:var(--text-3)}.replay-bar__controls{align-items:center;gap:.5rem;display:flex}.replay-bar__buttons{align-items:center;gap:.1rem;display:flex}.replay-bar__status{text-overflow:ellipsis;white-space:nowrap;text-align:center;min-width:0;color:var(--text-3);flex:1;font-size:.6875rem;overflow:hidden}.replay-bar__seeking{color:var(--accent);align-items:center;gap:.4rem;display:inline-flex}.replay-bar__spinner{border:2px solid #38bdf840;border-top-color:var(--accent);border-radius:50%;width:.7rem;height:.7rem;animation:.8s linear infinite spin}.replay-bar__speeds{gap:.2rem;display:flex}.replay-bar__speed{height:1.45rem;padding:0 .42rem;font-size:.6875rem}.hud-left,.hud-right{top:calc(var(--hud-edge) + var(--safe-top) + var(--hud-top-h) + .5rem);width:var(--hud-panel-w);max-height:calc(100% - var(--hud-top-h) - 15rem);pointer-events:none;flex-direction:column;gap:.5rem;display:flex;position:absolute}.hud-left{left:calc(var(--hud-edge) + var(--safe-left))}.hud-right{right:calc(var(--hud-edge) + var(--safe-right))}.leaderboard{flex-direction:column;min-height:0;display:flex;overflow:hidden}.leaderboard>.hud-panel__head{flex-wrap:wrap;row-gap:.2rem}.lb-modes{gap:.1rem;margin-left:auto;display:flex}.lb-mode{white-space:nowrap;color:var(--text-3);border-radius:4px;padding:.15rem .45rem;font-size:.6875rem;font-weight:600}.lb-mode:hover{color:var(--text)}.lb-mode.is-active{background:var(--bg-4);color:var(--text)}.lb-body{min-height:0;overflow:hidden}.lb-body--scroll{max-height:22rem;overflow-y:auto}.lb-table{border-collapse:collapse;table-layout:fixed;width:100%}.lb-table th{background:var(--panel-solid);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);text-align:left;padding:.3rem .35rem;font-size:.625rem;font-weight:700;position:sticky;top:0}.lb-table th:first-child{text-align:right;width:1.9rem}.lb-table th.lb-num{text-align:right;width:3.3rem}.lb-row{cursor:pointer;transition:background var(--fast) var(--ease)}.lb-row td{border-top:1px solid #94b2dc0f;padding:.22rem .35rem}.lb-row:hover{background:#94b2dc14}.lb-row.is-me{background:#38bdf824}.lb-row.is-me .lb-name__text{color:var(--accent);font-weight:700}.lb-row.is-ally .lb-name__text{color:#9be7c9}.lb-rank{text-align:right;color:var(--text-3);font-size:.6875rem}.lb-name{align-items:center;gap:.3rem;min-width:0;display:flex}.lb-name__text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.lb-num{text-align:right;color:var(--text-2);font-size:.75rem}.lb-gold{color:#e9cf7f}.lb-icon{flex-shrink:0}.lb-icon--ally{color:var(--success)}.lb-icon--traitor{color:var(--danger)}.lb-icon--dc{color:var(--text-3)}.lb-gap td{text-align:center;color:var(--text-3);padding:0;line-height:.9}.lb-foot{border-top:1px solid var(--line);color:var(--text-3);padding:.3rem .6rem;font-size:.6875rem}.alliance-toasts{pointer-events:none;flex-direction:column;gap:.4rem;display:flex}.alliance-toast{animation:rise-in var(--med) var(--ease);border-color:#34d39966;padding:.55rem .6rem 0;overflow:hidden}.alliance-toast__head{align-items:center;gap:.4rem;display:flex}.alliance-toast__name{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:700;overflow:hidden}.alliance-toast__name:hover{color:var(--accent)}.alliance-toast__text{color:var(--text-2);align-items:center;gap:.35rem;margin:.2rem 0 .45rem;display:flex}.alliance-toast__text .icon{color:var(--success)}.alliance-toast__actions{flex-wrap:wrap;align-items:center;gap:.35rem;padding-bottom:.5rem;display:flex}.alliance-toast__secs{color:var(--text-3);margin-left:auto;font-size:.75rem}.timer-bar{background:#94b2dc1f;height:3px;margin:0 -.6rem}.timer-bar__fill{background:var(--success);transform-origin:0;height:100%;transition:transform .4s linear}.side-panel{flex-direction:column;flex-shrink:100;min-height:0;display:flex;overflow:hidden}.side-panel:not(.is-collapsed){min-height:min(11rem,28vh)}.side-panel__head{padding-left:.3rem}.side-panel__tabs{flex:1;gap:.15rem;display:flex}.side-tab{border-radius:var(--radius-sm);color:var(--text-3);align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.75rem;font-weight:650;display:inline-flex}.side-tab:hover{color:var(--text)}.side-tab.is-active{background:var(--bg-4);color:var(--text)}.event-log{flex-direction:column;flex:1;min-height:0;display:flex}.chip-row--filters{border-bottom:1px solid var(--line);gap:.25rem;padding:.4rem .45rem}.chip-row--filters .chip{height:1.35rem;padding:0 .45rem;font-size:.6875rem}.event-log__list,.chat__list{overflow-anchor:none;flex:1;min-height:6rem;max-height:20rem;margin:0;padding:.3rem;list-style:none;overflow-y:auto}.event-log__empty{text-align:center;color:var(--text-3);padding:1rem .5rem;font-size:.75rem}.log-entry{border-radius:var(--radius-xs);animation:fade-in var(--med) var(--ease);grid-template-columns:auto 1fr auto;align-items:start;gap:.45rem;padding:.3rem .35rem;font-size:.75rem;line-height:1.35;display:grid}.log-entry.is-clickable{cursor:pointer}.log-entry.is-clickable:hover{background:#94b2dc14}.log-entry__icon{color:var(--text-3);margin-top:.1rem}.log-entry--success .log-entry__icon{color:var(--success)}.log-entry--warning .log-entry__icon{color:var(--warning)}.log-entry--danger .log-entry__icon{color:var(--danger)}.log-entry--danger .log-entry__text{color:#fecaca}.log-entry--info .log-entry__icon{color:var(--accent)}.log-entry__text{color:var(--text);word-break:break-word}.log-entry__count{color:var(--text-2);vertical-align:.05em;background:#94b2dc24;border-radius:999px;margin-left:.35rem;padding:0 .3rem;font-size:.625rem;line-height:1.5;display:inline-block}.log-entry__time{color:var(--text-3);padding-top:.1rem;font-size:.625rem}.chat{flex-direction:column;flex:1;min-height:0;display:flex}.chat .chat-line{padding:.2rem .3rem;font-size:.75rem}.chat-line.is-private{border-radius:var(--radius-xs);background:#a78bfa14}.chat-line__scope{text-transform:uppercase;color:var(--violet);margin-left:.3rem;font-size:.625rem;font-weight:700}.chat-line__emoji{font-size:1.15rem;line-height:1}.chat__actions{border-top:1px solid var(--line);position:relative}.chat__toolbar{align-items:center;gap:.15rem;padding:.3rem;display:flex}.chat__form{flex:1;align-items:center;gap:.25rem;min-width:0;display:flex}.chat__form .input{height:2rem;padding:0 .5rem;font-size:.75rem}.chat__scope{border-radius:var(--radius-sm);background:var(--bg-3);border:1px solid var(--line);height:2rem;color:var(--text-2);white-space:nowrap;padding:0 .45rem;font-size:.6875rem;font-weight:700}.chat__disabled{color:var(--text-3);text-align:right;flex:1;padding-right:.3rem;font-size:.6875rem}.chat__popup{background:var(--panel-raised);border:1px solid var(--line-strong);border-radius:var(--radius);max-height:16rem;box-shadow:var(--shadow);animation:rise-in var(--fast) var(--ease);padding:.4rem;position:absolute;bottom:calc(100% + .35rem);left:.3rem;right:.3rem;overflow-y:auto}.chat__popup-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);padding:.2rem .3rem .35rem;font-size:.6875rem;font-weight:700}.emoji-grid{grid-template-columns:repeat(8,1fr);gap:.15rem;display:grid}.emoji-grid--compact{grid-template-columns:repeat(8,2.1rem)}.emoji-grid__item{border-radius:var(--radius-sm);height:2.1rem;font-size:1.25rem;font-family:"Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", var(--font);transition:background var(--fast) var(--ease), transform var(--fast) var(--ease);place-items:center;display:grid}.emoji-grid__item:hover{background:#94b2dc1f;transform:scale(1.12)}.quick-list{flex-direction:column;gap:.1rem;display:flex}.quick-list__item{text-align:left;border-radius:var(--radius-sm);padding:.35rem .5rem;font-size:.8125rem}.quick-list__item:hover{background:#94b2dc1a}.player-pick{flex-direction:column;gap:.1rem;display:flex}.player-pick__item{border-radius:var(--radius-sm);text-align:left;align-items:center;gap:.45rem;padding:.35rem .5rem;display:flex}.player-pick__item:hover{background:#94b2dc1a}.hud-bottom{left:50%;bottom:calc(var(--hud-edge) + var(--safe-bottom));max-width:calc(100% - 2 * var(--hud-edge) - 26rem);pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute;transform:translate(-50%)}.hud-bottom__row{pointer-events:none;align-items:flex-end;gap:.5rem;display:flex}.control-panel{flex-direction:column;gap:.5rem;width:25rem;padding:.6rem .7rem .55rem;display:flex}.cp-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;display:grid}.cp-stat{align-items:flex-start;gap:.35rem;min-width:0;display:flex}.cp-stat>.icon{color:var(--text-3);margin-top:.15rem}.cp-stat--troops>.icon{color:var(--accent)}.cp-stat--gold>.icon{color:var(--gold)}.cp-stat__value{white-space:nowrap;font-size:.875rem;font-weight:700;line-height:1.2}.cp-stat__max{color:var(--text-3);font-size:.625rem;font-weight:500;display:block}.cp-stat__rate{color:var(--success);font-size:.625rem;font-weight:600;display:block}.cp-stat__rate.is-negative{color:var(--danger)}.cp-stat__label{color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-size:.625rem}.pop-bar{background:#94b2dc1f;border-radius:999px;height:.5rem;position:relative;overflow:hidden}.pop-bar__troops,.pop-bar__workers{transform-origin:0;transition:transform var(--med) var(--ease);position:absolute;inset:0}.pop-bar__troops{background:var(--accent)}.pop-bar__workers{opacity:.85;background:#c9a227}.pop-bar__label{color:#ffffffd9;text-shadow:0 0 3px #000c;font-size:.5rem;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.cp-sliders{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.cp-slider__head{color:var(--text-2);white-space:nowrap;justify-content:space-between;align-items:baseline;gap:.4rem;font-size:.6875rem;display:flex}.cp-slider__head .mono{color:var(--text);align-items:center;gap:.2rem;display:inline-flex}.cp-slider__hint{color:var(--text-3);align-items:center;gap:.15rem;font-size:.625rem;display:flex}.cp-slider__hint .kbd{min-width:1.05rem;height:1.05rem;padding:0 .25rem;font-size:.5625rem}.slider__input--attack{--fill-color:var(--danger-strong)}.slider__input--attack::-webkit-slider-thumb{box-shadow:0 0 0 4px #ef444426}.slider__input--troops{--fill-color:var(--accent)}.build-bar{flex-direction:column;gap:.35rem;max-width:100%;padding:.4rem;display:flex}.build-bar.is-disabled .build-item{opacity:.45}.build-bar__items{scrollbar-width:none;align-items:stretch;gap:.25rem;display:flex;overflow-x:auto}.build-bar__items::-webkit-scrollbar{display:none}.build-bar__sep{background:var(--line);flex-shrink:0;width:1px;margin:.3rem .1rem}.build-item{border-radius:var(--radius-sm);border:1px solid var(--line);width:3.25rem;height:3.6rem;color:var(--text);transition:border-color var(--fast) var(--ease), background var(--fast) var(--ease), transform var(--fast) var(--ease);background:#05090f8c;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.15rem;display:flex;position:relative}.build-item:hover:not(:disabled){border-color:var(--line-strong);background:#141e2ee6;transform:translateY(-2px)}.build-item.is-selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent), 0 0 18px #38bdf840}.build-item--nuke.is-selected{border-color:var(--danger-strong);background:var(--danger-soft);box-shadow:0 0 0 1px var(--danger-strong), 0 0 18px #ef44444d}.build-item__key{font-family:var(--mono);color:var(--text-3);font-size:.5625rem;position:absolute;top:.15rem;left:.25rem}.build-item__cost{font-family:var(--mono);color:var(--gold);font-size:.625rem;font-weight:600}.build-item__count{background:var(--bg-4);border:1px solid var(--line-strong);border-radius:999px;place-items:center;min-width:.95rem;height:.95rem;padding:0 .2rem;font-size:.5625rem;font-weight:700;display:grid;position:absolute;top:.15rem;right:.2rem}.build-item.is-unaffordable .build-item__cost{color:var(--danger)}.build-item.is-unaffordable>.icon,.build-item.is-needsSilo>.icon,.build-item.is-needsPort>.icon{opacity:.45}.build-item.is-needsSilo .build-item__cost,.build-item.is-needsPort .build-item__cost{color:var(--text-3)}.build-item:disabled{opacity:.35}.build-item--boat .build-item__cost{color:var(--text-2);font-family:var(--font)}.build-bar__hint{color:var(--text-2);align-items:center;gap:.4rem;padding:.1rem .25rem;font-size:.6875rem;display:flex}.build-bar__hint .link-btn{margin-left:auto;font-size:.6875rem}.build-bar__hint .kbd{height:1rem;font-size:.5625rem}.warnings{top:calc(var(--hud-edge) + var(--safe-top) + var(--hud-top-h) + .5rem);pointer-events:none;max-width:min(32rem, calc(100% - 2 * var(--hud-panel-w) - 2rem));flex-direction:column;align-items:center;gap:.35rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.warning{pointer-events:auto;color:#fee2e2;box-shadow:var(--shadow);animation:rise-in var(--med) var(--ease);white-space:nowrap;text-overflow:ellipsis;background:#280e12e0;border:1px solid #f8717180;border-radius:999px;align-items:center;gap:.45rem;max-width:100%;padding:.4rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex;overflow:hidden}.warning>span:last-child{text-overflow:ellipsis;overflow:hidden}.warning--attack{color:#fef3c7;background:#281a0ae0;border-color:#fbbf2480}.warning--danger,.warning--nuke{animation:rise-in var(--med) var(--ease), pulse-danger 1.4s ease-in-out infinite}.warning--nuke{border-color:var(--danger-strong);background:#3c0a0ef0;font-size:.8125rem}.warning--nuke>.icon{color:#fca5a5}.spectator-banner{top:calc(var(--hud-edge) + var(--safe-top) + var(--hud-top-h) + .5rem);pointer-events:auto;color:#ddd6fe;box-shadow:var(--shadow);white-space:nowrap;background:#1e1634e0;border:1px solid #a78bfa73;border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .8rem;font-weight:600;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.eliminated-card{text-align:center;width:min(24rem,100% - 2rem);animation:scale-in var(--med) var(--ease);border-color:#f8717166;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.eliminated-card>.icon{color:var(--danger)}.eliminated-card p{color:var(--text-2)}.player-tooltip{z-index:40;pointer-events:none;border-color:var(--line-strong);width:15rem;animation:fade-in var(--fast) var(--ease);padding:.55rem .65rem;position:fixed}.player-tooltip__head{align-items:center;gap:.4rem;font-size:.875rem;display:flex}.player-tooltip__head strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.player-tooltip__sub{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:.35rem;margin:.2rem 0 .45rem;font-size:.6875rem;display:flex}.player-tooltip__stats{grid-template-columns:repeat(3,1fr);gap:.3rem;margin:0;display:grid}.player-tooltip__stats dt,.player-panel__stats dt{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-size:.5625rem}.player-tooltip__stats dd,.player-panel__stats dd{margin:0;font-size:.8125rem;font-weight:700}.player-tooltip__note{color:var(--warning);align-items:center;gap:.3rem;margin-top:.4rem;font-size:.6875rem;display:flex}.rel{letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line-strong);height:1.15rem;color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;padding:0 .4rem;font-size:.625rem;font-weight:700;display:inline-flex}.rel--self{color:var(--accent);border-color:#38bdf873}.rel--teammate,.rel--ally{color:var(--success);background:var(--success-soft);border-color:#34d39973}.rel--hostile{color:var(--danger);background:var(--danger-soft);border-color:#f8717173}.rel--traitor{color:#fecaca;border-color:var(--danger-strong);background:#ef44444d}.player-panel{top:calc(var(--hud-edge) + var(--safe-top) + var(--hud-top-h) + .5rem);right:calc(var(--hud-edge) + var(--safe-right) + var(--hud-panel-w) + .5rem);width:21rem;max-height:calc(100% - var(--hud-top-h) - 2rem);border-color:var(--line-strong);z-index:20;animation:rise-in var(--med) var(--ease);flex-direction:column;display:flex;position:absolute;overflow-y:auto}.player-panel__head{align-items:center;gap:.6rem;padding:.75rem .6rem .6rem .85rem;display:flex;position:relative}.player-panel__color{border-radius:0 3px 3px 0;width:4px;position:absolute;top:.75rem;bottom:.6rem;left:0}.player-panel__title{flex:1;min-width:0}.player-panel__title h2{white-space:nowrap;text-overflow:ellipsis;font-size:1rem;overflow:hidden}.player-panel__sub{color:var(--text-3);align-items:center;gap:.4rem;font-size:.75rem;display:flex}.player-panel__badges{flex-wrap:wrap;gap:.3rem;padding:0 .85rem .6rem;display:flex}.player-panel__stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:.5rem;margin:0;padding:.6rem .85rem;display:grid}.player-panel__structures{border-top:1px solid var(--line);flex-wrap:wrap;gap:.35rem;padding:.5rem .85rem;display:flex}.structure-count{border-radius:var(--radius-xs);background:#94b2dc14;align-items:center;gap:.25rem;padding:.15rem .4rem;font-size:.75rem;display:inline-flex}.structure-count.is-zero{opacity:.4}.structure-progress{gap:.25rem;display:grid}.structure-progress__row{color:var(--text-2);justify-content:space-between;gap:.6rem;font-size:.6875rem;display:flex}.structure-progress__row--muted{color:var(--warning)}.structure-progress__row--ready{color:var(--success)}.structure-progress__bar{height:.3rem}.structure-card{pointer-events:none;gap:.35rem;width:13.5rem;padding:.45rem .6rem .5rem;display:grid;position:absolute;bottom:calc(92px + 2.3rem);left:0;transform:translate(-50%)}.structure-card__head{align-items:center;gap:.4rem;font-size:.8125rem;display:flex}.structure-card__head strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.structure-card__level{color:var(--gold);font-size:.6875rem}.construction-list{border-top:1px solid var(--line);padding:.5rem .85rem .6rem}.construction-list__title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);margin:0 0 .35rem;font-size:.6875rem;font-weight:700}.construction-list ul{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.construction-list__item{border-radius:var(--radius-xs);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto 1fr;align-items:start;gap:.5rem;padding:.3rem .35rem;display:grid}.construction-list__item:hover,.construction-list__item:focus-visible{background:#94b2dc14;outline:none}.construction-list__body{gap:.15rem;min-width:0;display:grid}.construction-list__name{font-size:.75rem;font-weight:600}.construction-list__more{color:var(--text-3);padding:.2rem .35rem 0;font-size:.6875rem}.player-panel__actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:.35rem;padding:.6rem .85rem;display:flex}.player-panel__popup{border-top:1px solid var(--line);animation:rise-in var(--fast) var(--ease);flex-direction:column;gap:.5rem;padding:.6rem .85rem;display:flex}.player-panel__foot{border-top:1px solid var(--line);padding:.4rem .6rem}.radial{z-index:45;pointer-events:auto;width:0;height:0;animation:scale-in .14s var(--ease);position:fixed}.radial__ring{pointer-events:none;position:absolute;top:0;left:0;overflow:visible;transform:translate(-50%,-50%)}.radial__track{fill:#080d168c;stroke:#94b2dc2e;stroke-width:54px}.radial__outer{fill:none;stroke:#38bdf840;stroke-width:1px;stroke-dasharray:3 6}.radial__item{background:var(--panel-raised);border:1px solid var(--line-strong);width:2.9rem;height:2.9rem;color:var(--text);box-shadow:var(--shadow-sm);transition:background var(--fast) var(--ease), border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.radial__item:hover,.radial__item:focus-visible{background:var(--bg-4);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), var(--shadow-sm);z-index:1;outline:none}.radial__item--danger{color:#fca5a5}.radial__item--danger:hover{border-color:var(--danger-strong);box-shadow:0 0 0 3px var(--danger-soft)}.radial__item--success{color:#86efac}.radial__item--gold{color:var(--gold)}.radial__item.has-sub:after{content:"";opacity:.6;border-bottom:1.5px solid;border-right:1.5px solid;width:.3rem;height:.3rem;position:absolute;bottom:.3rem;right:.3rem}.radial__item.is-disabled{opacity:.4;cursor:not-allowed}.radial__detail{background:var(--bg-1);border:1px solid var(--line);color:var(--text-2);white-space:nowrap;border-radius:999px;padding:0 .3rem;font-size:.5625rem;position:absolute;bottom:-.5rem;left:50%;transform:translate(-50%)}.radial__center{background:var(--bg-2);border:1px solid var(--line-strong);width:2.6rem;height:2.6rem;color:var(--text-2);border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.radial__center:hover{color:var(--text);border-color:var(--accent)}.radial__label{background:var(--panel-raised);border:1px solid var(--line-strong);white-space:nowrap;pointer-events:none;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:700;position:absolute;top:calc(92px + 2.2rem);left:0;transform:translate(-50%)}.radial__empty{color:var(--text-3);white-space:nowrap;position:absolute;transform:translate(-50%,2rem)}.radial__panel{width:19rem;max-height:22rem;padding:.5rem;position:absolute;top:0;left:0;overflow-y:auto;transform:translate(-50%,-50%)}.radial__panel-head{color:var(--text-2);justify-content:space-between;align-items:center;padding:.1rem .2rem .45rem;font-size:.75rem;font-weight:700;display:flex}.tutorial{pointer-events:auto;width:min(30rem,100vw - 2rem);box-shadow:var(--shadow), 0 0 30px #38bdf81f;animation:rise-in var(--med) var(--ease);border-color:#38bdf880;padding:.75rem .85rem .65rem}.tutorial__progress{gap:.25rem;margin-bottom:.6rem;display:flex}.tutorial__dot{background:#94b2dc2e;border-radius:999px;flex:1;height:3px}.tutorial__dot.is-done{background:var(--accent-strong)}.tutorial__dot.is-current{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.tutorial__body{gap:.75rem;display:flex}.tutorial__icon{border-radius:var(--radius);background:var(--accent-soft);width:2.5rem;height:2.5rem;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.tutorial__body h3{margin-bottom:.2rem}.tutorial__body p{color:var(--text-2);font-size:.8125rem}.tutorial__keys{gap:.25rem;margin-top:.4rem;display:flex}.tutorial__actions{align-items:center;gap:.75rem;margin-top:.65rem;display:flex}.tutorial__actions .link-btn{color:var(--text-3);font-weight:500}.tutorial__count{color:var(--text-3);margin-left:auto;font-size:.6875rem}.game-menu{flex-direction:column;gap:.45rem;display:flex}.end-backdrop{z-index:60;padding:max(.75rem, var(--safe-top)) max(.75rem, var(--safe-right)) max(.75rem, var(--safe-bottom)) max(.75rem, var(--safe-left));-webkit-backdrop-filter:blur(2px);pointer-events:auto;animation:fade-in .4s var(--ease);background:#02050a8c;place-items:center;display:grid;position:fixed;inset:0}.end-screen{border:1px solid var(--line-strong);border-radius:var(--radius-xl);width:min(62rem,100%);max-height:100%;box-shadow:var(--shadow-lg);animation:scale-in .4s var(--ease);background:linear-gradient(#141e2ef7,#090e17fa);flex-direction:column;gap:.9rem;padding:1.25rem;display:flex;overflow-y:auto}.end-hero{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.end-hero__icon{border-radius:var(--radius-lg);width:4.5rem;height:4.5rem;color:var(--text-2);background:#94b2dc1a;flex-shrink:0;place-items:center;display:grid}.end-screen.is-victory .end-hero__icon{background:var(--gold-soft);color:var(--gold);box-shadow:0 0 40px #f5c5424d}.end-screen.is-defeat .end-hero__icon{background:var(--danger-soft);color:var(--danger)}.end-hero__text{flex:1;min-width:12rem}.end-hero__text h1{letter-spacing:.04em;font-size:2rem}.end-screen.is-victory .end-hero__text h1{color:var(--gold)}.end-hero__text p{color:var(--text-2)}.end-hero__facts{gap:.5rem;display:flex}.fact{border-radius:var(--radius);border:1px solid var(--line);background:#05090f80;flex-direction:column;align-items:center;min-width:5.5rem;padding:.5rem .75rem;display:flex}.fact__value{font-size:1.25rem;font-weight:700}.fact__label{color:var(--text-3);text-align:center;font-size:.6875rem}.end-achievements{border-radius:var(--radius);background:var(--gold-soft);color:var(--gold);border:1px solid #f5c5424d;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:600;display:flex}.end-body{min-height:18rem}.end-empty{text-align:center;color:var(--text-3);padding:3rem 1rem}.end-graphs{flex-direction:column;gap:.6rem;display:flex}.end-graphs .tabs{border-bottom:0}.end-table-wrap{overflow-x:auto}.end-table{border-collapse:collapse;width:100%;font-size:.8125rem}.end-table th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--line-strong);white-space:nowrap;padding:.4rem .45rem;font-size:.625rem;font-weight:700}.end-table td{border-bottom:1px solid var(--line);padding:.35rem .45rem}.end-table .num{text-align:right}.end-table tr.is-me td{background:#38bdf81f}.end-table tr.is-dead td{color:var(--text-3)}.end-table__name{white-space:nowrap;align-items:center;gap:.4rem;display:flex}.end-table__more{margin-top:.5rem}.sort-btn{font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;align-items:center;gap:.15rem;display:inline-flex}.sort-btn:hover,.sort-btn.is-active{color:var(--accent)}.award-grid{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.6rem;display:grid}.award{border-radius:var(--radius);border:1px solid var(--line);animation:rise-in var(--med) var(--ease);background:#05090f80;flex-direction:column;gap:.25rem;padding:.85rem;display:flex}.award.is-mine{background:linear-gradient(135deg,#f5c5421f,#05090f80 60%);border-color:#f5c54273}.award__icon{border-radius:var(--radius);background:var(--gold-soft);width:2.6rem;height:2.6rem;color:var(--gold);place-items:center;margin-bottom:.25rem;display:grid}.award__title{font-weight:700}.award__desc{color:var(--text-3);font-size:.75rem}.award__winner{align-items:center;gap:.35rem;margin-top:.35rem;font-weight:600;display:flex}.award__value{color:var(--text);font-size:1.1rem;font-weight:700}.end-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding-top:.75rem;display:flex}.chart{flex-direction:column;gap:.5rem;display:flex}.chart__plot{position:relative}.chart__svg{touch-action:pan-y;width:100%;height:auto;overflow:visible}.chart__grid{stroke:#94b2dc1a;stroke-width:1px}.chart__label{fill:var(--text-3);font-size:11px;font-family:var(--mono)}.chart__line{fill:none;stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;opacity:.85}.chart__line.is-emphasis{stroke-width:3px;opacity:1;filter:drop-shadow(0 0 4px #ffffff40)}.chart__cursor{stroke:#e7eef859;stroke-dasharray:3 3}.chart__dot{stroke:#0b1220;stroke-width:1.5px}.chart__tip{border-radius:var(--radius-sm);background:var(--panel-raised);border:1px solid var(--line-strong);min-width:10rem;box-shadow:var(--shadow);pointer-events:none;padding:.4rem .55rem;font-size:.75rem;position:absolute;top:.5rem;transform:translate(-50%)}.chart__tip-time{color:var(--text-3);margin-bottom:.2rem}.chart__tip-row{align-items:center;gap:.4rem;display:flex}.chart__tip-row.is-emphasis{font-weight:700}.chart__tip-name{white-space:nowrap;text-overflow:ellipsis;flex:1;max-width:9rem;overflow:hidden}.chart__legend{flex-wrap:wrap;gap:.3rem;display:flex}.chart__legend-item{border:1px solid var(--line);color:var(--text-2);border-radius:999px;align-items:center;gap:.35rem;padding:.15rem .5rem;font-size:.75rem;display:inline-flex}.chart__legend-item.is-emphasis{border-color:var(--line-strong);color:var(--text);font-weight:700}.chart__legend-item.is-off{opacity:.4;text-decoration:line-through}@media (max-width:1280px){.hud{--hud-panel-w:17rem}.replay-bar{width:min(42rem,100vw + -2*clamp(5.5rem,50vw - 13.75rem,12rem) - 2rem)}.hud-bottom{max-width:calc(100% - 2 * var(--hud-edge))}.hud-bottom__row{flex-direction:column-reverse;align-items:center}}@media (max-width:900px){.hud{--hud-panel-w:15rem;--hud-edge:.4rem}.hud-top__map{display:none}.game-clock{gap:.6rem}.game-clock__alive{display:none!important}.player-panel{width:min(21rem,100% - 1rem);right:50%;transform:translate(50%)}.lb-table th.lb-num:last-child,.lb-table td.lb-gold,.lb-table th.lb-num:nth-child(4),.lb-row td.lb-num:nth-child(4){display:none}}@media (max-width:680px){.hud{--hud-panel-w:min(13.5rem, 46vw);font-size:.75rem}.hud-top{grid-template-columns:auto 1fr auto;gap:.3rem}.hud-top__left{min-width:max-content}.hud-top__aux,.game-clock .mini-bar,.game-clock .btn__label{display:none}.hud-top__center{min-width:0;padding:.25rem .5rem}.spawn-phase__text span{display:none}.spawn-phase__count{font-size:1.2rem}.time-controls .icon-btn--sm{display:none}.hud-left,.hud-right{max-height:calc(100% - var(--hud-top-h) - 19rem)}.lb-table th.lb-num:nth-child(4),.lb-row td.lb-num:nth-child(4){display:none}.control-panel{width:calc(100vw - 2 * var(--hud-edge));padding:.45rem .55rem}.cp-stat__label,.cp-slider__hint{display:none}.build-bar{width:calc(100vw - 2 * var(--hud-edge))}.build-item{width:2.9rem;height:3.2rem}.warnings{max-width:calc(100% - 1rem);top:calc(var(--hud-edge) + var(--safe-top) + var(--hud-top-h) + .25rem)}.end-screen{padding:.85rem}.end-hero__text h1{font-size:1.5rem}.end-hero__facts{width:100%}.fact{flex:1;min-width:0}.tutorial{width:calc(100vw - 2 * var(--hud-edge));padding:.5rem .6rem .45rem}.tutorial__progress{margin-bottom:.4rem}.tutorial__icon{display:none}.tutorial__actions{margin-top:.4rem}.spectator-banner{top:calc(var(--hud-edge) + var(--safe-top) + var(--hud-top-h) + 3.25rem);max-width:calc(100vw - 2 * var(--hud-edge));white-space:nowrap}.replay-bar{width:calc(100vw - 2 * var(--hud-edge));padding:.4rem .5rem .35rem}.replay-bar__controls{flex-wrap:wrap;justify-content:space-between}.replay-bar__status{flex-basis:100%;order:3}}.lazy-screen{color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.lazy-screen--inline{min-height:12rem}.map-vote{flex-direction:column;gap:.5rem;display:flex}.map-vote__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.map-vote__title{color:var(--text);align-items:center;gap:.4rem;font-weight:650;display:inline-flex}.map-vote__status{color:var(--text-2);font-variant-numeric:tabular-nums;align-items:center;gap:.3rem;font-size:.78rem;display:inline-flex}.map-vote__status.is-soon{color:var(--warning)}.map-vote__sentence{color:var(--text-3);margin:0;font-size:.8rem}.map-vote__options{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.6rem;display:grid}.vote-card{text-align:left;color:inherit;font:inherit;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:border-color var(--fast) var(--ease), transform var(--fast) var(--ease), box-shadow var(--fast) var(--ease), opacity var(--med) var(--ease);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.vote-card:hover:not(:disabled){border-color:var(--line-strong);transform:translateY(-1px)}.vote-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.vote-card:disabled{cursor:default}.vote-card.is-leading{border-color:var(--line-accent)}.vote-card.is-mine{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 18px var(--accent-soft)}.vote-card.is-winner{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold), 0 0 22px var(--gold-soft)}.vote-card.is-out{opacity:.45}.vote-card__thumb{border-bottom:1px solid var(--line);width:100%}.vote-card__thumb img{image-rendering:pixelated}.vote-card__flag{letter-spacing:.04em;text-transform:uppercase;color:var(--text-inverse);background:var(--accent);border-radius:var(--radius-xs);align-items:center;gap:.25rem;padding:.12rem .45rem;font-size:.68rem;font-weight:700;display:inline-flex;position:absolute;top:.4rem;left:.4rem}.vote-card__flag.is-winner{background:var(--gold)}.vote-card__body{flex-direction:column;gap:.3rem;padding:.5rem .6rem .6rem;display:flex}.vote-card__name{font-size:.88rem;font-weight:650;line-height:1.2}.vote-card__meta{color:var(--text-3);flex-wrap:wrap;gap:.2rem .6rem;font-size:.72rem;display:flex}.vote-card__tally{align-items:center;gap:.45rem;display:flex}.vote-card__bar{background:var(--bg-4);height:6px;image-rendering:pixelated;flex:1}.vote-card__fill{background:var(--accent);height:100%;transition:width var(--med) var(--ease);display:block}.vote-card.is-winner .vote-card__fill{background:var(--gold)}.vote-card__count{color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.72rem}.vote-card__mine{color:var(--accent);align-items:center;gap:.25rem;font-size:.72rem;font-weight:650;display:inline-flex}.lobby-vote-toggle{border:1px dashed var(--line-strong);border-radius:var(--radius);padding:.5rem .6rem}.lobby-row__vote{color:var(--accent);align-items:center;gap:.25rem;display:inline-flex}.account-body{gap:12px;width:100%;max-width:720px;margin:0 auto;padding:0 16px 24px;display:grid}.account-card{gap:10px;padding:14px 16px;display:grid}.account-card h2{margin:0;font-size:1rem}.account-card p{margin:0;line-height:1.45}.account-muted{color:var(--text-2);font-size:.875rem}.account-note{border:2px solid var(--gold);background:var(--gold-soft);color:var(--text);margin:0;padding:8px 10px;font-size:.875rem}.account-profile__head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.account-form{gap:10px;display:grid}.account-form--inline{grid-template-columns:1fr auto;align-items:end}.account-tabs{gap:6px;display:flex}.account-or{text-align:center;color:var(--text-3);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem}.account-oauth{gap:6px;display:grid}.account-oauth a{justify-content:center;text-decoration:none}.account-xp{gap:4px;display:grid}.account-xp__label{justify-content:space-between;gap:8px;font-size:.8rem;display:flex}.account-xp__level{color:var(--gold);font-weight:700}.account-xp__nums{color:var(--text-2);font-variant-numeric:tabular-nums}.account-xp__bar{border:2px solid var(--line-strong);background:#00000073;grid-template-columns:repeat(20,1fr);gap:2px;padding:2px;display:grid}.account-xp__bar>span{background:#94b2dc1f;height:8px}.account-xp__bar>span.is-on{background:var(--gold);box-shadow:inset 0 -2px #0000004d}.account-currencies{grid-template-columns:1fr 1fr;gap:8px;display:grid}.account-currency{border:2px solid var(--line-strong);background:#0000004d;grid-template-columns:auto 1fr;align-items:center;column-gap:6px;padding:6px 8px;display:grid}.account-currency--coins{color:var(--gold)}.account-currency--crystals{color:var(--accent)}.account-currency__value{font-variant-numeric:tabular-nums;color:var(--text);font-size:1.05rem;font-weight:700}.account-currency__name{text-transform:uppercase;letter-spacing:.08em;grid-column:1/-1;font-size:.72rem}.account-currency__desc{color:var(--text-2);grid-column:1/-1;font-size:.78rem}.account-chip{text-align:left;width:100%;color:var(--text);cursor:pointer;font:inherit;gap:8px;padding:10px 12px;display:grid}.account-chip:hover,.account-chip:focus-visible{border-color:var(--accent)}.account-chip__head{grid-template-columns:auto 1fr;align-items:center;column-gap:8px;display:grid}.account-chip__name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.account-chip__sub{color:var(--text-2);grid-column:2;font-size:.8rem}.account-chip__reward{color:var(--gold);margin:0;font-size:.8rem}.account-gate{gap:12px;display:grid}.account-gate p{margin:0}@media (max-width:480px){.account-currencies,.account-form--inline{grid-template-columns:1fr}}.ad-badge{letter-spacing:.04em;text-transform:uppercase;color:var(--text-inverse);background:var(--gold);border:1px solid #00000080;padding:1px 5px;font-size:.68rem;font-weight:700;display:inline-block}.ad-slot{background:var(--panel);border:2px solid var(--line);flex-direction:column;gap:.5rem;padding:.6rem .7rem;display:flex;box-shadow:3px 3px #00000073}.ad-slot__offer{align-items:center;gap:.6rem;display:flex}.ad-slot__offer-text{flex-direction:column;flex:1;min-width:0;display:flex}.ad-slot__offer-title{color:var(--gold);font-size:.86rem;font-weight:700}.ad-slot__offer-body{color:var(--text-2);font-size:.78rem;line-height:1.3}.ad-slot__banner-wrap{position:relative}.ad-slot__badge{z-index:1;position:absolute;top:2px;left:2px}.ad-slot__banner{width:100%;min-height:0;overflow:hidden}.ad-slot__banner>*{max-width:100%;margin:0 auto;display:block}.ad-test-banner{width:100%;height:auto;image-rendering:pixelated;image-rendering:crisp-edges}.ad-slot__choices{align-self:flex-end;font-size:.72rem}.ad-overlay{z-index:200;background:#03060ad1;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.ad-overlay__panel{background:var(--panel-solid);border:2px solid var(--line-strong);width:min(420px,100%);color:var(--text);flex-direction:column;align-items:stretch;gap:.6rem;padding:14px 16px;display:flex;box-shadow:6px 6px #0009}.ad-overlay__head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.ad-overlay__kind{color:var(--text-3);font-size:.74rem}.ad-overlay__art{width:100%;height:auto;image-rendering:pixelated;image-rendering:crisp-edges;border:2px solid #00000080}.ad-overlay__title{margin:0;font-size:1.05rem}.ad-overlay__body,.ad-overlay__wait{color:var(--text-2);margin:0;font-size:.85rem;line-height:1.35}.ad-overlay__wait:empty{display:none}.ad-overlay .btn{align-self:flex-end}.ad-consent__note{color:var(--text-3);margin:.5rem 0 0;font-size:.74rem}.ads-admin{flex-direction:column;gap:.8rem;display:flex}.ads-admin__muted{color:var(--text-3);margin:0;font-size:.8rem}.ads-admin__grid,.ads-admin__placements{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.8rem;display:grid}.ads-admin__placement{border:2px solid var(--line);flex-direction:column;gap:.5rem;margin:0;padding:.6rem .8rem;display:flex}.ads-admin__placement legend{padding:0 .3rem;font-weight:700}.ads-admin__round{color:var(--text-2);justify-content:space-between;align-items:center;gap:.8rem;font-size:.82rem;display:flex}.ads-admin__table{border-collapse:collapse;width:100%;font-size:.82rem}.ads-admin__table th,.ads-admin__table td{text-align:left;border-bottom:1px solid var(--line);padding:4px 6px}.ads-admin__table td:not(:first-child),.ads-admin__table th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.community-tabs{max-width:72rem;margin:0 auto .75rem}.community-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem;max-width:72rem;margin:0 auto;display:grid}.community-layout--single{grid-template-columns:minmax(0,1fr);max-width:48rem}@media (max-width:860px){.community-layout{grid-template-columns:minmax(0,1fr)}}.community-card{flex-direction:column;gap:.6rem;display:flex}.community-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.community-row .input{flex:10rem;min-width:0}.community-sub{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim,#9aa4b2);margin:.4rem 0 0;font-size:.8rem}.community-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.community-list__row{background:#ffffff0a;border-radius:4px;align-items:center;gap:.5rem;padding:.35rem .5rem;display:flex}.community-list__name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.community-list__name small{opacity:.65;margin-left:.5rem}.community-list--invites .community-list__row{background:#f0be501f}.community-dot{width:8px;height:8px;image-rendering:pixelated;background:#5b6270;flex:none}.community-dot.is-online{background:#5fd068;box-shadow:0 0 0 2px #5fd06840}.community-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;display:grid}@media (max-width:520px){.community-plans{grid-template-columns:minmax(0,1fr)}}.community-plan{text-align:left;color:inherit;font:inherit;cursor:pointer;background:#ffffff08;border:1px solid #ffffff1f;border-radius:4px;flex-direction:column;gap:.2rem;padding:.5rem .6rem;display:flex}.community-plan span{opacity:.75;font-size:.78rem}.community-plan.is-active{border-color:var(--accent,#e0b04a);background:#e0b04a1f}.community-plan:disabled{cursor:default}.community-plan:focus-visible{outline:2px solid var(--accent,#e0b04a);outline-offset:1px}.community-maps{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.community-map{background:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;flex-direction:column;gap:.35rem;padding:.6rem;display:flex}.community-map--featured{border-color:#e0b04a99}.community-map__head{flex-wrap:wrap;align-items:baseline;gap:.4rem;display:flex}.community-map__name{font-size:1rem}.community-map__by,.community-map__meta{opacity:.7;font-size:.78rem}.community-map__meta{gap:.8rem;display:flex}.community-map__meta span{align-items:center;gap:.25rem;display:inline-flex}.party-bar{z-index:40;color:inherit;font:inherit;cursor:pointer;background:#141820eb;border:1px solid #e0b04a8c;border-radius:4px;align-items:center;gap:.45rem;padding:.4rem .8rem;font-size:.85rem;display:inline-flex;position:fixed;bottom:.75rem;left:50%;transform:translate(-50%)}.party-bar__badge{background:#e0b04a40;border-radius:3px;padding:0 .4rem}.map-of-week{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#141820bf;border:1px solid #e0b04a73;border-radius:4px;align-items:center;gap:.5rem;padding:.45rem .65rem;display:flex}.map-of-week__text{flex-direction:column;min-width:0;display:flex}.map-of-week__label{text-transform:uppercase;letter-spacing:.06em;opacity:.75;font-size:.72rem}.map-of-week__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.community-code{font:inherit;font-family:var(--font-mono,ui-monospace, monospace);color:var(--text,#e6edf3);border:2px solid var(--border,#3a4250);cursor:pointer;background:0 0;border-radius:0;padding:.15rem .5rem}.community-code:hover,.community-code:focus-visible{border-color:var(--accent,#6cb6ff)}.community-coop-note{color:var(--text-dim,#9aa4b2);margin:.25rem 0;font-size:.85rem}.community-report{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.prog-screen .tabs{max-width:76rem;margin:0 auto .75rem}.prog-body{max-width:76rem;margin:0 auto}.prog-level-layout,.prog-weekly{grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);align-items:start;gap:1rem;display:grid}@media (max-width:900px){.prog-level-layout,.prog-weekly{grid-template-columns:minmax(0,1fr)}}.prog-sub{color:var(--text-2);margin:.75rem 0 .35rem;font-size:.85rem}.prog-level__row{align-items:center;gap:.75rem;display:flex}.prog-level__badge,.prog-menu-card__badge{border:2px solid var(--gold);border-radius:var(--radius-xs);background:var(--gold-soft);min-width:3rem;height:3rem;color:var(--gold);font-variant-numeric:tabular-nums;place-items:center;font-size:1.25rem;font-weight:800;display:grid}.prog-level__bar{flex:1;min-width:0}.prog-level__xp{color:var(--text-2);font-variant-numeric:tabular-nums;margin-top:.3rem;font-size:.8rem}.prog-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.prog-list__row{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-2);justify-content:space-between;align-items:center;gap:.5rem;padding:.3rem .5rem;display:flex}.prog-list__label{color:var(--text-2);white-space:nowrap;font-size:.85rem}.prog-reward{flex-wrap:wrap;justify-content:flex-end;gap:.25rem;display:inline-flex}.prog-reward.is-muted{opacity:.55}.prog-reward--none{color:var(--text-3)}.prog-chip{border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--bg-3);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:.2rem;padding:.1rem .35rem;font-size:.75rem;display:inline-flex}.prog-chip--coins{color:var(--gold)}.prog-chip--crystals{color:var(--accent)}.prog-pass__meta{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.prog-pass__meta>span{align-items:center;gap:.3rem;display:inline-flex}.prog-pass__owned{color:var(--gold);font-weight:700}.prog-pass__track{scroll-snap-type:x proximity;gap:.35rem;padding:.6rem 0 .4rem;display:flex;overflow-x:auto}.prog-tier{scroll-snap-align:start;flex:0 0 7.5rem;grid-template-rows:auto 1fr 1fr;gap:.25rem;display:grid}.prog-tier__n{text-align:center;color:var(--text-3);border-bottom:2px solid var(--line);font-size:.8rem;font-weight:700}.prog-tier.is-reached .prog-tier__n{color:var(--accent);border-bottom-color:var(--accent)}.prog-tier__cell{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-2);justify-content:center;align-items:center;min-height:3.2rem;padding:.3rem;display:flex;position:relative}.prog-tier__cell .prog-reward{justify-content:center}.prog-tier__cell--premium{border-color:var(--line-accent);background:var(--accent-soft)}.prog-tier__cell--premium.is-locked{background:var(--bg-2)}.prog-tier__lock,.prog-tier__done{color:var(--text-3);position:absolute;top:.15rem;right:.2rem}.prog-tier__done{color:var(--success,var(--accent))}.prog-ach__summary{margin:.25rem 0 .5rem;font-weight:700}.prog-filter{flex-wrap:wrap;gap:.3rem;margin-bottom:.75rem;display:flex}.prog-filter__chip{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-2);color:var(--text-2);cursor:pointer;padding:.25rem .55rem;font-size:.8rem}.prog-filter__chip.is-active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.prog-ach__grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.prog-ach__card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-2);gap:.6rem;padding:.6rem;display:flex}.prog-ach__card.is-done{border-color:var(--gold)}.prog-ach__card.is-done .prog-ach__icon{color:var(--gold)}.prog-ach__card.is-fresh{background:var(--gold-soft)}.prog-ach__icon{color:var(--text-3);flex:none;margin-top:.1rem}.prog-ach__body{flex-direction:column;gap:.3rem;min-width:0;display:flex}.prog-ach__body .prog-reward{justify-content:flex-start}.prog-ach__name{font-size:.9rem;font-weight:700}.prog-ach__goal{color:var(--text-2);font-size:.8rem}.prog-weekly__meta,.prog-weekly__me{color:var(--text-2);font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.prog-mods{flex-direction:column;gap:.4rem;margin:0 0 .5rem;padding:0;list-style:none;display:flex}.prog-mods__row{border:1px solid var(--line-accent);border-radius:var(--radius-sm);background:var(--accent-soft);gap:.5rem;padding:.45rem .55rem;display:flex}.prog-mods__icon{color:var(--accent);flex:none;margin-top:.1rem}.prog-mods__name{font-size:.9rem;font-weight:700}.prog-mods__sentence{color:var(--text-2);font-size:.8rem}.prog-board{max-height:22rem;margin:0;padding:0;list-style:none;overflow-y:auto}.prog-board__row{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;grid-template-columns:3rem minmax(0,1fr) auto;gap:.5rem;padding:.25rem .4rem;font-size:.85rem;display:grid}.prog-board__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.prog-menu-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-2);width:100%;color:inherit;text-align:left;cursor:pointer;flex-direction:column;gap:.4rem;padding:.55rem .7rem;display:flex}.prog-menu-card:hover,.prog-menu-card:focus-visible{border-color:var(--accent)}.prog-menu-card__level{align-items:center;gap:.6rem;display:flex}.prog-menu-card__badge{min-width:2.2rem;height:2.2rem;font-size:1rem}.prog-menu-card__bar{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.prog-menu-card__hint,.prog-menu-card__weekly{color:var(--text-2);align-items:center;gap:.3rem;font-size:.78rem;display:inline-flex}.prog-menu-card__weekly{color:var(--accent)}.keylist{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.75rem 1.25rem;display:grid}.keylist__title{font-size:calc(.75rem * var(--ui-scale,1));color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .3rem}.keylist--compact .hotkeys__row{padding:.12rem 0}.cheatsheet{z-index:60;background:#03060a8c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.cheatsheet__panel{width:min(64rem,100%);max-height:calc(100vh - 2rem);padding:.9rem 1rem 1rem;overflow:auto}.cheatsheet__head{align-items:baseline;gap:.75rem;margin-bottom:.6rem;display:flex}.cheatsheet__head h3{margin:0;font-size:1rem}.cheatsheet__hint{color:var(--text-3);flex:1;font-size:.75rem}.build-tab__num{color:var(--text-3);min-width:.5rem;font-size:.5625rem}.build-tab.is-armed{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.build-tab.is-armed .build-tab__num,.build-bar.is-armed .build-item__num{color:var(--accent);font-weight:700}.build-item__key{gap:.2rem;display:flex}.build-item__letter{opacity:.75}.build-bar.is-armed .build-item__num{font-size:.6875rem}.controls-flash{z-index:40;border-radius:var(--radius-sm);border:1px solid var(--line-strong);pointer-events:none;background:#05090fd9;padding:.3rem .7rem;font-size:.8125rem;position:fixed;bottom:7.5rem;left:50%;transform:translate(-50%)}.assistant-toggle{align-items:center;gap:.3rem;display:inline-flex}.assistant-toggle.is-on{color:var(--accent)}.key-editor{flex-direction:column;gap:.75rem;display:flex}.key-editor__group .hotkeys{margin:0}.key-editor__row{align-items:center}.key-editor__key{border:1px dashed var(--line);border-radius:var(--radius-sm);min-height:1.6rem;color:inherit;cursor:pointer;background:0 0;align-items:center;gap:.25rem;padding:.1rem .35rem;display:inline-flex}.key-editor__key:hover,.key-editor__key:focus-visible{border-color:var(--line-strong);border-style:solid}.key-editor__row.is-capturing .key-editor__key{border-color:var(--accent);border-style:solid}.key-editor__press{color:var(--accent);font-size:.75rem}.key-editor__error{color:var(--danger);margin-top:.15rem;font-size:.75rem;display:block}.consent-card{z-index:40;background:var(--panel-solid);border:2px solid var(--line-strong);width:min(360px,100vw - 32px);color:var(--text);padding:12px 14px;position:fixed;bottom:16px;right:16px;box-shadow:4px 4px #0009}.consent-card__title{margin:0 0 4px;font-size:.95rem}.consent-card__body{color:var(--text-2);margin:0 0 10px;font-size:.82rem;line-height:1.4}.consent-card__choices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.consent-card__more{margin-top:8px;font-size:.78rem}.analytics-setting{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.analytics-setting .toggle{width:100%}.privacy-body{gap:12px;width:100%;max-width:720px;margin:0 auto;padding:0 16px 24px;display:grid;overflow-y:auto}.privacy-card p{margin:0 0 8px;line-height:1.5}.privacy-section h2{margin:12px 0 4px;font-size:.95rem}.privacy-choice__status{font-weight:600}
