:root{--f-ui:"Barlow Semi Condensed", "Arial Narrow", sans-serif;--ink:#ece8dc;--ink-dark:#121310;--muted:#a8a495;--dim:#ece8dc99;--olive:#4d5236;--olive-2:#6b7248;--rust:#b0472a;--brass:#d9b66a;--brass-hi:#ecd08e;--panel:#0a0b099e;--line:#ece8dc29;--friend:#8fc0da;--foe:#e0703f;--good:#a9d77f;--bad:#e0553a;--bad-dark:#b23a22}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--f-ui);-webkit-user-select:none;user-select:none;background:#07080a;margin:0;font-weight:500;overflow:hidden}#app{position:fixed;inset:0}canvas{display:block}button{font:600 16px/1 var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);cursor:pointer;background:#00000059;border:1px solid #ece8dc59;padding:12px 22px;transition:background .12s,color .12s,border-color .12s}button:hover:not(:disabled),button:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--ink-dark)}button.primary{background:var(--brass);border-color:var(--brass);color:var(--ink-dark)}button.primary:hover:not(:disabled),button.primary:focus-visible{background:var(--brass-hi);border-color:var(--brass-hi)}button.ghost{background:0 0;border-color:#ece8dc4d}button:disabled{opacity:.4;cursor:not-allowed}.menu{background:linear-gradient(#08090747,#080907a6),url(/assets/nachtfalke-radio-room-CQjjt3Gg.png) 50%/cover no-repeat,#0c0d0b;position:absolute;inset:0;overflow-y:auto}.menu-inner{max-width:1080px;margin:0 auto;padding:48px 16px 32px}.menu header{text-align:center;margin-bottom:36px}.menu-kicker{color:var(--brass);letter-spacing:.3em;text-transform:uppercase;font-size:13px}.menu h1{font:600 clamp(40px, 8vw, 84px) / 1 var(--f-ui);text-transform:uppercase;letter-spacing:.04em;text-shadow:0 0 30px #b0472a59;margin:10px 0 14px}.menu-pitch{max-width:620px;color:var(--muted);margin:0 auto;line-height:1.6}.period-flag{object-fit:fill;vertical-align:middle;width:1.6em;height:1em;display:inline-block}.menu-actions{flex-wrap:wrap;justify-content:center;align-items:end;gap:12px;margin:32px 0 20px;display:flex}.menu-actions .name{color:var(--muted);text-transform:uppercase;letter-spacing:.15em;flex-direction:column;gap:6px;font-size:12px;display:flex}.menu-actions input{font:16px var(--f-ui);color:var(--ink);border:1px solid var(--line);background:#15140f;width:180px;padding:10px 12px}.menu footer{text-align:center;color:var(--muted);font-size:12px}.menu-row{text-align:left;width:100%;min-height:56px;font:600 20px/1 var(--f-ui);letter-spacing:.14em;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:0 22px;display:flex}.menu-row:after{content:"";opacity:.6;border-top:2px solid;border-right:2px solid;flex:none;width:9px;height:9px;transform:rotate(45deg)}.menu-row:hover:not(:disabled),.menu-row:focus-visible,.menu-row.current:not(:disabled){background:var(--ink);color:var(--ink-dark);border-color:var(--line);outline:none}.menu-row small{letter-spacing:.06em;text-transform:none;color:var(--dim);margin-left:auto;font-size:13px;font-weight:500}.menu-row:hover:not(:disabled) small,.menu-row:focus-visible small{color:#121310a6}.menu-row.quiet{min-height:46px;font-size:16px}.ui-label{font:600 13px var(--f-ui);letter-spacing:.24em;text-transform:uppercase;color:var(--dim);align-items:center;gap:12px;margin:0;display:flex}.ui-label:after{content:"";background:var(--line);flex:1;height:1px}.ui-label b{color:var(--ink);letter-spacing:.12em;font-weight:600}.key-hints{color:var(--dim);align-items:center;gap:26px;font-size:15px;display:flex}.key-hints span{align-items:center;gap:8px;display:flex}.ic{vertical-align:-.18em;flex:none;width:1.15em;height:1.15em;display:inline-block}.ic.wide{width:2.3em}.title-screen{isolation:isolate;background:#0c0d0b}.title-backdrop,.title-light,.title-dust{pointer-events:none;z-index:-2;position:fixed;inset:0}.title-backdrop{background:url(/assets/nachtfalke-radio-room-CQjjt3Gg.png) 50%/cover no-repeat;animation:32s ease-in-out infinite alternate radio-room-drift}.title-light{z-index:-1;background:linear-gradient(90deg,#050706eb,#050706a6 38%,#0507061f 75%),linear-gradient(#0000 50%,#05070699)}.title-backdrop:after{content:"";background:#040706a6;animation:13s linear infinite radio-room-flicker;position:absolute;inset:0}.title-radio{opacity:.35;background:#716137;border-radius:50%;width:5px;height:5px;transition:opacity 80ms,box-shadow 80ms;position:absolute;top:60%;left:33%}.title-radio.lit{opacity:1;background:#e6b657;box-shadow:0 0 8px 3px #c38e3b,0 0 34px 10px #c9a24a33}.title-dust{z-index:-1;overflow:hidden}.title-dust i{width:var(--mote-size);height:var(--mote-size);opacity:0;animation:radio-room-dust var(--drift-time) linear var(--drift-delay) infinite;background:#d8c8a0;border-radius:50%;position:absolute;box-shadow:0 0 4px #d8c8a040}@keyframes radio-room-dust{0%{opacity:0;transform:translate(-25px,45px)}25%,65%{opacity:.25}to{opacity:0;transform:translate(55px,-90px)}}.title-screen .menu-inner{flex-direction:column;justify-content:center;align-items:flex-start;max-width:none;min-height:100%;margin:0;padding:clamp(40px,9vh,100px) clamp(24px,6.25vw,120px) 128px;display:flex}.title-screen header{text-align:left;margin-bottom:40px}.title-screen .menu-kicker{font:600 15px var(--f-ui);letter-spacing:.32em}.title-screen h1{font:600 clamp(56px, 7.3vw, 140px) / .86 var(--f-ui);letter-spacing:.005em;text-shadow:0 4px 28px #000;margin:30px 0 0}.title-screen h1 span{color:var(--brass);letter-spacing:.5em;margin-bottom:.3em;font-size:.25em;font-weight:500;display:block}.title-menu{border-top:1px solid var(--line);flex-direction:column;width:min(460px,100%);display:flex}.menu-desc{width:min(460px,100%);min-height:3em;color:var(--dim);margin:18px 0 0;font-size:17px;line-height:1.45}.title-foot{justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;bottom:42px;left:clamp(24px,6.25vw,120px);right:clamp(24px,6.25vw,120px)}.title-callsign{font:400 15px/1 var(--f-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);border:0;border-bottom:1px solid var(--line);background:0 0;align-items:center;gap:8px;padding:8px 10px;display:flex}.title-callsign b{letter-spacing:.04em;text-transform:none;color:var(--ink);font-weight:600}.title-callsign:hover b,.title-callsign:focus-visible b{color:var(--ink-dark)}.title-callsign .account-dot[hidden]{display:none}.title-callsign[data-state=synced] .account-dot{background:var(--good)}.title-callsign[data-state=pending] .account-dot,.title-callsign[data-state=connecting] .account-dot{background:var(--brass)}.title-callsign[data-state=offline] .account-dot,.title-callsign[data-state=error] .account-dot{background:var(--bad)}.dev-toggle{font:500 13px var(--f-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line);background:0 0;align-items:center;gap:10px;margin-left:auto;padding:6px 12px;display:flex}.dev-toggle b{min-width:2.2em;color:var(--ink);font-weight:600}.dev-toggle[aria-pressed=true]{border-color:var(--brass)}.dev-toggle[aria-pressed=true] b{color:var(--brass)}.dev-toggle:hover,.dev-toggle:focus-visible{color:var(--ink-dark);background:var(--ink);border-color:var(--ink)}.dev-toggle:hover b,.dev-toggle:focus-visible b{color:var(--ink-dark)}@media (width<=600px){.title-screen .key-hints{display:none}.title-foot{bottom:20px}}@keyframes radio-room-drift{0%{transform:scale(1.02)}to{transform:scale(1.065)translate(-.5%,.3%)}}@keyframes radio-room-flicker{0%,34%,39%,72%,77%,to{opacity:.08}35%,38%,74%{opacity:.26}36.5%,75.5%{opacity:.12}}@media (prefers-reduced-motion:reduce){.title-backdrop,.title-backdrop:after{animation:none}.title-backdrop:after{opacity:.08}.title-dust{display:none}.title-radio,.title-radio.lit{opacity:.5;background:#b69952;transition:none;box-shadow:0 0 6px #c9a24a4d}}.loadout-meta{font:600 16px var(--f-ui);letter-spacing:.1em;justify-content:center;gap:24px;margin-top:16px;display:flex}.commendations{color:var(--brass)}.stars{color:var(--brass);letter-spacing:.15em}.stars span{color:var(--line)}.loadout-slots{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:24px;display:grid}.loadout-slot{background:var(--panel);border-color:var(--brass);text-transform:none;letter-spacing:.02em;align-items:center;gap:8px;padding:10px 12px;font-size:14px;display:flex}.loadout-slot.empty{border-style:dashed;border-color:var(--line);color:var(--muted)}.loadout-slot:disabled{opacity:1;cursor:default}.loadout-slot .icon{font-size:20px}.loadout-body{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:16px;display:grid}@media (width<=760px){.loadout-body{grid-template-columns:minmax(0,1fr)}}.armory{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.trap-card{cursor:pointer}.trap-card.locked{cursor:default;opacity:.75}.trap-card.locked .flag,.trap-card.locked .sname{filter:grayscale();color:var(--muted)}.trap-card button{margin-top:12px;padding:8px 12px;font-size:13px}.intel{background:var(--panel);border:1px solid var(--line);padding:16px}.intel h3{font:600 13px var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--brass);margin:0 0 8px}.intel-row{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding:8px 0;font-size:13px;display:flex}.intel-row span{color:var(--muted)}kbd{color:var(--ink);font:600 .9em/1.5 var(--f-ui);background:#0000004d;border:1px solid #ece8dc73;border-radius:2px;padding:0 6px;display:inline-block}.overlay{text-align:center;background:#060605d9;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:none;position:absolute;inset:0}.overlay.show{display:flex}.overlay h2{font:600 clamp(32px, 6vw, 56px) / 1 var(--f-ui);text-transform:uppercase;letter-spacing:.06em;margin:0}.overlay h2.win{color:var(--good)}.overlay h2.lose{color:var(--bad)}.overlay p{color:var(--muted);margin:0 0 8px}.overlay .stats{gap:28px;margin:8px 0 16px;display:flex}.overlay .stats div{color:var(--muted);text-transform:uppercase;letter-spacing:.15em;flex-direction:column;font-size:12px;display:flex}.overlay .stars{font-size:40px}.overlay .award{color:var(--brass)}.overlay .stats b{font:600 38px var(--f-ui);color:var(--ink)}.scoreboard-wrap{width:min(680px,100%);margin:10px 0 16px;overflow-x:auto}.scoreboard{border-collapse:collapse;width:100%;font-family:var(--f-ui);text-align:right}.scoreboard th,.scoreboard td{border-bottom:1px solid var(--line);white-space:nowrap;padding:8px 10px}.scoreboard thead th{letter-spacing:.15em;text-transform:uppercase;color:var(--dim);font-size:10px;font-weight:600}.scoreboard th:first-child{text-align:left;padding-left:0}.scoreboard td{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px;font-weight:300}.scoreboard td.lead{color:var(--brass);font-weight:400}.scoreboard tbody th{font-weight:400}.scoreboard tr.me>*{border-bottom-color:var(--brass);background:#d9b66a12}.score-flag{vertical-align:middle;margin-right:10px;display:inline-block}.score-flag .period-flag{width:22px;height:auto;display:block}.score-who{vertical-align:middle;flex-direction:column;max-width:190px;display:inline-flex}.score-who b{letter-spacing:.04em;color:var(--ink);text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.score-who small{color:var(--dim);text-overflow:ellipsis;font-size:11px;overflow:hidden}.scoreboard tr.down .score-who{opacity:.6}.score-state{letter-spacing:.12em;text-transform:uppercase;color:var(--good);font-size:10px;font-weight:600}.scoreboard tr.down .score-state{color:var(--bad)}.playtest-note,.playtest-rating{border:1px dashed var(--line);background:#080a0899;flex-direction:column;gap:8px;width:min(520px,100%);padding:14px 16px;display:flex}.playtest-note label,.playtest-rating span{font:600 12px var(--f-ui);text-transform:uppercase;letter-spacing:.15em;color:var(--brass)}.playtest-note input,.playtest-rating input{box-sizing:border-box;width:100%;font:inherit;color:var(--ink);border:1px solid var(--line);background:#0006;padding:10px 12px}.overlay .playtest-note p,.overlay .playtest-rating p{margin:0;font-size:12px}.playtest-rating div{align-items:center;gap:6px;display:flex}.playtest-rating span{text-align:left;width:90px}.playtest-rating small{color:var(--muted);margin-left:6px;font-size:11px}.playtest-rating [data-rate]{padding:6px 11px}.playtest-rating [data-rate].on{color:var(--brass);border-color:var(--brass)}@media (width<=600px){.playtest-rating small{display:none}}.playtest-dialog{width:min(560px,100% - 40px)}.playtest-dialog .playtest-rating{background:0 0;border:0;gap:14px;width:auto;margin-top:20px;padding:0}.overlay.deploy{background:radial-gradient(#06070680,#03040333 70%);padding:0}button.deploy-prompt,button.deploy-prompt:hover:not(:disabled),button.deploy-prompt:focus-visible{color:var(--ink);text-shadow:0 2px 18px #000000b3;background:0 0;border:0;outline:none;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:16px;display:flex;position:absolute;inset:0}.deploy-prompt strong{font:300 clamp(30px, 4vw, 46px)/1 var(--f-ui);letter-spacing:.28em;color:var(--ink);transition:color .12s;animation:.18s ease-out pause-in}.deploy-prompt:hover strong,.deploy-prompt:focus-visible strong{color:var(--brass-hi)}.deploy-prompt small{letter-spacing:.14em;color:var(--dim);font-size:12px;font-weight:500}.deploy-prompt small kbd{font-size:11px}@media (prefers-reduced-motion:reduce){.deploy-prompt strong{animation:none}}.overlay.pause{background:radial-gradient(#0a0c09cc,#030403f0)}.pause-menu{text-align:left;background:#111510f0;border:1px solid #736540;grid-template-columns:minmax(250px,300px) minmax(0,1fr);width:min(1000px,100%);max-height:100%;animation:.18s ease-out pause-in;display:grid;overflow-y:auto;box-shadow:0 25px 100px #000}@keyframes pause-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.pause-menu{animation:none}}.pause-menu .menu-kicker{letter-spacing:.2em;font-size:10px;line-height:1.6}.pause-command{border-right:1px solid var(--line);background:repeating-linear-gradient(135deg,#0000 0 14px,#818d700a 14px 15px);flex-direction:column;padding:28px 26px;display:flex}.overlay .pause-command h2{margin:8px 0 6px;font-size:clamp(38px,5vw,54px)}.overlay .pause-status{margin:0 0 26px;font-size:13px;line-height:1.5}.pause-actions{flex-direction:column;gap:10px;margin-bottom:28px;display:flex}.pause-actions button{text-align:left;width:100%;padding:14px 18px}.pause-actions [data-act=quit]{color:var(--muted);margin-top:14px}.pause-actions [data-act=quit]:hover{color:var(--ink);border-color:var(--bad);background:#e0553a1f}.pause-room{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:8px;margin-top:auto;padding-top:22px;display:flex}.pause-room b{font:600 30px/1 var(--f-ui);color:var(--brass);letter-spacing:.25em}.pause-room button{padding:9px 12px;font-size:11px}.overlay .pause-net-note{margin:0;font-size:12px;line-height:1.5}.pause-report{flex-direction:column;min-width:0;display:flex}.pause-section{padding:22px 26px}.pause-section+.pause-section{border-top:1px solid var(--line)}.pause-section h3{font:600 22px var(--f-ui);text-transform:uppercase;letter-spacing:.03em;margin:6px 0 2px}.pause-sector{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:10px}.pause-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.pause-stats>div{border:1px solid var(--line);background:#080a0880;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;display:flex}.pause-stats span{font:600 10px var(--f-ui);text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.pause-stats b{font:600 24px/1.1 var(--f-ui);color:var(--ink)}.pause-stats em{color:var(--brass);font-size:11px;font-style:normal}.pause-meter{background:#e9e1cc1f;height:4px;margin-top:4px;display:block}.pause-meter>i{background:var(--brass);height:100%;display:block}.pause-meter.low>i{background:var(--bad)}.pause-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;margin-top:10px;display:grid}.pause-group h4{font:600 11px var(--f-ui);text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin:0 0 6px}.pause-group ul{margin:0;padding:0;list-style:none}.pause-group li{color:var(--muted);border-bottom:1px dashed #e9e1cc14;justify-content:space-between;align-items:baseline;gap:10px;padding:4px 0;font-size:12px;display:flex}.pause-group li>span:last-child{flex-wrap:wrap;justify-content:flex-end;gap:3px;display:flex}.pause-group kbd{white-space:nowrap;background:#e9e1cc0f;border-color:#e9e1cc73;font-size:11px;line-height:1.5}@media (width<=760px){.pause-menu{grid-template-columns:1fr}.pause-command{border-right:0;border-bottom:1px solid var(--line);padding:22px 16px}.pause-section{padding:18px 16px}.pause-stats>div{padding:8px 10px}.pause-stats b{font-size:20px}.pause-controls{grid-template-columns:1fr}}.settings-screen{z-index:20;background:radial-gradient(#0a0c09db,#030403f5);grid-template-rows:minmax(0,1fr);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.settings-window{background:#111510f5;border:1px solid #736540;grid-template-columns:minmax(230px,270px) minmax(0,1fr);width:min(100%,1000px);height:100%;min-height:0;max-height:760px;animation:.18s ease-out pause-in;display:grid;overflow:hidden;box-shadow:0 25px 100px #000}@media (prefers-reduced-motion:reduce){.settings-window{animation:none}}.settings-window .menu-kicker{letter-spacing:.2em;font-size:10px;line-height:1.6}.settings-rail{border-right:1px solid var(--line);background:repeating-linear-gradient(135deg,#0000 0 14px,#818d700a 14px 15px);flex-direction:column;min-height:0;padding:28px 22px;display:flex;overflow-y:auto}.settings-rail h2{font:600 clamp(34px, 4vw, 46px)/1 var(--f-ui);text-transform:uppercase;letter-spacing:.06em;margin:8px 0 4px}.settings-note{color:var(--muted);margin:0 0 22px;font-size:12px;line-height:1.5}.settings-rail nav{flex-direction:column;gap:6px;display:flex}.settings-rail nav button{text-align:left;width:100%;color:var(--muted);border-color:var(--line);background:#080a0880;align-items:baseline;gap:12px;padding:12px 14px;font-size:13px;display:flex}.settings-rail nav button span{font:400 10px var(--f-ui);letter-spacing:.1em;color:var(--brass)}.settings-rail nav button:hover:not(:disabled){color:var(--ink);background:#e9e1cc0f}.settings-rail nav [aria-pressed=true],.settings-rail nav [aria-pressed=true]:hover:not(:disabled){color:var(--ink);box-shadow:inset 3px 0 0 var(--brass);background:#c9a24a1f;border-color:#736540}.settings-actions{flex-direction:column;gap:10px;margin-top:auto;padding-top:24px;display:flex}.settings-actions button{text-align:left;width:100%;padding:13px 16px}.settings-main{flex-direction:column;min-width:0;min-height:0;display:flex}.settings-head{border-bottom:1px solid var(--line);flex-shrink:0;padding:26px 28px 14px}.settings-head h3{font:600 24px var(--f-ui);text-transform:uppercase;letter-spacing:.03em;margin:6px 0 0}.settings-content{flex:1;min-height:0;padding:8px 28px 16px;overflow-y:auto}.settings-content>p,.account-body>p{color:var(--muted);margin:10px 0 4px;font-size:12px;line-height:1.6}.settings-group{font:600 11px var(--f-ui);text-transform:uppercase;letter-spacing:.15em;color:var(--brass);margin:22px 0 2px}.setting-row{border-bottom:1px dashed #e9e1cc1a;align-items:center;gap:12px;min-height:48px;padding:8px 0;display:flex}.setting-row>label{flex:1;font-size:13px}.setting-row input[type=range]{width:38%;accent-color:var(--brass)}.setting-row input[type=checkbox]{width:20px;height:20px;accent-color:var(--brass)}.setting-row input[type=color]{border:1px solid var(--line);background:#080a0880;width:56px;height:32px;padding:2px}.setting-row select{min-width:150px;color:var(--ink);border:1px solid var(--line);font:13px var(--f-ui);background:#080a0899;padding:8px 10px}.setting-row output{text-align:right;min-width:52px;font:600 15px var(--f-ui);color:var(--brass)}.setting-row>button{padding:9px 14px;font-size:12px}.account-value{color:var(--muted);flex:1.4;font-size:13px;line-height:1.4}.account-callsign input{width:50%;font:600 16px var(--f-ui);color:var(--ink);border:1px solid var(--line);background:#080a0899;padding:9px 12px}.account-callsign input:focus{border-color:var(--brass);outline:none}.account-callsign+.settings-note{margin:6px 0 4px}button.danger{background:var(--bad);border-color:var(--bad);color:var(--ink)}button.danger:hover:not(:disabled),button.danger:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--bad)}.binding-group{gap:3px;width:190px;display:flex}.binding-group button{letter-spacing:.04em;text-transform:none;overflow-wrap:anywhere;background:#e9e1cc0f;border-color:#e9e1cc4d;padding:8px;font-size:12px}.binding-group button:first-child{flex:1}.binding-group button:first-child:hover:not(:disabled){border-color:var(--brass);background:#c9a24a1f}.binding-group button.unbound{color:var(--muted);border-style:dashed;border-color:var(--line);background:0 0;font-weight:400}.binding-group button.listening,.binding-group button.listening:hover:not(:disabled){color:var(--ink);border-style:solid;border-color:var(--brass);background:#c9a24a33;animation:1s ease-in-out infinite binding-listen}@keyframes binding-listen{50%{border-color:#c9a24a59}}@media (prefers-reduced-motion:reduce){.binding-group button.listening{animation:none}}.binding-group button.ghost{width:30px;color:var(--muted);border-color:var(--line);background:0 0;flex:none;padding:8px 0}.settings-status{border-top:1px solid var(--line);min-height:44px;color:var(--brass);flex-shrink:0;margin:0;padding:12px 28px;font-size:12px;line-height:1.6}@media (width<=760px){.settings-screen{padding:8px}.settings-window{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;max-height:none}.settings-rail{border-right:0;border-bottom:1px solid var(--line);padding:14px 16px;overflow:visible}.settings-rail .menu-kicker{display:none}.settings-rail h2{margin-top:0;font-size:28px}.settings-note{margin-bottom:12px}.settings-rail nav{flex-flow:wrap;gap:4px}.settings-rail nav button{flex:auto;justify-content:center;width:auto;padding:9px 10px;font-size:11px}.settings-rail nav button span{display:none}.settings-rail nav [aria-pressed=true],.settings-rail nav [aria-pressed=true]:hover:not(:disabled){box-shadow:inset 0 -3px 0 var(--brass)}.settings-actions{flex-direction:row;padding-top:12px}.settings-actions button{text-align:center;padding:10px}.settings-head{padding:14px 16px 10px}.settings-content{padding:4px 16px 12px}.settings-status{padding:10px 16px}.setting-row{flex-wrap:wrap;gap:8px}.setting-row>label{min-width:100%}.binding-group{width:calc(50% - 4px)}.setting-row input[type=range]{flex:1}}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.soldier-portrait{border:1px solid var(--line);background:#2a2b26;position:relative;overflow:hidden}.soldier-portrait svg{width:100%;height:100%}.soldier-portrait .portrait-art{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.soldier-portrait .portrait-art[hidden]{display:none}.portrait-body{fill:var(--uniform);stroke:#96967b;stroke-width:1px}.portrait-face{fill:#282b23;stroke:#6d715b;stroke-width:1px}.portrait-helmet{fill:var(--uniform);stroke:#96967b;stroke-width:1.5px}.portrait-detail{fill:none;stroke:#b2aa7c;stroke-width:2px;opacity:.5}.portrait-flag{opacity:.9;font-size:13px;position:absolute;bottom:4px;right:4px}.portrait-flag .period-flag{width:20px;height:auto}.soldier-stage{border-bottom:1px solid var(--line);background:radial-gradient(at 50% 88%,#d9b66a24,#0000 45%),radial-gradient(at 50% 55%,#4348326e,#161d1200 70%);width:240px;height:290px;position:relative}.soldier-stage>canvas{width:100%;height:100%;position:absolute;inset:0}.soldier-stage>.soldier-portrait{width:100%;height:100%}.kit-traps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.squad-toasts{z-index:4;pointer-events:none;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:fixed;top:110px;right:clamp(16px,3.3vw,64px)}.squad-toast{border-left:3px solid var(--good);background:#0a0b09e6;padding:10px 16px;font-size:16px;animation:6s ease-out forwards squad-toast;box-shadow:0 8px 24px #00000059}.squad-toast b{color:var(--good)}.squad-toast.left{border-left-color:var(--muted)}.squad-toast.left b{color:var(--ink)}.squad-toast.taken{border-left-color:var(--brass)}.squad-toast small{color:var(--dim);margin-left:6px}@keyframes squad-toast{0%{opacity:0;transform:translate(16px)}4%,88%{opacity:1;transform:none}to{opacity:0}}.lobby-chat-panel{flex-direction:column;min-width:0;min-height:0;padding-top:3px;display:flex;position:relative}.lobby-chat-panel:before{content:"";inset:0 auto 0 calc(var(--operation-gap) / -2);background:var(--line);width:1px;position:absolute}.lobby-chat-panel>.ui-label{letter-spacing:.22em;flex:none;margin:0 0 11px;font-size:11px;font-weight:400}.lobby-chat{flex-direction:column;flex:1;min-width:0;min-height:0;margin:0;display:flex}.lobby-chat-log{overscroll-behavior:contain;scrollbar-width:thin;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;flex:1;min-height:0;padding:0 4px 8px 0;font-size:15px;line-height:1.25;overflow-y:auto}.lobby-chat-log:empty:before{content:"Coordinate your kit with the squad.";color:var(--dim);font-size:14px}.lobby-chat-log .chat-line{flex-direction:column;gap:3px;margin-bottom:10px;display:flex}.chat-line b{margin-right:8px;font-weight:600}.chat-line b.me{color:var(--brass)}.chat-line b.ally{color:var(--friend)}.lobby-chat-log b{letter-spacing:.1em;text-transform:uppercase;font-size:10px}.lobby-chat-entry{border-block:1px solid var(--line);flex:none;align-items:center;gap:8px;height:34px;display:flex}.lobby-chat-entry:focus-within{border-bottom-color:var(--brass)}.lobby-chat-entry input,.lobby-chat-entry input:focus-visible{width:100%;min-width:0;font:400 15px var(--f-ui);color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:7px 0}.lobby-chat-entry button{width:30px;height:30px;color:var(--brass);background:0 0;border:0;flex:none;place-items:center;padding:5px;display:grid}.lobby-chat-entry button:hover,.lobby-chat-entry button:focus-visible{background:var(--ink);color:var(--ink-dark)}.lobby-chat-entry .ic{width:20px;height:20px}.chat-empty{color:var(--dim);font-size:14px}@media (height>=850px) and (width>=1181px){.lobby-chat-panel>.ui-label{margin-bottom:16px;font-size:12px}.lobby-chat-log{font-size:17px}.lobby-chat-log .chat-line{margin-bottom:14px}.lobby-chat-log b{font-size:11px}.lobby-chat-entry{height:38px}.lobby-chat-entry input{font-size:16px}}@media (width<=760px){.lobby-chat-panel{grid-area:2/1/3/-1;padding:0}.lobby-chat-panel:before{width:auto;height:1px;inset:-5px 0 auto}.lobby-chat-panel>.ui-label{margin-bottom:3px;font-size:8px}.lobby-chat-log{padding-bottom:2px;font-size:11px}.lobby-chat-log b{font-size:8px}.lobby-chat-log .chat-line{flex-direction:row;margin-bottom:3px}.lobby-chat-log:empty:before{font-size:11px}.lobby-chat-entry{height:24px}.lobby-chat-entry input{padding:3px 0;font-size:12px}.lobby-chat-entry button{width:22px;height:22px;padding:3px}}.deploy-countdown{z-index:5;pointer-events:none;background:radial-gradient(circle,#060706c7 0,#06070666 45%,#0000 75%);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:fixed;inset:0}.deploy-countdown[hidden]{display:none}.deploy-countdown small{letter-spacing:.4em;text-transform:uppercase;color:var(--brass);font-size:16px;font-weight:600}.deploy-countdown div{display:grid}.deploy-countdown span{font:600 180px/1 var(--f-ui);color:var(--ink);text-shadow:0 6px 32px #0009;opacity:0;will-change:transform, opacity;grid-area:1/1;animation:1s ease-out backwards countdown-pop}.deploy-countdown span:last-child{animation-fill-mode:both}@keyframes countdown-pop{0%{opacity:0;transform:scale(1.6)}15%{opacity:1;transform:scale(1)}80%{opacity:1}to{opacity:.2;transform:scale(.85)}}@keyframes countdown-show{0%{opacity:0}1%,to{opacity:1}}@media (prefers-reduced-motion:reduce){.deploy-countdown span{animation-name:countdown-show;animation-timing-function:linear}}.lobby-dialog{width:min(1120px,100% - 40px);max-height:calc(100dvh - 48px);color:var(--ink);background:#0e0f0cf7;border:1px solid #ece8dc38;margin:auto;padding:28px;overflow-y:auto;box-shadow:0 25px 100px #000}.lobby-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#030403cc}.dialog-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:18px;display:flex}.dialog-heading h2{font:600 34px var(--f-ui);letter-spacing:.02em;text-transform:uppercase;margin:4px 0 0}.staging-room .menu-kicker,.lobby-dialog .menu-kicker{letter-spacing:.24em;font-size:13px;line-height:1.6}.equipment-toolbar{justify-content:space-between;align-items:center;gap:18px;margin:20px 0;display:flex}.equipment-toolbar .loadout-meta{flex-wrap:wrap;gap:10px;margin:0;font-size:13px}.equipment-tabs{border-bottom:1px solid var(--line);gap:10px;display:flex}.equipment-tabs button{min-width:110px;color:var(--dim);background:0 0;border:0;border-bottom:2px solid #0000}.equipment-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--brass)}.equipment-help{color:var(--dim);margin:18px 0;font-size:15px;line-height:1.55}.lobby-dialog button:focus-visible,.staging-room button:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.staging-room .menu-row:focus-visible,.lobby-dialog .menu-row:focus-visible{outline:none}.map-dialog{width:min(1280px,100% - 64px);max-width:none;height:min(820px,100dvh - 64px);font-weight:400;overflow:hidden}.map-dialog[open]{grid-template-rows:auto minmax(0,1fr) auto;gap:20px;display:grid}.mission-browser{grid-template-columns:minmax(230px,.75fr) minmax(0,1.8fr);gap:32px;min-width:0;min-height:0;display:grid}.mission-list{scrollbar-width:thin;flex-direction:column;min-height:0;padding-right:8px;display:flex;overflow-y:auto}button.mission-row{letter-spacing:.04em;text-transform:none;flex:none;justify-content:flex-start;gap:14px;min-height:55px;padding:10px 12px}.mission-row:after{display:none}.mission-index{color:var(--dim);flex:none;font-size:15px;font-weight:300}.mission-row>span:last-child{flex-direction:column;gap:5px;min-width:0;display:flex}.mission-row b{font-size:18px;font-weight:500}.mission-row .mission-row-state{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:6px;margin:0;font-size:11px;display:flex}.mission-row-state .ic{flex:none;width:16px;height:16px}.mission-row.locked{color:var(--dim)}.mission-row.locked .mission-row-state{color:var(--brass);font-weight:600}.mission-row.locked:is(.current,:hover,:focus-visible) .mission-row-state,.mission-row.current .mission-index,.mission-row:hover .mission-index,.mission-row:focus-visible .mission-index{color:inherit}.mission-preview{grid-template-rows:minmax(min-content,1fr) auto;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px 24px;min-width:0;min-height:0;padding-right:4px;display:grid;overflow-y:auto}.mission-dossier{grid-area:1/2;min-width:0}.map-dialog .mission-sector{font-size:11px}.mission-title{font:500 36px/1.05 var(--f-ui);text-transform:uppercase;margin:6px 0}.mission-objective{color:var(--brass);margin:0 0 8px;font-size:18px}.mission-description{max-width:65ch;color:var(--ink);margin:0;font-size:16px;line-height:1.45}.mission-facts{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-top:10px;font-size:12px}.mission-plan{flex-direction:column;grid-area:1/1/-1;gap:6px;min-height:0;display:flex}.mission-plan .map-blueprint{background:radial-gradient(#8a997010,#0000 70%);border:0;flex:1;min-height:0;padding:0}.mission-plan .map-blueprint svg{width:100%;height:100%;max-height:none}.mission-floor-controls{flex-wrap:wrap;flex:none;gap:8px;display:flex}.mission-floor-controls[hidden]{display:none}.mission-floor-controls button{letter-spacing:.06em;border:0;border-bottom:2px solid var(--line);min-height:28px;padding:5px 10px;font-size:11px}.mission-floor-controls button[aria-pressed=true]{color:var(--brass);border-color:var(--brass)}.mission-difficulty{grid-area:2/2}.mission-difficulty .ui-label{margin:0 0 8px;font-size:11px}.tier-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tier-buttons button{text-align:left;border:0;border-bottom:2px solid var(--line);background:#ece8dc05;flex-direction:column;align-items:flex-start;gap:6px;padding:10px 12px;display:flex}.tier-buttons button>b{font-size:15px;font-weight:500}.tier-buttons button>span:not(.stars){letter-spacing:0;text-transform:none;font-size:12px;line-height:1.3}.tier-buttons button[aria-pressed=true]{border-bottom-color:var(--brass);background:#d9b66a12}.tier-buttons button:hover:not(:disabled),.tier-buttons button:focus-visible{background:var(--ink);color:var(--ink-dark)}.tier-buttons .stars{font-size:11px}.mission-select-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-top:16px;display:flex}.mission-availability{color:var(--dim);margin:0;font-size:14px;line-height:1.4}.mission-select-footer .primary{flex:none;justify-content:center;align-items:center;gap:8px;min-width:220px;min-height:48px;display:inline-flex}@media (width<=760px){.map-dialog[open]{gap:12px}.mission-browser{grid-template-rows:126px minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:14px}.mission-list{border-bottom:1px solid var(--line);padding:0}button.mission-row{min-height:42px;padding:6px 8px}.mission-row b{font-size:16px}.mission-row .mission-row-state{font-size:9px}.mission-preview{grid-template-rows:auto minmax(140px,1fr) auto;grid-template-columns:minmax(0,1fr);gap:12px}.mission-dossier{grid-area:1/1}.mission-plan{grid-area:2/1}.mission-difficulty{grid-area:3/1}.mission-title{font-size:26px}.mission-description{font-size:14px}.mission-objective{font-size:16px}.tier-buttons{gap:8px}.tier-buttons button{padding:8px}.mission-select-footer{gap:10px;padding-top:10px}.mission-select-footer .primary{min-width:0;min-height:42px;padding:10px;font-size:12px}.mission-availability{font-size:11px}.squad-toasts{align-items:stretch;top:12px;left:14px;right:14px}.lobby-dialog,.map-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);padding:16px}.dialog-heading h2{font-size:26px}.equipment-toolbar{flex-direction:column;align-items:flex-start}.mission-list{grid-template-columns:minmax(0,1fr)}}.soldier-dialog{width:min(1180px,100% - 40px);padding:24px 28px 0}.soldier-dialog[open]{flex-direction:column;height:min(780px,100dvh - 48px);display:flex;overflow:hidden}.soldier-dialog .dialog-heading{padding-bottom:14px}.soldier-tabs{border-bottom:1px solid var(--line);flex:none;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.soldier-tab{text-align:left;text-transform:none;letter-spacing:0;min-width:0;color:var(--ink);border:0;border-right:1px solid var(--line);background:0 0;align-items:center;gap:12px;padding:10px 14px;display:flex}.soldier-tab:last-child{border-right:0}.soldier-dialog .soldier-tab:focus-visible{outline:none}.soldier-tab:hover:not(:disabled),.soldier-tab:focus-visible{color:var(--ink);border-color:var(--line);background:#ece8dc12}.soldier-tab.on,.soldier-tab.on:hover:not(:disabled),.soldier-tab.on:focus-visible{color:var(--ink);box-shadow:inset 0 -3px 0 var(--brass);background:#ece8dc14}.soldier-face{background:color-mix(in srgb, var(--uniform) 35%, #1a1b17);border:1px solid var(--line);flex:none;width:46px;height:46px;position:relative;overflow:hidden}.soldier-face img{object-fit:cover;width:100%;height:100%;display:block}.soldier-face img[hidden]{display:none}.soldier-tab-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.soldier-tab-role{font:600 12px var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--brass);align-items:center;gap:7px;display:flex}.soldier-tab-name{font:600 19px var(--f-ui);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.soldier-tab-state{font:600 11px var(--f-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--brass);white-space:nowrap}.soldier-tab-state:empty{display:none}.soldier-tab.taken{cursor:not-allowed}.soldier-tab.taken .soldier-face,.soldier-tab.taken .soldier-tab-text{opacity:.45}.soldier-tab.taken .soldier-tab-state{color:var(--dim)}.soldier-dialog .period-flag{width:21px;height:14px;box-shadow:0 0 0 1px #00000080}.soldier-main{flex:1;grid-template-columns:40% minmax(0,1fr);gap:32px;min-height:0;padding:16px 0;display:grid}.soldier-dialog .soldier-stage{border-bottom:0;width:auto;height:auto;min-height:0;overflow:hidden}.soldier-dialog .soldier-stage:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0e0f0cd9);height:35%;position:absolute;inset:auto 0 0}.soldier-dialog .soldier-stage>.soldier-portrait{background:0 0;border:0;position:absolute;inset:0}.soldier-dialog .soldier-portrait .portrait-flag{display:none}.soldier-blurb{z-index:1;color:#ece8dccc;text-shadow:0 2px 10px #000;margin:0;font-size:15px;line-height:1.45;position:absolute;bottom:14px;left:18px;right:18px}.soldier-dossier{min-height:0;padding-right:4px;overflow-y:auto}.soldier-origin{font:600 13px var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);align-items:center;gap:8px;display:flex}.soldier-origin b{color:var(--brass);font-weight:600}.soldier-origin i{opacity:.5;font-style:normal}.soldier-who h3{font:600 30px/1.1 var(--f-ui);margin:4px 0 8px}.soldier-kit{border-top:1px solid var(--line);grid-template-columns:44px minmax(0,1fr);gap:14px;padding:11px 0;display:grid}.soldier-kit-icon{color:var(--ink);align-content:start;justify-items:center;padding-top:4px;display:grid}.soldier-kit-icon .ic{width:34px;height:34px}.soldier-kit-icon .ic.wide{width:44px;height:22px;margin-top:6px}.soldier-kit.special .soldier-kit-icon{color:var(--brass)}.soldier-kit-kind{font:600 11px var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}.soldier-kit-kind kbd{font:600 11px/1.4 var(--f-ui);letter-spacing:0;color:var(--brass);border-color:var(--brass);margin-left:4px;padding:0 5px}.soldier-kit-name{font:600 19px var(--f-ui);margin:3px 0 4px}.soldier-kit p{color:var(--ink);margin:0;font-size:15px;line-height:1.4}.soldier-facts{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.soldier-facts span{font:600 12px var(--f-ui);letter-spacing:.06em;border:1px solid #ece8dc40;padding:3px 8px}.soldier-facts .cooldown{color:var(--brass);border-color:var(--brass)}.soldier-bars{grid-template-columns:1fr 1fr;gap:7px 22px;margin-top:4px;display:grid}.soldier-bar-row{grid-template-columns:70px 1fr 58px;align-items:center;gap:10px;font-size:13px;display:grid}.soldier-bar-row span{letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-size:12px}.soldier-bar-row i{background:linear-gradient(90deg, var(--ink) var(--share), #ece8dc26 var(--share));height:3px}.soldier-bar-row b{text-align:right;font-weight:600}.soldier-footer{border-top:1px solid var(--line);flex:none;align-items:center;gap:14px;padding:14px 0 18px;display:flex}.soldier-footer .key-hints{letter-spacing:.08em;text-transform:uppercase;flex:1;gap:20px;font-size:13px}.soldier-footer button{min-width:160px;padding:12px 20px;font-size:14px}@media (height<=760px){.soldier-dialog{padding-top:18px}.soldier-dialog .dialog-heading{padding-bottom:10px}.soldier-dialog .dialog-heading h2{font-size:28px}.soldier-tab{padding:8px 14px}.soldier-main{padding:12px 0}.soldier-who h3{margin-bottom:4px;font-size:26px}.soldier-kit{padding:8px 0}.soldier-kit p{line-height:1.35}.soldier-facts{margin-top:6px}.soldier-footer{padding:10px 0 14px}}@media (width<=760px){.soldier-dialog[open]{height:auto;overflow-y:auto}.soldier-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.soldier-tab{gap:8px;padding:8px 10px;position:relative}.soldier-tab:nth-child(2){border-right:0}.soldier-face{width:36px;height:36px}.soldier-tab-role span{display:none}.soldier-tab-state{font-size:10px;position:absolute;top:7px;right:8px}.soldier-main{flex:none;grid-template-columns:minmax(0,1fr);gap:16px}.soldier-dialog .soldier-stage{height:280px}.soldier-dossier{overflow:visible}.soldier-bars{grid-template-columns:minmax(0,1fr)}.soldier-footer .key-hints{display:none}.soldier-footer{justify-content:flex-end}}.rank-pips{color:var(--line);gap:1px;display:inline-flex}.rank-pips .ic{width:14px;height:14px}.rank-pips .ic.on{color:var(--brass)}.overlay.debrief{text-align:left;background:radial-gradient(at 25% 15%,#161811e6,#040504f7 70%);justify-content:flex-start;gap:0;padding:0;overflow-y:auto}.overlay.debrief.lost{background:radial-gradient(at 25% 15%,#22110ce6,#050404f7 70%)}.hud.hud-ended{visibility:hidden}.debrief{flex:1 0 auto;grid-template-columns:minmax(340px,5fr) minmax(0,8fr);align-content:center;align-items:start;gap:clamp(32px,4.5vw,80px);width:100%;max-width:1680px;margin:0 auto;padding:clamp(20px,4.5vh,60px) clamp(24px,4vw,64px) 20px;display:grid}.debrief.solo{grid-template-columns:minmax(0,680px);justify-content:center}.debrief-result{flex-direction:column;gap:10px;min-width:0;display:flex}.debrief-sector{letter-spacing:.24em;text-transform:uppercase;color:var(--dim);font-size:12px;font-weight:600}.overlay .debrief h2{text-wrap:balance;font-size:clamp(34px,3.8vw,58px);line-height:.95}.overlay .debrief-story{max-width:48ch;margin:0;line-height:1.45}.debrief-stars{align-items:center;gap:16px;margin-top:4px;display:flex}.overlay .debrief .stars{font-size:34px;line-height:1}.new-best{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dark);background:var(--brass);padding:4px 9px;font-size:11px;font-weight:600}.overlay .debrief .award{align-items:center;gap:6px;margin:0;display:flex}.overlay .debrief .award b{color:var(--brass-hi);font-weight:600}.overlay .debrief .stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:0;margin:6px 0 0}.overlay .debrief .stats div{flex:1;min-width:0;padding:10px 0 12px;font-size:11px}.overlay .debrief .stats div+div{border-left:1px solid var(--line);padding-left:18px}.overlay .debrief .stats b{font-size:clamp(22px,2.1vw,30px);font-weight:300}.debrief .scoreboard-wrap{width:100%;margin:2px 0 0}.debrief .scoreboard td{font-size:17px}.debrief.can-compare .scoreboard tbody tr{cursor:pointer}.debrief.can-compare .scoreboard tbody tr>*{transition:background .12s,color .12s}.debrief.can-compare .scoreboard tbody tr:is(:hover,:focus-visible,.chosen)>*{background:var(--ink);color:var(--ink-dark)}.debrief.can-compare .scoreboard tbody tr:is(:hover,:focus-visible,.chosen) :is(b,small,td.lead){color:var(--ink-dark)}.debrief.can-compare .scoreboard tbody tr:focus-visible{outline:none}.overlay .debrief-hint{letter-spacing:.06em;color:var(--dim);margin:0;font-size:12px}.squad-awards{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.squad-awards div{border-top:1px solid var(--brass);min-width:0;padding:10px 12px 2px 0}.squad-awards div+div{padding-left:14px}.squad-awards b{color:var(--brass-hi);font-size:28px;font-weight:300;line-height:1;display:block}.squad-awards span{letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-top:4px;font-size:10px;font-weight:600;display:block}.squad-awards em{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.03em;color:var(--ink);font-size:15px;font-style:normal;font-weight:600;display:block;overflow:hidden}.head-to-head{flex-direction:column;gap:22px;min-width:0;animation:.3s ease-out both debrief-fade;display:flex}.h2h{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,48px);display:grid}.h2h-col{min-width:0}.h2h-head{border-bottom:1px solid var(--line);align-items:flex-end;gap:16px;padding-bottom:10px;display:flex}.h2h-col.me .h2h-head{border-bottom-color:var(--brass)}.h2h-head .score-who b{font-size:22px}.h2h-acc{text-align:right;white-space:nowrap;margin-left:auto}.h2h-acc b{color:var(--ink);font-size:34px;font-weight:300;line-height:.9;display:block}.h2h-acc small{letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:10px;font-weight:600}.h2h-traps{margin:0;padding:0;list-style:none}.h2h-traps li{border-bottom:1px solid var(--line);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:10px 2px 11px;font-size:16px;display:grid}.h2h-traps li>.ic{width:18px;height:18px;color:var(--dim)}.h2h-traps li.best>.ic{color:var(--brass-hi)}.h2h-num{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px}.h2h-num b{color:var(--ink);font-size:19px;font-weight:400}.h2h-bar{background:var(--line);grid-column:1/-1;height:4px}.h2h-bar i{background:var(--brass);transform-origin:0;height:100%;transform:scaleX(var(--to));--from:0;animation:.6s cubic-bezier(.3,.7,.3,1) both xp-fill;display:block}.h2h-col:not(.me) .h2h-bar i{background:var(--friend)}.h2h-traps li.other{color:var(--dim);font-size:15px}.h2h-manned{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:12px;margin-top:10px;padding:9px 2px;font-size:14px;display:flex}.h2h-manned>.ic{width:18px;height:18px;color:var(--dim)}.h2h-manned small{color:var(--dim);font-size:11px;display:block}.h2h-manned b{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:auto;font-size:19px;font-weight:400}.overlay .h2h-empty,.overlay .h2h-legend{letter-spacing:.04em;color:var(--dim);margin:10px 0 0;font-size:12px}.rewards.settled,.rewards.settled *,.rewards.settled .promotion-row:after{animation:none!important}.rewards.settled .promotion-row:after,.rewards[hidden],.head-to-head[hidden]{display:none}.rewards{flex-direction:column;gap:clamp(18px,3vh,30px);min-width:0;display:flex}.reward-part{animation:reward-in .6s cubic-bezier(.2, .8, .2, 1) calc(var(--reveal,0s) + var(--i,0) * .35s) both;flex-direction:column;gap:10px;display:flex}.promotion-row{background:linear-gradient(90deg,#d9b66a2b,#d9b66a0a 65%,#0000);border-top:1px solid #d9b66aa6;border-bottom:1px solid #d9b66a38;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid;position:relative;overflow:hidden}.promotion-row:after{content:"";pointer-events:none;animation:reward-shine 1.2s ease-out calc(var(--reveal,0s) + .3s) both;background:linear-gradient(105deg,#0000 35%,#ecd08e47 50%,#0000 65%);position:absolute;inset:0;transform:translate(-110%)}.promotion{gap:18px;padding:clamp(14px,2.2vh,20px) 22px;display:flex}.promotion+.promotion{border-left:1px solid #d9b66a33}.promo-icon{width:84px;height:84px;color:var(--brass-hi);background:radial-gradient(circle,#d9b66a57,#0000 68%);flex:none;place-items:center;display:grid}.promo-icon .ic{filter:drop-shadow(0 0 10px #d9b66a8c);width:50px;height:50px}.promo-kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--brass);font-size:11px;font-weight:600}.promo-name{letter-spacing:.03em;color:var(--ink);margin-top:2px;font-size:26px;font-weight:600;line-height:1.1;display:block}.promo-level{align-items:center;gap:10px;margin-top:6px;display:flex}.promo-level>span{letter-spacing:.2em;text-transform:uppercase;color:var(--dim);font-size:12px}.promo-level>b{color:var(--brass-hi);margin-left:-4px;font-size:50px;font-weight:300;line-height:.85}.promo-level .rank-pips .ic{width:22px;height:22px}.overlay .promo-mastery{color:var(--muted);margin:8px 0 0;font-size:14px}.promo-mastery b{color:var(--ink);font-weight:600}.overlay .promo-next{color:var(--brass-hi);margin:4px 0 0;font-size:13px;line-height:1.4}.promo-next i{color:var(--ink);font-style:normal}.rank-pips .ic.new{animation:pip-light .5s cubic-bezier(.2, .8, .2, 1) calc(var(--reveal,0s) + .6s) both}.unlocks,.trap-xp{margin:0;padding:0;list-style:none}.unlocks li{border-bottom:1px solid var(--line);grid-template-columns:26px 150px minmax(0,1fr) auto;align-items:center;gap:14px;padding:9px 2px;display:grid}.unlock-icon .ic{width:22px;height:22px;color:var(--ink)}.unlock-kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--brass);font-size:11px;font-weight:600}.unlocks b{letter-spacing:.02em;color:var(--ink);flex-wrap:wrap;gap:4px 20px;font-size:21px;font-weight:600;display:flex}.unlocks small{letter-spacing:.06em;color:var(--dim);text-align:right;font-size:12px}.unlock-trap{align-items:center;gap:7px;font-size:17px;display:inline-flex}.unlock-trap .ic{width:17px;height:17px;color:var(--dim)}.unlock-trap em{color:var(--brass);font-size:14px;font-style:normal;font-weight:500}.trap-xp li{border-bottom:1px solid var(--line);grid-template-columns:20px minmax(110px,170px) minmax(80px,1fr) 72px 96px auto;align-items:center;gap:14px;padding:8px 2px;font-size:15px;display:grid}.trap-xp li>.ic{width:18px;height:18px;color:var(--dim)}.trap-xp .xp-track{background:var(--line);height:4px}.trap-xp .xp-track i{background:var(--brass);transform-origin:0;height:100%;transform:scaleX(var(--to));animation:xp-fill 1.2s cubic-bezier(.3, .7, .3, 1) calc(var(--reveal,0s) + .35s + var(--i,0) * .35s) both;display:block}.trap-xp li b{text-align:right;color:var(--brass);font-variant-numeric:tabular-nums;font-weight:500}.trap-xp li small{letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-size:11px}.trap-xp li.up>.ic,.trap-xp li.up small{color:var(--brass-hi)}.debrief-bar{border-top:1px solid var(--line);background:#040504f0;justify-content:flex-end;align-items:center;gap:12px;width:100%;padding:14px clamp(24px,4vw,64px);display:flex;position:sticky;bottom:0}.debrief-bar [data-act=quit]{margin-right:auto}.overlay .debrief-bar p{margin:0}.debrief-sector{animation:.5s ease-out .1s both debrief-fade}.overlay .debrief h2{animation:.8s cubic-bezier(.6,0,.2,1) .15s both debrief-wipe}.overlay .debrief-story{animation:.6s ease-out .5s both debrief-fade}.debrief .stars i{font-style:normal;display:inline-block}.debrief .stars i:not(.on){color:var(--line);animation:debrief-fade .4s ease-out calc(.65s + var(--s) * .2s) both}.debrief .stars i.on{animation:star-stamp .5s cubic-bezier(.2, .9, .3, 1.25) calc(.65s + var(--s) * .2s) both}.debrief .new-best{animation:.45s cubic-bezier(.2,.9,.3,1.3) 1.3s both badge-stamp}.overlay .debrief .award{animation:.5s ease-out 1.15s both debrief-fade}.overlay .debrief .stats{animation:.5s ease-out 1.35s both debrief-rise}.debrief .scoreboard-wrap{animation:.4s ease-out 1.45s both debrief-fade}.debrief .scoreboard tbody tr>*{animation:.45s ease-out 1.5s both debrief-rise}.debrief .scoreboard tbody tr:nth-child(2)>*{animation-delay:1.58s}.debrief .scoreboard tbody tr:nth-child(3)>*{animation-delay:1.66s}.debrief .scoreboard tbody tr:nth-child(4)>*{animation-delay:1.74s}@keyframes debrief-fade{0%{opacity:0}}@keyframes debrief-rise{0%{opacity:0;transform:translateY(10px)}}@keyframes debrief-wipe{0%{clip-path:inset(0 100% 0 0);transform:translate(-14px)}}@keyframes star-stamp{0%{opacity:0;transform:scale(2.6)rotate(-14deg)}55%{opacity:1;text-shadow:0 0 18px var(--brass);transform:scale(.9)}}@keyframes badge-stamp{0%{opacity:0;transform:scale(1.8)}}@keyframes reward-in{0%{opacity:0;transform:translateY(16px)}}@keyframes reward-shine{to{transform:translate(110%)}}@keyframes pip-light{0%{color:var(--line);opacity:0;transform:scale(1.9)}60%{filter:drop-shadow(0 0 6px var(--brass))}}@keyframes xp-fill{0%{transform:scaleX(var(--from))}}@media (width<=980px){.debrief{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.unlocks li{grid-template-columns:26px minmax(0,1fr)}.unlocks small{text-align:left;grid-column:2}.unlock-kicker{grid-column:2}.trap-xp li{grid-template-columns:20px minmax(0,1fr) auto}.trap-xp .xp-track{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.reward-part,.promotion-row:after,.trap-xp .xp-track i,.rank-pips .ic.new,.debrief-sector,.overlay .debrief h2,.overlay .debrief-story,.debrief .stars i,.debrief .new-best,.overlay .debrief .award,.overlay .debrief .stats,.debrief .scoreboard-wrap,.debrief .scoreboard tbody tr>*,.head-to-head,.h2h-bar i{animation:none}.promotion-row:after{display:none}}button.kit-trap{text-align:center;min-height:112px;font:600 16px/1.2 var(--f-ui);letter-spacing:.04em;text-transform:none;border-color:var(--line);background:#00000059;align-content:center;justify-items:center;gap:4px;padding:14px 8px;display:grid;position:relative}button.kit-trap.empty{color:var(--dim);background:#0000002e}button.kit-trap.empty .kit-name{letter-spacing:.14em;text-transform:uppercase;font-size:14px;font-weight:500}.kit-trap .kit-number{letter-spacing:.1em;color:var(--dim);font-size:12px;position:absolute;top:6px;left:10px}.kit-trap .kit-icon{place-items:center;height:42px;font-size:30px;font-weight:300;line-height:1;display:grid}.kit-trap .kit-icon .ic{width:38px;height:38px}.kit-rank{flex-direction:column;align-items:center;gap:2px;min-height:30px;display:flex}.kit-cost{color:var(--brass);align-items:center;gap:5px;font-size:14px;font-weight:500;display:flex}.kit-cost .ic{width:14px;height:14px}button.kit-trap:hover .kit-number,button.kit-trap:hover .kit-cost,button.kit-trap:focus-visible .kit-cost,button.kit-trap:hover .kit-line,button.kit-trap:focus-visible .kit-line,button.kit-trap:hover .kit-trait,button.kit-trap:focus-visible .kit-trait,button.kit-trap:hover .rank-pips .ic.on,button.kit-trap:focus-visible .rank-pips .ic.on{color:var(--ink-dark)}button.kit-trap:hover .rank-pips .ic:not(.on),button.kit-trap:focus-visible .rank-pips .ic:not(.on){color:#12131033}button.kit-trap[draggable=true]{cursor:grab}button.kit-trap.dragging{opacity:.5}button.kit-trap.target{border-color:var(--brass);box-shadow:inset 0 -2px 0 var(--brass);background:#d9b66a24}button.kit-trap.drop-target{border-color:var(--brass);box-shadow:inset 0 0 0 2px var(--brass);background:#d9b66a2e}.kit-trait{color:var(--brass);position:absolute;top:7px;right:9px}.kit-trait .ic{width:15px;height:15px}.kit-line{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.04em;max-width:100%;color:var(--dim);font-size:12px;font-weight:500;overflow:hidden}.kit-line.trait{color:var(--brass)}.kit-xp{background:var(--line);height:2px;position:absolute;bottom:0;left:0;right:0}.kit-xp:before{content:"";height:100%;width:calc(var(--fill) * 100%);background:var(--brass);display:block}.kit-strip{position:relative}.kit-strip-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.armory-tab:not([hidden]){flex-direction:column;min-height:0;padding:4px 0 0;display:flex}.arm-kit-view,.arm-pick-view{flex-direction:column;flex:1;gap:14px;min-height:0;display:flex}.arm-kit-view[hidden],.arm-pick-view[hidden]{display:none}.arm-kit-view>.ui-label{margin:0}.arm-kit-view>.ui-label:after{order:1}.arm-count{letter-spacing:.12em;color:var(--brass);order:2;margin-left:auto}.arm-kit .kit-traps{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.arm-kit button.kit-trap{min-width:0;min-height:124px}.arm-kit button.kit-trap:hover,.arm-kit button.kit-trap:focus-visible{background:var(--ink);color:var(--ink-dark);outline:none}.arm-kit .kit-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.arm-kit button.kit-trap.equipped-now{animation:.9s ease-out kit-equipped}@keyframes kit-equipped{0%{background:#d9b66a66}}.arm-focus{flex:1;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,2.4vw,36px);min-height:0;display:grid}.arm-model-slot{min-width:0;min-height:0;display:flex}.arm-model{background:radial-gradient(at 50% 60%,#4348327a,#161d1200 68%),repeating-linear-gradient(0deg,#0000,#0000 23px,#808d700d 23px 24px);flex:1;min-height:160px;position:relative}.arm-model[hidden]{display:none}.arm-model>canvas,.arm-still{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.arm-info,.arm-rank-col{scrollbar-width:thin;min-width:0;min-height:0;padding-right:2px;overflow-y:auto}.arm-specs{letter-spacing:.14em;text-transform:uppercase;color:var(--brass);align-items:center;gap:6px;font-size:12px;display:flex}.arm-specs .ic{width:12px;height:12px}.arm-name{font:600 clamp(28px, 2.5vw, 40px)/1 var(--f-ui);margin:6px 0 8px}.arm-desc{color:var(--dim);margin:0 0 12px;font-size:15px;line-height:1.35}.arm-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 12px;margin:0;display:grid}.arm-stats>div{border-bottom:1px solid var(--line);min-width:0;padding:0 0 6px}.arm-stats dt{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);font-size:10px}.arm-stats dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:3px 0 0;font-size:18px;font-weight:400;line-height:1.15}.arm-stats-note{color:var(--dim);margin:7px 0 0;font-size:11px;line-height:1.4}.arm-rank-col h4.ui-label{margin:0 0 8px}.arm-rank-col h4.ui-label span{letter-spacing:.1em;text-transform:none;color:var(--dim);order:2;margin-left:auto;font-size:11px}.arm-rank-col h4.ui-label:after{order:1}.arm-track{grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:6px;margin:4px 0 10px;display:grid}.arm-node{width:24px;height:24px;color:var(--brass);border:1px solid var(--brass);place-items:center;font-size:14px;font-weight:600;display:grid}.arm-node.on{color:var(--ink-dark);background:var(--brass)}.arm-wire{background:var(--line);height:2px}.arm-wire:before{content:"";height:100%;width:calc(var(--fill) * 100%);background:var(--brass);display:block}.arm-mastery{letter-spacing:.1em;text-transform:uppercase;color:var(--brass);margin-bottom:12px;font-size:11px}.arm-mastery span{color:var(--dim);letter-spacing:.06em;text-transform:none}.arm-traits{flex-direction:column;display:flex}button.menu-row.arm-trait{letter-spacing:.02em;text-transform:none;justify-content:flex-start;gap:10px;min-height:0;padding:9px;font-size:16px}button.menu-row.arm-trait:after{display:none}.arm-trait .ic{width:20px;height:20px;color:var(--brass);flex:none}.arm-trait>span{gap:4px;display:grid}.arm-trait small{margin:0;font-size:13px;line-height:1.25}.arm-trait.current{box-shadow:inset 0 -2px 0 var(--brass)}.arm-trait.current small{color:#121310a6}.arm-trait.current .ic,.arm-trait:hover:not(:disabled) .ic,.arm-trait:focus-visible .ic{color:var(--ink-dark)}.arm-trait:disabled{opacity:.45}.arm-std{color:var(--dim);margin:0;font-size:14px}.armory-tab .arm-pick-head{border-bottom:1px solid var(--line);text-align:left;align-items:baseline;gap:20px;margin:0;padding-bottom:8px;display:flex}.arm-pick-title{font:500 24px/1 var(--f-ui);letter-spacing:.14em;text-transform:uppercase;margin:0}.arm-replacing{color:var(--dim);margin-left:auto;font-size:15px}.arm-pick-body{flex:1;grid-template-columns:minmax(240px,340px) minmax(0,1fr);gap:clamp(24px,3vw,44px);min-height:0;display:grid}.arm-rows{scrollbar-width:thin;flex-direction:column;min-height:0;display:flex;overflow-y:auto}button.arm-row{text-align:left;width:100%;min-height:40px;font:500 16px/1 var(--f-ui);letter-spacing:.02em;text-transform:none;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:0 0;flex-shrink:0;grid-template-columns:22px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:4px 10px;display:grid}.arm-row>.ic{width:20px;height:20px;color:var(--dim)}.arm-row-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.arm-row.locked{color:var(--dim)}.arm-row.equipped{box-shadow:inset 3px 0 var(--brass)}.arm-row-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);white-space:nowrap;font-size:11px}.arm-row-tag.cur{color:var(--brass)}.arm-row-cost{color:var(--brass);letter-spacing:.06em;align-items:center;gap:5px;font-size:12px;display:inline-flex}.arm-row-cost .ic{width:18px;height:18px}.arm-row-price{align-items:center;gap:5px;display:inline-flex}.arm-row-verb{text-transform:uppercase;letter-spacing:.12em;font-size:11px;display:none}.arm-row-cost.short .arm-row-price{opacity:.55}button.arm-row:is(:hover,:focus-visible,.current) .arm-row-verb{display:inline}button.arm-row:is(:hover,:focus-visible,.current) .arm-row-cost.short .arm-row-price{display:none}button.arm-row:is(:hover,:focus-visible,.current) .arm-row-cost.short{color:var(--bad-dark)}.arm-row-cost.armed{letter-spacing:.12em;text-transform:uppercase;font-size:11px}button.arm-row.armed,button.arm-row.armed:is(:hover,:focus-visible,.current){color:var(--ink-dark);background:var(--brass)}button.arm-row.armed :is(.ic,.arm-row-cost){color:var(--ink-dark)}button.arm-row:hover,button.arm-row:focus-visible,button.arm-row.current{color:var(--ink-dark);background:var(--ink);outline:none}button.arm-row:is(:hover,:focus-visible,.current) :is(.ic,.arm-row-cost,.arm-row-tag),button.arm-row:is(:hover,:focus-visible,.current) .rank-pips .ic.on{color:var(--ink-dark)}button.arm-row:is(:hover,:focus-visible,.current) .rank-pips .ic:not(.on){color:#12131033}.arm-pick-detail{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.arm-pick-top{flex:1;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,2.4vw,32px);min-height:0;display:grid}.arm-compare{border-top:1px solid var(--line);flex-wrap:wrap;gap:6px 28px;padding-top:10px;font-size:15px;display:flex}.arm-compare:empty{display:none}.arm-compare b{font-weight:600}.arm-compare em{color:var(--dim);font-style:normal}.arm-compare em.up{color:var(--foe)}.arm-compare em.down{color:var(--good)}.arm-pick-action{align-items:center;gap:16px;min-height:48px;display:flex}.arm-click{letter-spacing:.04em;color:var(--brass);margin:0 auto 0 0;font-size:16px}.arm-click.locked{color:var(--dim)}.arm-pick-action .primary{justify-content:center;align-items:center;gap:6px;min-height:48px;padding:0 24px;font-size:15px;display:inline-flex}.arm-purchase-balance{text-align:right;max-width:190px;color:var(--dim);font-size:14px;line-height:1.3}.arm-purchase-balance.short{color:var(--brass)}.armory-footer{border-top:1px solid var(--line);align-items:center;gap:24px;min-width:0;padding-top:10px;display:flex}.armory-footer[hidden],.deployment-bar[hidden]{display:none}.arm-toast{text-align:right;min-width:0;color:var(--brass);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:14px;overflow:hidden}.arm-back{flex:none;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-size:13px;display:inline-flex}.arm-back kbd{font-size:11px}@media (height>=850px) and (width>=1181px){.arm-kit button.kit-trap{min-height:150px}.arm-desc{font-size:17px}.arm-stats{gap:10px 20px}.arm-stats dt{font-size:11px}.arm-stats dd{font-size:23px}button.menu-row.arm-trait{padding-top:12px;padding-bottom:12px;font-size:19px}.arm-trait small{font-size:15px}}@media (width<=1180px){.armory-tab:not([hidden]){min-height:auto}.arm-kit .kit-traps{grid-template-columns:repeat(3,minmax(0,1fr))}.arm-focus{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.arm-focus .arm-model-slot{grid-row:span 2}.arm-model{min-height:220px}}@media (width<=760px){.arm-kit .kit-traps{grid-template-columns:repeat(2,minmax(0,1fr))}.arm-focus,.arm-pick-body,.arm-pick-top{grid-template-columns:minmax(0,1fr)}.arm-focus .arm-model-slot{grid-row:auto}.arm-rows{max-height:40vh}.arm-model{min-height:200px}.armory-footer{gap:12px}.arm-hints{display:none}.arm-back{min-height:34px;padding:0 10px;font-size:12px}.arm-back kbd{display:none}.arm-pick-action{flex-wrap:wrap}}.squad-code{color:var(--brass);letter-spacing:.15em}.session-note{flex-direction:column;align-items:center;gap:8px;margin:12px 0;display:flex}.squad-code{font-size:15px}.join-dialog{width:min(440px,100% - 32px)}.join-form{flex-direction:column;display:flex}.join-form label{margin-bottom:10px}.join-code{border:1px solid var(--line);color:var(--ink);font:600 30px var(--f-ui);letter-spacing:.35em;text-align:center;text-transform:uppercase;background:#00000059;padding:14px}.join-code:focus{outline:1px solid var(--brass)}.join-status{min-height:1.5em;color:var(--muted);margin:12px 0;font-size:12px}.join-status.error{color:var(--bad)}.join-actions{justify-content:flex-end;gap:12px;display:flex}.menu-notice{min-height:1.4em;color:var(--bad);margin-top:18px;font-size:13px}.session-tag.offline:before{background:var(--bad)}@media (width<=720px){.room-tag b{font-size:20px}.room-tag .menu-kicker{display:none}}.enemy-chip{align-items:center;gap:1px;display:inline-flex;position:relative}.enemy-chip img{image-rendering:auto;background:#f0ebdc0f;border-radius:3px;width:36px;height:36px}.enemy-chip b{color:var(--ink);min-width:14px;font-size:13px}.enemy-chip.new img{outline:1px solid var(--brass);outline-offset:1px;border-radius:2px}.enemy-chip.new:before{content:"NEW";letter-spacing:.05em;color:#1a140c;background:var(--brass);padding:0 2px;font-size:8px;line-height:10px;position:absolute;top:-4px;left:-2px}.enemy-chip .enemy-name{color:var(--muted);font-size:12px}.briefing-subjects{flex-direction:column;gap:6px;display:flex}.briefing-subject{align-items:center;gap:8px;font-size:13px;display:flex}.briefing-subject .enemy-chip img{width:44px;height:44px}.briefing-subject b{color:var(--ink)}.briefing-subject em{color:var(--muted);font-style:normal}.operation-subjects{margin-top:14px}.enemy-chip.boss img{outline-offset:1px;border-radius:2px;outline:2px solid #b8452f}.pause-actions{border-top:1px solid var(--line);gap:0}.pause-actions button,.settings-rail nav button,.settings-actions button{letter-spacing:.14em;text-align:left;min-height:52px;color:var(--ink);border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;padding:0 20px;font-size:18px;position:relative}.pause-actions button:after{content:"";opacity:.6;border-top:2px solid;border-right:2px solid;width:8px;height:8px;margin-top:-5px;position:absolute;top:50%;right:20px;transform:rotate(45deg)}.pause-actions button.primary,.settings-rail nav [aria-pressed=true],.settings-rail nav [aria-pressed=true]:hover:not(:disabled){color:var(--ink-dark);background:var(--ink);box-shadow:none}.pause-actions button:hover:not(:disabled),.pause-actions button:focus-visible,.settings-rail nav button:hover:not(:disabled),.settings-rail nav button:focus-visible,.settings-actions button:hover:not(:disabled),.settings-actions button:focus-visible{color:var(--ink-dark);background:var(--ink);border-color:var(--line);outline:none}.pause-actions [data-act=quit]{border-top:1px solid var(--line);color:var(--dim);margin-top:18px}.pause-actions [data-act=quit]:hover:not(:disabled),.pause-actions [data-act=quit]:focus-visible{color:var(--ink);background:#e0553a59}.settings-rail nav{border-top:1px solid var(--line);gap:0}.settings-rail nav button{letter-spacing:.1em;white-space:nowrap;align-items:center;gap:12px;font-size:15px}.settings-rail nav button span{color:inherit;opacity:.6;font:600 12px var(--f-ui);letter-spacing:.1em}.settings-actions{border-top:1px solid var(--line);gap:0}.settings-actions [data-reset]{color:var(--dim);font-size:14px}.settings-actions button.primary{color:var(--ink-dark);background:var(--brass)}.hud{--hud-text:#ece8dc;--hud-dim:#ece8dc99;--hud-faint:#ece8dc29;--hud-acc:#d9b66a;--hud-friend:#8fc0da;--hud-foe:#e0703f;--hud-good:#a9d77f;--hud-edge:28px;pointer-events:none;color:var(--hud-text);font-family:"Barlow Semi Condensed", var(--f-ui);text-shadow:0 1px 3px #000000d9,0 0 12px #00000059;font-weight:500;position:absolute;inset:0}.hud kbd{color:var(--hud-text);text-shadow:none;background:#0000004d;border:1px solid #ece8dc73;border-radius:2px;padding:0 5px;font:600 .85em/1.4 Barlow Semi Condensed,sans-serif}.hud .ic{vertical-align:middle;flex:none;width:1.2em;height:1.2em;display:inline-block}.hud .ic.wide{width:2.4em}.hud-vignette{opacity:0;background:radial-gradient(ellipse at var(--at,center), transparent 45%, #a00a00bf 100%);position:absolute;inset:0}.hit-arc{opacity:0;width:260px;height:260px;color:var(--bad);filter:drop-shadow(0 0 3px #000c);will-change:transform, opacity;margin:-130px 0 0 -130px;position:absolute;top:50%;left:50%}.hit-arc svg{fill:currentColor;width:100%;height:100%;display:block}.hud-fps{right:var(--hud-edge);color:var(--hud-acc);font-size:14px;position:absolute;top:50%}@keyframes hud-pulse{to{opacity:.4}}.hud-bar{background:var(--hud-faint);height:4px;display:block;position:relative}.hud-bar i{transform-origin:0;position:absolute;inset:0}.hud-bar-ghost{transform:scaleX(var(--ghost,1));background:var(--hud-foe);opacity:.75}.hud-bar-fill{transform:scaleX(var(--fill,1));background:currentColor;transition:transform .12s}.hud-top{transform:translateX(-50%) scale(var(--hud-scale,1));transform-origin:top;justify-items:center;display:grid;position:absolute;top:30px;left:50%}.hud-compass{height:22px;position:relative}.compass-window{border-bottom:1px solid #ece8dc40;height:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000);mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000)}.compass-strip{will-change:transform;color:var(--hud-dim);position:absolute;top:0;bottom:0;left:0}.compass-strip span{letter-spacing:.06em;font-size:13px;position:absolute;bottom:7px;transform:translate(-50%)}.compass-strip span.card{color:var(--hud-text);font-size:15px;font-weight:600}.compass-strip i{background:currentColor;width:1px;height:4px;position:absolute;bottom:0}.compass-strip i.big{height:7px}.compass-heading{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600;position:absolute;top:25px;left:50%;transform:translate(-50%)}.compass-heading:before{content:"";border:4px solid #0000;border-top:0;border-bottom:4px solid var(--hud-text);width:0;height:0;margin-left:-4px;position:absolute;top:-6px;left:50%}.compass-marks{position:absolute;inset:0}.compass-mark{text-align:center;color:#e0703f80;border:1.5px solid;border-radius:2px;width:18px;height:18px;margin-left:-9px;font-size:12px;font-weight:600;line-height:15px;position:absolute;top:-22px;left:0}.compass-mark.active{color:var(--hud-foe)}.compass-mark.radio{color:var(--hud-acc);border-radius:50%}.compass-mark.radio:before{content:"";background:currentColor;width:6px;height:6px;margin:4.5px auto 0;display:block;transform:rotate(45deg)}.hud-tickets{grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;width:780px;margin-top:30px;display:grid}.hud-ticket{font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:27px;font-weight:600;line-height:1;display:flex}.hud-ticket small{letter-spacing:.18em;color:var(--hud-dim);font-size:12px;font-weight:500}.hud-ticket .ic{width:18px;height:18px}.hud-ticket .hud-bar{width:150px}.hud-resolve{color:var(--hud-friend);justify-content:flex-end}.hud-resolve .hud-bar i{transform-origin:100%}.hud-resolve.low{color:var(--hud-foe)}.hud-resolve.low .hud-bar-fill{animation:.8s ease-in-out infinite alternate hud-pulse}.hud-supplies{color:var(--hud-acc)}.hud-supplies-value{align-items:baseline;gap:6px;display:flex}.supplies-delta{font-size:16px;font-style:normal}.supplies-delta.up{color:var(--hud-good)}.supplies-delta.down{color:var(--hud-foe)}.hud-wave-block{text-align:center;position:relative}.hud-wave{letter-spacing:.22em;white-space:nowrap;font-size:16px;font-weight:600}.hud-phase{white-space:nowrap;letter-spacing:.04em;color:var(--hud-dim);margin-top:6px;font-size:14px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.hud-phase b,.hud-phase .plus{color:var(--hud-acc);font-weight:600}.hud-phase b.urgent{color:var(--hud-foe)}.hud-countdown{pointer-events:none;text-shadow:0 2px 18px #000000b3,0 0 4px #00000080;justify-items:center;margin-top:34px;display:grid}.hud-countdown[hidden]{display:none}.hud-countdown small{letter-spacing:.4em;color:var(--hud-acc);font-size:14px;font-weight:600}.hud-countdown span{color:var(--hud-text);will-change:transform, opacity;font-size:96px;font-weight:300;line-height:1;animation:.6s ease-out wave-count-pop}.hud-countdown.final small,.hud-countdown.final span{color:var(--hud-foe)}.hud-countdown.final span{font-weight:400}@keyframes wave-count-pop{0%{opacity:0;transform:scale(1.5)}25%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.hud-countdown span{animation:none}}.hud-boss{text-align:center;color:#c8553a;width:min(440px,62vw);margin-top:38px}.hud-boss-name{letter-spacing:.24em;color:#f0d9b0;margin-bottom:5px;font-size:13px;font-weight:600}.hud-boss .hud-bar{height:6px}.hud-boss .hud-bar-ghost{opacity:.9;background:#f0d9b0}.hud-boss.enraged .hud-bar-fill{animation:.45s ease-in-out infinite alternate boss-rage}@keyframes boss-rage{to{filter:brightness(1.7)saturate(1.3)}}.hud-tl{top:var(--hud-edge);left:var(--hud-edge);transform:scale(var(--hud-scale,1));transform-origin:0 0;gap:8px;display:grid;position:absolute}.hud-room{letter-spacing:.18em;color:var(--hud-dim);font-size:13px}.hud-room b{color:var(--hud-acc);letter-spacing:.22em;font-weight:600}.hud-intel{flex-direction:column;gap:4px;display:flex}.hud-label{letter-spacing:.2em;color:var(--hud-dim);font-size:12px}.wave-intel-row{align-items:center;gap:6px;height:34px;display:flex}.wave-intel-row .breach,.breach-marker{color:var(--hud-foe,#e0703f);font-family:Barlow Semi Condensed,sans-serif;font-weight:600}.wave-intel-row .breach{text-align:center;border:1.5px solid;border-radius:2px;width:20px;height:20px;margin-right:2px;font-size:13px;line-height:17px}.hud-intel .enemy-chip img{background:#0000004d;width:32px;height:32px}.hud-intel .enemy-chip b{color:var(--hud-text);font-size:14px;font-weight:600}.breach-marker{text-align:center;pointer-events:none;text-shadow:0 1px 2px #000;background:#140a0573;border:2px solid;border-radius:3px;width:28px;height:28px;font-size:17px;line-height:25px;position:absolute;top:0;left:0}.threat-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.threat{color:#e8a33a;text-shadow:0 1px 2px #000;white-space:nowrap;transform-origin:0 0;justify-items:center;gap:3px;font-family:Barlow Semi Condensed,sans-serif;font-weight:600;display:grid;position:absolute;top:0;left:0}.threat.radio,.threat.critical,.threat.down{color:#ff4a3a}.threat-icon{background:#140a0580;border:2px solid;border-radius:3px;width:26px;height:26px;box-shadow:0 0 10px #00000080}.threat-icon:before{content:"";background:currentColor;width:8px;height:8px;margin:7px auto 0;display:block;transform:rotate(45deg)}.threat.radio .threat-icon{border-radius:50%}.threat.down .threat-icon:before{content:"✕";text-align:center;background:0 0;width:auto;height:auto;margin:0;font-size:18px;line-height:22px;transform:none}.threat-label{letter-spacing:.14em;font-size:13px}.threat-bar{background:#0000008c;width:54px;height:3px;display:block}.threat-bar i{transform-origin:0;background:currentColor;height:100%;display:block}.threat.down .threat-bar{display:none}.threat-dist{color:var(--hud-dim);font-size:11px;font-weight:500}.threat.struck .threat-icon{animation:.45s ease-out threat-struck}.threat:not(.down) .threat-icon{animation:.9s ease-in-out infinite alternate threat-pulse}.threat.struck:not(.down) .threat-icon{animation:.45s ease-out threat-struck,.9s ease-in-out .45s infinite alternate threat-pulse}.threat-arrow{width:0;height:0;transform:rotate(var(--arrow,0deg)) translateX(26px);transform-origin:0 0;display:none;position:absolute;top:14px;left:50%}.threat-arrow:before{content:"";border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:11px solid;position:absolute;top:-7px}.threat.offscreen .threat-arrow{display:block}.threat.offscreen .threat-label{font-size:12px}@keyframes threat-struck{0%{background:currentColor;transform:scale(1.45)}to{transform:scale(1)}}@keyframes threat-pulse{to{box-shadow:0 0 16px}}.hud-resolve.struck{animation:.5s ease-out resolve-struck}@keyframes resolve-struck{0%{color:#ff4a3a;text-shadow:0 0 14px #ff4a3acc;transform:scale(1.12)}to{transform:none}}.compass-mark.alarm{color:#ff4a3a;animation:.5s ease-in-out infinite alternate compass-alarm}@keyframes compass-alarm{to{background:#ff4a3a59;box-shadow:0 0 10px #ff4a3a}}.hud-feed{top:var(--hud-edge);right:var(--hud-edge);transform:scale(var(--hud-scale,1));transform-origin:100% 0;flex-direction:column;align-items:flex-end;gap:6px;font-size:16px;display:flex;position:absolute}.feed-line{align-items:center;gap:8px;padding:1px 0;animation:.2s ease-out feed-in;display:flex}.feed-line .me{color:var(--hud-acc);font-weight:600}.feed-line .ally{color:var(--hud-friend)}.feed-line .foe{color:var(--hud-foe)}.feed-line .ic{width:14px;height:14px;color:var(--hud-dim)}.feed-line .ic.wide{width:28px}.feed-line .ic.hs{color:var(--hud-text)}.feed-line .plus{color:var(--hud-acc)}.feed-line .warn{color:var(--hud-foe)}.feed-line .caution{color:#e8a33a}.feed-line .squad{color:var(--hud-good);font-weight:600}.feed-line .squad.left{color:var(--hud-dim)}@keyframes feed-in{0%{opacity:0;transform:translate(20px)}}.hud-chat{flex-direction:column;gap:6px;width:min(440px,60vw);padding:8px 12px;font-size:16px;display:flex;position:absolute;bottom:calc(100% + 14px);left:-12px}.hud-chat.open{background:linear-gradient(90deg,#0000008c,#0000004d 70%,#0000)}.chat-log{overflow-wrap:anywhere;flex-direction:column;gap:3px;line-height:1.35;display:flex}.hud-chat .chat-line{transition:opacity .6s}.hud-chat .chat-line.faded{opacity:0}.hud-chat:not(.open) .chat-line:nth-last-child(n+6){display:none}.hud-chat.open .chat-line{opacity:1}.hud-chat .chat-line b.me{color:var(--hud-acc)}.hud-chat .chat-line b.ally{color:var(--hud-friend)}.chat-entry{border-bottom:1px solid #ece8dc73;align-items:baseline;gap:10px;padding:4px 0 5px;display:none}.hud-chat.open .chat-entry{display:flex}.chat-entry span{letter-spacing:.2em;text-transform:uppercase;color:var(--hud-acc);font-size:12px;font-weight:600}.chat-entry input{min-width:0;font:500 16px "Barlow Semi Condensed", var(--f-ui);color:var(--hud-text);caret-color:var(--hud-acc);text-shadow:inherit;background:0 0;border:0;outline:none;flex:1;padding:0}.hud-bl{left:var(--hud-edge);bottom:var(--hud-edge);transform:scale(var(--hud-scale,1));transform-origin:0 100%;align-items:flex-end;gap:20px;display:flex;position:absolute}.hud-minimap{border:1px solid #ece8dc29;width:200px;height:200px;display:block}.hud-me{gap:8px;width:300px;display:grid}.hud-squad:empty{display:none}.hud-squad{gap:5px;margin-bottom:6px;font-size:15px;display:grid}.squad-row{color:var(--hud-friend);align-items:center;gap:8px;display:flex}.squad-tag{letter-spacing:.1em;width:30px;color:var(--hud-dim);font-size:11px}.squad-row b{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.squad-ready{letter-spacing:.12em;color:var(--hud-good);font-size:11px;font-style:normal}.squad-hp{background:var(--hud-faint);width:70px;height:3px;position:relative}.squad-hp:after{content:"";transform:scaleX(var(--fill,1));transform-origin:0;background:currentColor;position:absolute;inset:0}.squad-row em{letter-spacing:.12em;text-align:right;width:70px;font-size:12px;font-style:normal}.squad-row.down{color:var(--hud-foe)}.squad-row em.squad-revive{white-space:nowrap;position:relative}.squad-revive:after{content:"";background:var(--hud-acc);height:2px;transform:scaleX(var(--fill,0));transform-origin:100%;position:absolute;bottom:-3px;left:0;right:0}.hud-soldier{align-items:baseline;gap:8px;min-width:0;display:flex}.hud-soldier .period-flag{vertical-align:-2px;width:20px;height:auto}.hud-soldier b{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.hud-soldier em{letter-spacing:.18em;text-transform:uppercase;color:var(--hud-acc);font-size:12px;font-style:normal}.hud-health{align-items:center;gap:14px;display:flex}.hud-health b{font-variant-numeric:tabular-nums;width:66px;font-size:48px;font-weight:400;line-height:.9}.hud-health .hud-bar{flex:1;height:6px}.hud-health.low{color:var(--hud-foe)}.hud-health.low .hud-bar-fill{animation:.8s ease-in-out infinite alternate hud-pulse}.hud-br{right:var(--hud-edge);bottom:var(--hud-edge);text-align:right;width:360px;transform:scale(var(--hud-scale,1));transform-origin:100% 100%;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute}.hud-perks{display:contents}.perk-heading{order:0;align-items:center;gap:12px;margin-bottom:10px;display:flex}.perk-title{justify-items:end;line-height:1.2;display:grid}.perk-title strong{letter-spacing:.06em;text-transform:uppercase;font-size:15px;font-weight:600}.perk-readiness{letter-spacing:.16em;color:var(--hud-dim);font-variant-numeric:tabular-nums;gap:10px;font-size:12px;display:flex}.perk-deployed:empty{display:none}.perk-deployed{color:var(--hud-text)}.perk-meter{flex:none;width:46px;height:46px;position:relative}.perk-meter svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible;transform:rotate(-90deg)}.perk-track{fill:#0000004d;stroke:var(--hud-faint);stroke-width:2.5px}.perk-charge{fill:none;stroke:#ece8dcb3;stroke-width:3px;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--charge,1) * 100);transition:stroke-dashoffset .15s linear}.hud .perk-key{background:0 0;border:0;place-items:center;padding:0;font-size:17px;display:grid;position:absolute;inset:0}.hud .perk-key.long-key{font-size:10px;line-height:1.1}.hud-perks.ready .perk-charge{stroke:var(--hud-acc);filter:drop-shadow(0 0 4px #d9b66acc)}.hud-perks.ready .perk-status{color:var(--hud-acc)}.hud-perks.equipped .perk-status{color:#f1d397}.hud-weapon{letter-spacing:.16em;text-transform:uppercase;color:var(--hud-dim);order:1;align-items:center;gap:10px;font-size:15px;display:flex}.hud-weapon em{letter-spacing:.12em;border:1px solid #ece8dc4d;padding:0 5px;font-size:11px;font-style:normal}.hud-ammo-row{order:2;align-items:flex-end;gap:16px;display:flex}.hud-gun-bar{background:var(--line);order:3;width:220px;height:2px;display:none;overflow:hidden}.hud-gun-bar i{background:var(--ink);transform-origin:0;height:100%;transition:background-color .2s;display:block;transform:scaleX(0)}.hud-gun-bar.hot i{background:var(--foe)}.hud-gun-bar.reloading{height:4px}.hud-gun-bar.reloading i{background:var(--brass)}.hud-br.on-gun .hud-gun-bar{display:block}.hud-br.on-gun .hud-grenades{visibility:hidden}.hotbar.disabled .slot{opacity:.35}.hud-gun-reload{text-align:center;letter-spacing:.24em;text-transform:uppercase;width:140px;color:var(--brass);text-shadow:0 1px 3px #000000b3;margin-left:-70px;font-size:11px;display:none;position:absolute;top:calc(50% + 36px);left:50%}.hud-gun-reload.show{display:block}.hud-ring{pointer-events:none;width:64px;height:64px;margin:-32px 0 0 -32px;display:none;position:absolute;top:50%;left:50%}.hud-ring.show{display:block}.hud-ring svg{filter:drop-shadow(0 0 2px #000c);width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.hud-ring.plain svg{display:none}.hud-ring circle{fill:none;stroke-width:3px}.hud-ring .track{stroke:#ece8dc47}.hud-ring .fill{stroke:var(--hud-acc);stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .12s linear}.hud-ring.active .track{stroke:#ece8dc73}.hud-ring-label{white-space:nowrap;text-align:center;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);text-shadow:0 1px 3px #000c;font-size:13px;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)}.hud-ring.active .hud-ring-label{color:var(--hud-acc)}.hud-ring-label small{letter-spacing:.22em;color:var(--hud-dim);margin-bottom:4px;font-size:11px;display:block}.hud-ring-label small:last-child{margin-bottom:0}.hud-ring-label .gain{color:var(--brass)}.hud-gun-reload i{background:var(--brass);transform-origin:0;height:2px;margin-top:5px;display:block;transform:scaleX(0);box-shadow:0 0 0 1px #00000040}.hud-ammo{font-variant-numeric:tabular-nums;align-items:flex-end;gap:10px;min-height:68px;line-height:.8;display:flex}.hud-ammo b{font-size:86px;font-weight:400}.hud-ammo small{color:var(--hud-dim);font-size:28px}.hud-ammo.low b{color:var(--hud-foe)}.hud-ammo .reloading{letter-spacing:.14em;color:var(--hud-acc);font-size:24px;font-weight:600;animation:.6s ease-in-out infinite alternate hud-pulse}.hud-grenades{align-items:center;gap:3px;padding-bottom:6px;display:flex}.hud-grenades .ic{opacity:.28;width:20px;height:20px}.hud-grenades .ic.full{opacity:1}.hud-grenades kbd{margin-left:6px;font-size:11px}.perk-passive{order:3;justify-items:end;gap:2px;margin-top:4px;display:grid}.perk-passive-heading{letter-spacing:.12em;text-transform:uppercase;color:var(--hud-dim);align-items:center;gap:10px;font-size:13px;display:flex}.perk-passive-heading strong{font-weight:500}.perk-resource{color:var(--hud-acc);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.hud-perks.passive-live .perk-passive-heading{color:var(--hud-text)}.hud-perks.passive-live .perk-resource{text-shadow:0 0 8px var(--hud-acc)}.perk-detail{max-width:340px;color:var(--hud-dim);font-size:12px}.hud-bottom{bottom:var(--hud-edge);transform:translateX(-50%) scale(var(--hud-scale,1));transform-origin:bottom;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;left:50%}.hud-trapinfo,.hud-prompt{text-align:center;background:linear-gradient(90deg,#0000,#00000080 16% 84%,#0000);max-width:640px;padding:6px 44px;font-size:15px}.hud-trapinfo b{color:var(--hud-acc);letter-spacing:.08em;font-weight:600}.hud-trapinfo small{color:var(--hud-dim);margin-top:2px;font-size:13px;display:block}.hud-trapinfo .err{color:var(--hud-foe)}.hotbar{gap:4px;display:flex}.slot{background:linear-gradient(#0000,#0006);border-bottom:2px solid #ece8dc4d;grid-template-rows:1fr 18px;place-items:center;width:70px;height:62px;padding:8px 0 3px;display:grid;position:relative}.slot kbd{color:var(--hud-dim);background:0 0;border:0;padding:0;font-size:11px;position:absolute;top:3px;left:6px}.slot .ic{width:26px;height:26px}.slot .ic.wide{width:46px;height:23px}.slot .cost{white-space:nowrap;text-overflow:ellipsis;max-width:64px;color:var(--hud-dim);font-variant-numeric:tabular-nums;font-size:13px;overflow:hidden}.slot.selected{color:var(--hud-acc);border-bottom-color:var(--hud-acc);background:linear-gradient(#0000,#d9b66a2e)}.slot.selected .cost{color:var(--hud-acc)}.slot.empty{background:0 0;border-bottom-color:#ece8dc1f}.slot.poor .ic{opacity:.35}.slot.poor .cost{color:var(--hud-foe)}.crosshair,.hitmarker{--gap:8px;width:0;height:0;position:absolute;top:50%;left:50%}.crosshair{transition:opacity .12s}.crosshair.hidden{opacity:0}.crosshair i,.hitmarker i{background:var(--crosshair-color,#f0ebdc);position:absolute;box-shadow:0 0 2px #000}.crosshair i{opacity:.9}.crosshair i:first-child,.crosshair i:nth-child(2){width:2px;height:9px;top:-4.5px;left:-1px}.crosshair i:first-child{transform:translateY(calc(-4.5px - var(--gap)))}.crosshair i:nth-child(2){transform:translateY(calc(4.5px + var(--gap)))}.crosshair i:nth-child(3),.crosshair i:nth-child(4){width:9px;height:2px;top:-1px;left:-4.5px}.crosshair i:nth-child(3){transform:translateX(calc(-4.5px - var(--gap)))}.crosshair i:nth-child(4){transform:translateX(calc(4.5px + var(--gap)))}.hitmarker{opacity:0}.hitmarker.show{opacity:1}.hitmarker i{background:#f4f1e8;width:2px;height:9px}.hitmarker i:first-child{transform:translate(-7px,-14px)rotate(-45deg)}.hitmarker i:nth-child(2){transform:translate(6px,-14px)rotate(45deg)}.hitmarker i:nth-child(3){transform:translate(-7px,5px)rotate(45deg)}.hitmarker i:nth-child(4){transform:translate(6px,5px)rotate(-45deg)}.hitmarker.head i{background:var(--hud-acc)}.hitmarker.kill i{background:#e0553a;height:13px}.dmg-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.dmg{opacity:0;font-family:Barlow Semi Condensed,sans-serif;font-weight:600;font-size:calc(18px * var(--hud-scale,1));color:var(--hud-text);text-shadow:0 1px #000,0 0 4px #000c;white-space:nowrap;text-align:center;will-change:transform, opacity;position:absolute;top:0;left:0}.dmg.trap{color:#b8cebb}.dmg.status{color:#eab37c}.dmg small{font-size:calc(10px * var(--hud-scale,1));letter-spacing:.06em;white-space:nowrap;line-height:1.2;display:block}.dmg.combo small{color:var(--hud-acc)}.dmg.head{color:var(--hud-acc);font-size:calc(22px * var(--hud-scale,1))}.dmg.kill{color:#e0553a;font-size:calc(25px * var(--hud-scale,1))}.dmg.label{color:var(--hud-acc);font-size:calc(13px * var(--hud-scale,1));letter-spacing:.12em}.bounty-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.bounty{opacity:0;font-family:Barlow Semi Condensed,sans-serif;font-weight:600;font-size:calc(19px * var(--hud-scale,1));color:var(--hud-acc);text-shadow:0 1px #000,0 0 4px #000c;white-space:nowrap;will-change:transform, opacity;align-items:center;gap:3px;display:flex;position:absolute;top:0;left:0}.bounty svg{filter:drop-shadow(0 1px #000);width:.85em;height:.85em}.hud-banner{text-align:center;opacity:0;background:linear-gradient(90deg,#0000,#0000006b 28% 72%,#0000);padding:14px 0 16px;transition:opacity .4s;position:absolute;top:24%;left:0;right:0}.hud-banner.show{opacity:1}.hud-banner b{letter-spacing:.2em;font-size:clamp(30px,4.6vw,56px);font-weight:600;line-height:1.05;display:block}.hud-banner small{letter-spacing:.04em;max-width:min(760px,60vw);color:var(--hud-dim);margin:8px auto 0;font-size:17px;font-weight:400;line-height:1.4;display:block}.hud-subjects{padding:18px var(--hud-edge) 18px 8vw;opacity:0;pointer-events:none;border-top:1px solid;border-bottom:1px solid;border-image:linear-gradient(270deg, var(--line) 40%, transparent) 1;background:linear-gradient(270deg,#00000080 40%,#0000);flex-direction:column;align-items:flex-end;gap:18px;transition:opacity .5s;display:flex;position:absolute;top:calc(50% - 48px);right:0;transform:translateY(-50%)}.hud-subjects.show{opacity:1}.subject-card{text-align:right;text-shadow:0 1px 6px #000;flex-direction:row-reverse;align-items:center;gap:18px;max-width:min(480px,38vw);display:flex}.subject-card img{border-bottom:2px solid var(--brass);background:radial-gradient(circle at 50% 60%,#f0ebdc1f,#0000 70%);flex:none;width:clamp(110px,12vw,160px);height:clamp(110px,12vw,160px)}.subject-card.boss img{border-bottom-color:var(--foe)}.subject-kicker{letter-spacing:.24em;text-transform:uppercase;color:var(--brass);font-size:12px;font-weight:500;display:block}.subject-card.boss .subject-kicker{color:var(--foe)}.subject-card b{letter-spacing:.14em;text-transform:uppercase;margin:2px 0 6px;font-size:clamp(26px,3vw,38px);font-weight:500;line-height:1.05;display:block}.subject-card p{letter-spacing:.02em;color:var(--hud-dim);margin:0;font-size:15px;line-height:1.4}.hud-subjects:has(>:nth-child(3)){gap:12px;padding-block:14px}.hud-subjects:has(>:nth-child(3)) .subject-card{gap:14px;max-width:min(420px,32vw)}.hud-subjects:has(>:nth-child(3)) .subject-card img{width:clamp(80px,7vw,100px);height:clamp(80px,7vw,100px)}.hud-subjects:has(>:nth-child(3)) .subject-card b{margin:1px 0 3px;font-size:clamp(20px,2vw,26px)}.hud-subjects:has(>:nth-child(3)) .subject-card p{font-size:13.5px;line-height:1.35}.hud-down{text-align:center;letter-spacing:.12em;text-shadow:0 2px 8px #000;background:linear-gradient(#0000 30%,#0a0d0f40 55%,#0a0d0fd9);justify-content:center;align-items:flex-end;padding:0 20px clamp(130px,18vh,190px);font-weight:400;display:none;position:absolute;inset:0}.hud-down.show{display:flex}.hud-death-content{width:min(540px,100%)}.hud-death-recap{width:min(540px,100% - 40px);position:absolute;top:clamp(145px,20vh,200px);left:50%;transform:translate(-50%)}.hud-death-recap .ui-label{color:var(--foe);justify-content:center}.hud-death-recap .ui-label:before{content:"";background:var(--line);flex:1;height:1px}.hud-death-recap strong{letter-spacing:.08em;text-transform:uppercase;font-size:clamp(28px,4vh,40px);font-weight:500;display:block}.hud-death-stats{color:var(--dim);letter-spacing:.08em;justify-content:center;gap:26px;padding-top:12px;font-size:11px;display:flex}.hud-death-stats b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:28px;font-weight:300;line-height:1.1;display:block}.hud-death-status{letter-spacing:.2em;font-size:20px}.hud-down small{letter-spacing:.05em;color:var(--hud-dim);margin-top:6px;font-size:17px;font-weight:400;display:block}.hud-down-bar{background:var(--hud-faint);width:280px;height:4px;margin:14px auto 10px;display:block;position:relative}.hud-down-bar:after{content:"";background:var(--hud-acc);transform:scaleX(var(--fill,0));transform-origin:0;position:absolute;inset:0}.hud-compact .hud-minimap{width:140px;height:140px}.hud-compact .hud-me{width:200px}.hud-compact .hud-soldier em{display:none}.hud-compact .hud-squad{font-size:13px}.hud-compact .squad-hp,.hud-compact .squad-row em{width:50px}.hud-compact .hud-health b{width:56px;font-size:40px}.hud-compact .hud-br{width:280px}.hud-compact .hud-ammo b{font-size:68px}.hud-compact .hud-ammo{min-height:54px}.hud-compact .perk-detail{display:none}.hud-compact .slot{width:60px}.hud-stacked .hud-bl,.hud-stacked .hud-br{bottom:calc(var(--hud-edge) + 92px * var(--hud-scale,1))}.hud-stacked .hotbar{flex-wrap:wrap;justify-content:center}.hud-stacked .hud-bottom{max-width:calc(100% / var(--hud-scale,1) - 24px);width:max-content}@media (width<=1000px){.hud{--hud-edge:16px}.hud-tickets{gap:14px;width:520px}.hud-ticket small{display:none}.hud-ticket .hud-bar{width:90px}.hud-minimap{width:150px;height:150px}.hud-me{width:230px}.hud-br{width:280px}.perk-detail{display:none}}@media (width<=600px){.hud-top{top:24px}.hud-compass{display:none}.hud-tickets{width:340px;margin-top:0}.hud-ticket{font-size:20px}.hud-ticket .hud-bar{display:none}.hud-minimap{width:110px;height:110px}.hud-squad,.perk-passive{display:none}.hud-me{width:150px}.hud-health b{width:44px;font-size:32px}.hud-br{width:200px}.hud-ammo b{font-size:54px}.hud-ammo{min-height:44px}.slot{width:46px;height:48px}.slot .ic{width:20px;height:20px}.slot .ic.wide{width:34px;height:17px}.slot .cost{max-width:42px;font-size:10px}.hud-trapinfo,.hud-prompt{padding:4px 20px;font-size:12px}}.overlay.model-loading{z-index:20;background:#060605}.overlay.model-loading .ui-label{width:min(360px,100%)}.emote-wheel{z-index:12;pointer-events:none;color:var(--ink);text-shadow:0 2px 5px #000;background:radial-gradient(circle,#080b0bcc,#0000 65%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.emote-wheel[hidden]{display:none}.emote-wheel>svg{width:min(440px,80vw,72vh);overflow:visible}.emote-wheel text{fill:currentColor;text-anchor:middle;font:16px var(--f-ui);text-transform:uppercase;letter-spacing:1px}.emote-wheel .emote-label{letter-spacing:.5px;font-size:14px}.emote-sector{fill:#10141070;stroke:var(--line);stroke-width:1px}.emote-wheel .selected .emote-sector{fill:#bda77733;stroke:var(--brass);stroke-width:2px}.emote-wheel .selected{color:var(--brass)}.emote-wheel .emote-cursor{fill:var(--ink);stroke:#101410;stroke-width:1.5px}.emote-wheel .key-hints{color:var(--ink);margin-top:12px}:is(.hud:has(.emote-wheel:not([hidden]))>.crosshair,.hud:has(.emote-wheel:not([hidden]))>.hud-banner,.hud:has(.emote-wheel:not([hidden]))>.hud-subjects){visibility:hidden}.staging-room{--lobby-gap:16px;--operation-gap:28px;gap:var(--lobby-gap);background:linear-gradient(90deg,#07100bd6,#07100b98 50%,#07100bcc),url(/assets/nachtfalke-radio-room-CQjjt3Gg.png) 50%/cover;grid-template-rows:60px minmax(0,1fr) 60px;padding:20px 4vw;font-weight:400;display:grid;overflow:hidden}.menu .lobby-top{border-bottom:1px solid var(--line);text-align:left;justify-content:space-between;align-items:flex-end;gap:24px;min-width:0;margin:0;padding:0;display:flex}.lobby-brand{letter-spacing:.32em;text-transform:uppercase;color:var(--dim);margin-bottom:9px;font-size:11px;font-weight:400}.lobby-tabs{gap:32px;display:flex}.lobby-tab{letter-spacing:.18em;color:var(--dim);background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1px;padding:0 0 12px;font-size:19px;font-weight:500}.lobby-tab:hover:not(:disabled),.lobby-tab:focus-visible{color:var(--ink);border-color:#0000;border-bottom-color:var(--line);background:0 0;outline:none}.lobby-tab[aria-current=page],.lobby-tab[aria-current=page]:hover{color:var(--ink);border-bottom-color:var(--brass);cursor:default}.staging-tools{align-items:center;gap:24px;padding-bottom:10px;display:flex}.lobby-balance{border-left:1px solid var(--line);flex:none;padding-left:24px}.lobby-balance>div{align-items:center;gap:9px;display:flex}.lobby-balance .ic{width:26px;height:26px;color:var(--brass)}.lobby-balance-value{font-variant-numeric:tabular-nums;color:var(--ink);font-size:32px;font-weight:400;line-height:1}.lobby-balance.unlimited .lobby-balance-value{font-size:25px}.lobby-balance-label{letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin-top:5px;font-size:10px;display:block}.room-tag{align-items:center;gap:16px;display:flex}.room-tag>span,.session-tag{letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:13px}.room-tag b{font:600 22px var(--f-ui);letter-spacing:.12em;color:var(--brass)}.room-tag button{border:0;border-bottom:1px solid var(--line);padding:6px 0;font-size:13px}.account-tag{letter-spacing:.16em;max-width:220px;color:var(--dim);border:0;border-bottom:1px solid var(--line);background:0 0;flex:none;align-items:center;gap:9px;padding:6px 0;font-size:13px;display:flex}.account-tag[hidden]{display:none}.account-tag .account-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-dot{background:var(--dim);border-radius:50%;flex:none;width:7px;height:7px}.account-tag[data-state=synced] .account-dot{background:var(--good)}.account-tag[data-state=pending] .account-dot,.account-tag[data-state=connecting] .account-dot{background:var(--brass)}.account-tag[data-state=offline] .account-dot,.account-tag[data-state=error] .account-dot{background:var(--bad)}.account-tag.attention{color:var(--brass);border-bottom-color:var(--brass)}.account-tag:hover .account-dot,.account-tag:focus-visible .account-dot{box-shadow:0 0 0 1px var(--ink-dark)}.staging-scroll{min-width:0;min-height:0;overflow-y:auto}.lobby-view{overflow:hidden}.lobby-view[hidden],.armory-view[hidden]{display:none}.staging-layout{gap:var(--lobby-gap);grid-template-rows:minmax(0,1fr) clamp(280px,41vh,370px);height:100%;display:grid}.operation-row{gap:var(--operation-gap);grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) 300px;min-height:0;display:grid}.operation-card{align-items:center;min-width:0;min-height:0;padding-right:20px;display:flex}.operation-sector{letter-spacing:.18em;text-transform:uppercase;color:var(--brass);font-size:11px;font-weight:500}.operation-name{font:500 clamp(20px, 2.1vw, 30px)/1 var(--f-ui);letter-spacing:.01em;text-transform:uppercase;overflow-wrap:anywhere;grid-column:1;margin:0}.operation-objective{color:var(--ink);font-size:16px;line-height:1.25}.operation-description{color:var(--dim);font-size:18px;line-height:1.5}.operation-facts{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:5px;font-size:11px;display:flex}.operation-facts b{color:var(--ink)}.operation-facts .stars{letter-spacing:.05em;font-size:10px}.operation-actions{flex-direction:column;gap:8px;width:100%;display:flex}.operation-actions .menu-row{letter-spacing:.1em;min-height:44px;padding:0 10px;font-size:20px;font-weight:500}.operation-actions .menu-row:after{border-width:1px;width:6px;height:6px}button.operation-briefing{border:1px solid var(--brass);letter-spacing:.06em;min-height:34px;color:var(--brass);background:#d9b66a0c;grid-area:1/2/3;place-self:center end;margin:0;padding:8px 10px;font-size:12px;font-weight:500}button.operation-briefing:hover,button.operation-briefing:focus-visible{color:var(--ink-dark)}.operation-plan{grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr) 100px;gap:8px 16px;min-width:0;min-height:0;display:grid}.operation-summary{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;display:grid}.operation-summary .operation-facts{gap:6px 12px;margin:0;font-size:10px}.map-blueprint{border:1px solid var(--line);background:#00000059;min-width:0;padding:10px}.map-blueprint svg{width:100%;max-height:170px;display:block}.operation-plan>.map-blueprint{background:0 0;border:0;grid-area:2/1/4;height:100%;min-height:0;padding:0}.operation-plan>.map-blueprint svg{width:100%;height:100%;max-height:100%}.floor-selector{border-left:1px solid var(--line);flex-direction:column;grid-area:2/2;align-self:start;gap:3px;padding-left:6px;display:flex}.floor-selector[hidden]{display:none}.floor-selector button{letter-spacing:.02em;text-transform:none;text-align:left;border:0;border-bottom:2px solid #0000;min-height:24px;padding:4px 5px;font-size:11px;font-weight:400}.floor-selector button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--brass);background:#d9b66a12}.plan-key{grid-area:3/2;align-self:end;padding:0 0 6px 6px}.plan-key>span{text-transform:uppercase;letter-spacing:.15em;color:var(--dim);margin-bottom:8px;font-size:10px;display:none}.game-options{border-top:1px solid var(--line);flex-wrap:wrap;grid-area:4/1/auto/-1;align-items:center;gap:8px 18px;padding-top:8px;display:flex}.game-options-label{letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:11px;font-weight:500}.game-option{font:500 15px/1 var(--f-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);border:1px solid var(--line);align-items:center;gap:14px;padding:7px 12px;display:inline-flex}button.game-option{background:#00000059}.game-option b{color:var(--dim);font-weight:600}.game-option.on{border-color:var(--foe);background:#00000059}.game-option.on b{color:var(--foe)}button.game-option:hover:not(:disabled) b,button.game-option:focus-visible b{color:var(--ink-dark)}.map-legend{color:var(--dim);flex-direction:column;gap:6px;font-size:10px;display:flex}.map-legend i{width:6px;height:6px;margin-right:5px;display:inline-block}.legend-objective{background:var(--brass)}.legend-breach{background:#cc6549}.legend-squad{background:var(--ink)}.squad-panel{min-width:0;min-height:0;position:relative}.squad-panel>.ui-label{z-index:1;letter-spacing:.24em;pointer-events:none;gap:10px;margin:0;font-size:11px;position:absolute;top:0;left:0}.squad-panel>.ui-label:after{display:none}.squad-panel>.ui-label b{font-weight:400}.squad-count:before{content:"/";margin-right:10px}.squad-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;height:100%;display:grid}.squad-slot{border-bottom:1px solid var(--line);min-width:0;min-height:0;position:relative}.squad-slot:before{content:"";border-top:1px solid var(--line);pointer-events:none;background:linear-gradient(#0a100d20,#0a100dc9);position:absolute;inset:55px 0 0}.squad-slot.me{border-bottom:2px solid var(--brass)}.squad-slot .soldier-stage{pointer-events:none;background:radial-gradient(at 50% 90%,#b9a87112,#0000 60%);border:0;width:auto;height:auto;position:absolute;inset:0 0 98px}.squad-slot .soldier-stage canvas{-webkit-mask-image:linear-gradient(#000 85%,#0000);mask-image:linear-gradient(#000 85%,#0000)}.squad-slot .soldier-portrait{background:0 0;border:0;width:100%;height:100%}.squad-slot .portrait-flag{display:none}.squad-caption{flex-direction:column;justify-content:space-between;height:39px;display:flex;position:absolute;bottom:52px;left:8px;right:8px}.squad-identity{align-items:baseline;gap:8px;min-width:0;display:flex}.slot-callsign{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:22px;font-weight:500;line-height:1;overflow:hidden}.squad-identity small{text-transform:uppercase;letter-spacing:.08em;color:var(--brass);flex:none;font-size:9px}.squad-state{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);flex:none;margin-left:auto;font-size:10px}.squad-state.ready{color:var(--good)}.squad-state.incomplete{color:var(--foe)}.squad-role{letter-spacing:.08em;text-transform:uppercase;color:var(--dim);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.change-soldier{color:var(--brass)}button.select-soldier{background:0 0;border:0;padding:0;position:absolute;inset:0 0 50px}button.select-soldier:hover,button.select-soldier:focus-visible{background:linear-gradient(#0000 30%,#ece8dc0d)}.squad-slot .squad-kit,.squad-traps{height:40px;position:absolute;bottom:7px;left:8px;right:8px}.squad-kit .kit-traps,.squad-traps{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;display:grid}.squad-kit .kit-trap,.squad-trap{justify-content:center;align-items:center;min-width:0;height:40px;min-height:0;padding:8px 3px 3px;display:flex;position:relative}.squad-kit .kit-trap{border:1px solid var(--line);background:#ece8dc05}.squad-kit .kit-trap:hover,.squad-kit .kit-trap:focus-visible{background:var(--ink);color:var(--ink-dark)}.squad-kit .kit-name,.squad-kit .kit-rank,.squad-kit .kit-cost,.squad-kit .kit-xp,.squad-kit .kit-trait{display:none}.squad-kit .kit-icon{place-items:center;width:100%;height:100%;display:grid}.squad-kit .kit-icon .ic,.squad-trap>.ic{width:23px;height:23px}.squad-kit .kit-number,.squad-trap .kit-number{color:var(--dim);font-size:9px;line-height:1;position:absolute;top:1px;left:3px}.squad-kit .kit-trap:hover .kit-number,.squad-kit .kit-trap:focus-visible .kit-number{color:inherit}.squad-trap{color:var(--dim)}.squad-trap.empty>.ic{opacity:.35;width:13px;height:13px}.squad-slot [data-tip]:after{content:attr(data-tip);z-index:10;border:1px solid var(--line);width:max-content;max-width:min(240px,70vw);color:var(--ink);font:400 14px/1.3 var(--f-ui);text-transform:none;letter-spacing:0;white-space:normal;pointer-events:none;opacity:0;background:#101610f5;padding:8px 10px;display:none;position:absolute;bottom:calc(100% + 10px);left:0}.squad-slot:last-child [data-tip]:after{left:auto;right:0}.squad-slot [data-tip]:hover:after,.squad-slot [data-tip]:focus-visible:after{opacity:1;display:block}.squad-slot.vacant{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding-top:55px;display:flex}.vacancy-number{color:#ece8dc25;font-size:40px;font-weight:300}.vacancy-label{color:var(--dim);font-size:16px}.vacancy-hint{color:var(--dim);font-size:12px}.squad-slot.vacant>button{z-index:1;padding:8px 14px;font-size:12px}.squad-slot.just-joined{animation:1.6s ease-out squad-join}@keyframes squad-join{0%,30%{background-color:#a9d77f38}to{background-color:#0000}}.lobby-enemy-chips{flex-wrap:wrap;gap:6px;display:flex}.briefing-dialog .briefing-subjects{margin-top:18px;line-height:1.5}.staging-room .deployment-bar{border-top:1px solid var(--line);text-align:left;background:0 0;min-height:0;margin:0;padding:10px 0 0}.deployment-inner{align-items:center;gap:24px;height:100%;display:flex}.deployment-status{text-align:right;min-width:0;max-width:60%;color:var(--dim);margin-left:auto;font-size:12px;line-height:1.3}.deployment-ready{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:3px;font-size:21px;font-weight:600;display:block}.deployment-bar [data-act=back]{border:0;flex:none;padding:8px 0;font-size:12px}.deployment-bar [data-act=deploy]{letter-spacing:.2em;flex:none;width:222px;min-height:48px;padding:0 18px;font-size:21px;font-weight:400}@media (height>=850px) and (width>=1181px){.staging-room{--lobby-gap:24px;--operation-gap:36px;grid-template-rows:70px minmax(0,1fr) 72px;padding-top:30px;padding-bottom:30px}.staging-layout{grid-template-rows:minmax(0,1fr) clamp(320px,41vh,400px)}.operation-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) 360px}.operation-name{font-size:32px}.operation-actions .menu-row{min-height:52px;font-size:24px}.operation-objective{font-size:21px}.operation-plan{grid-template-columns:minmax(0,1fr) 115px;column-gap:20px}.floor-selector button{min-height:31px;font-size:12px}.map-legend{font-size:11px}.slot-callsign{font-size:26px}.squad-role{font-size:12px}.squad-slot:before{top:65px}}@media (width<=1180px) and (width>=761px){.staging-room{--operation-gap:18px;padding-left:3vw;padding-right:3vw}.operation-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) 230px}.operation-plan{grid-template-columns:minmax(0,1fr) 74px;column-gap:8px}.squad-grid{gap:12px}.squad-identity{flex-wrap:wrap;gap:4px}.slot-callsign{font-size:18px}.squad-role{font-size:9px}}@media (width<=760px){.staging-room{--lobby-gap:10px;--operation-gap:12px;grid-template-rows:100px minmax(0,1fr) 74px;padding:12px}.menu .lobby-top{flex-wrap:wrap;align-items:flex-start;gap:8px}.lobby-brand{display:none}.lobby-tabs{gap:22px}.lobby-tab{padding-bottom:8px;font-size:15px}.staging-tools{justify-content:space-between;gap:12px;width:100%;padding-bottom:6px}.lobby-balance{padding-left:12px}.lobby-balance-value{font-size:26px}.lobby-balance.unlimited .lobby-balance-value{font-size:20px}.lobby-balance-label{letter-spacing:.08em;font-size:8px}.lobby-balance .ic{width:21px;height:21px}.room-tag{gap:12px}.room-tag b{font-size:17px}.room-tag button,.room-tag>span{font-size:11px}.staging-layout{grid-template-rows:minmax(0,1fr) minmax(210px,.95fr)}.operation-row{grid-template-rows:minmax(0,1fr) 90px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.operation-card{grid-column:1;padding-right:0}.operation-sector{letter-spacing:.08em;font-size:8px}.operation-name{font-size:16px}.operation-summary{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.operation-summary .operation-facts{gap:3px 6px;font-size:8px}.operation-objective{font-size:12px}.operation-facts{gap:3px 8px;margin-top:3px;font-size:8px}.operation-actions{gap:8px}.operation-actions .menu-row{letter-spacing:.04em;min-height:34px;padding:0 4px;font-size:13px}button.operation-briefing{letter-spacing:0;align-self:stretch;min-height:26px;margin-top:3px;padding:5px 6px;font-size:9px}.operation-plan{grid-template-rows:auto minmax(0,1fr) auto auto auto;grid-template-columns:minmax(0,1fr);gap:4px}.operation-plan>.map-blueprint{grid-area:2/1}.floor-selector{border:0;flex-flow:wrap;grid-area:3/1;gap:2px;padding:0}.floor-selector button{min-height:20px;padding:3px;font-size:9px}.plan-key{grid-area:4/1;padding:0}.game-options{grid-area:5/1;gap:4px 10px;padding-top:4px}.game-option{padding:5px 8px;font-size:12px}.plan-key>span{display:none}.map-legend{flex-flow:wrap;gap:3px 5px;font-size:8px}.map-legend i{width:4px;height:4px;margin-right:3px}.squad-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:16px}.squad-panel>.ui-label{font-size:8px}.squad-slot:before{top:14px}.squad-slot .soldier-stage{bottom:46px}.squad-caption{height:23px;bottom:24px;left:3px;right:3px}.slot-callsign{font-size:13px}.squad-identity{gap:3px}.squad-identity small,.squad-state{letter-spacing:0;font-size:6px}.squad-role{letter-spacing:0;font-size:7px}button.select-soldier{bottom:23px}.squad-slot .squad-kit,.squad-traps{height:21px;bottom:1px;left:3px;right:3px}.squad-kit .kit-traps,.squad-traps{gap:2px}.squad-kit .kit-trap,.squad-trap{height:21px;padding:5px 0 0}.squad-kit .kit-icon .ic,.squad-trap>.ic{width:13px;height:13px}.squad-kit .kit-number,.squad-trap .kit-number{font-size:6px;left:1px}.squad-slot.vacant{gap:4px;padding-top:14px}.vacancy-number{font-size:18px}.vacancy-label{font-size:11px}.squad-slot.vacant>button{padding:4px 6px;font-size:10px}.deployment-inner{flex-wrap:wrap;gap:5px 12px}.deployment-status{text-align:left;flex:1 0 100%;order:-1;max-width:none;font-size:9px}.deployment-ready{margin-bottom:0;font-size:12px}.deployment-bar [data-act=deploy]{width:130px;min-height:30px;margin-left:auto;font-size:14px}.deployment-bar [data-act=back]{font-size:10px}}@media (width<=360px){.staging-layout{grid-template-rows:minmax(0,1.1fr) minmax(210px,.85fr)}}.opening-cinematic{background:#050706;outline:none;position:absolute;inset:0}.mission-waiting-hud{visibility:hidden}.mission-wait{z-index:15;pointer-events:none;color:var(--ink);text-shadow:0 2px 8px #000;background:linear-gradient(#05070699,#0000 60%,#050706bb);position:absolute;inset:0}.mission-wait-status{width:min(480px,86vw);margin:8vh auto 0}.mission-wait h2{margin:20px 0 8px;font-size:clamp(24px,3vw,36px);font-weight:400}.mission-wait p{color:var(--dim)}.mission-wait ul{margin-top:26px;padding:0;list-style:none}.mission-wait li{border-bottom:1px solid var(--line);justify-content:space-between;gap:24px;padding:9px 0;display:flex}.mission-wait li>:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mission-wait li>:last-child{color:var(--dim);flex-shrink:0}.mission-wait li>.mission-arrived{color:var(--brass)}.mission-wait footer{border-top:1px solid var(--line);align-items:center;gap:16px;padding-top:16px;display:flex;position:absolute;inset:auto 3vw 24px}.mission-wait footer>span{color:var(--dim);flex:1}.mission-wait button{pointer-events:auto;text-shadow:none}.opening-cinematic video{object-fit:contain;width:100%;height:100%;display:block}.opening-cinematic video::cue{font-family:var(--f-ui);color:#f1eee5;background:#050706a6;font-size:clamp(16px,2.05vw,39px);font-weight:400}.cinematic-heading{pointer-events:none;background:linear-gradient(#05070699,#0000);padding:24px 3vw 44px;position:absolute;top:0;left:0;right:0}.cinematic-start{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.cinematic-start[hidden]{display:none}.cinematic-start button{pointer-events:auto}.cinematic-status{text-align:center;text-shadow:0 2px 8px #000;position:absolute;top:62%;left:5%;right:5%}.cinematic-controls{background:linear-gradient(#0000,#050706cc);gap:8px;padding:28px 3vw 18px;display:flex;position:absolute;bottom:0;left:0;right:0}.cinematic-controls button{text-shadow:0 2px 8px #000;background:0 0;border-color:#0000}.cinematic-controls button:hover,.cinematic-controls button:focus-visible{text-shadow:none}.cinematic-controls button[aria-pressed=true]{border-bottom-color:var(--brass)}.cinematic-controls [data-intro=skip]{margin-left:auto}.cinematic-controls kbd,.cinematic-start kbd{border:1px solid var(--line);font:inherit;margin-left:12px;padding:2px 4px}@media (width<=600px){.cinematic-heading{padding:16px 4vw 32px}.cinematic-controls{flex-wrap:wrap;gap:4px;padding:20px 3vw 12px}.cinematic-controls button{padding:10px 8px;font-size:12px}.cinematic-controls kbd{display:none}}.lobby-qr-button{place-items:center;width:40px;padding:0;display:inline-grid}.lobby-qr-button .ic{width:20px;height:20px}.qr-dialog{width:min(560px,92vw)}.qr-body{align-items:center;gap:24px;padding-top:8px;display:flex}.qr-body .qr{flex:none;width:min(240px,60vh);height:auto}.qr-body p{color:var(--muted);margin:0 0 10px;line-height:1.4}.qr-link{color:var(--dim);word-break:break-all;font-size:13px}.dev-cheats{z-index:150;color:var(--ink);font-family:var(--f-ui);background:linear-gradient(110deg,#080d10fa,#080d10eb);padding:clamp(18px,4vw,60px);position:absolute;inset:0;overflow:auto}.dev-cheats header,.dev-cheats footer{justify-content:space-between;align-items:center;gap:20px;display:flex}.dev-cheats h2{text-transform:uppercase;letter-spacing:.08em;margin:8px 0;font-size:40px;font-weight:300}.dev-cheats p{color:var(--dim);margin:10px 0;font-size:15px;line-height:1.45}.dev-cheats .dev-cheat-live{color:var(--brass);letter-spacing:.06em}.dev-cheat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px;margin:26px 0;display:grid}.dev-cheat-grid section{border-top:1px solid var(--line);padding-top:12px}.dev-cheats h3{margin:0 0 16px}.dev-cheats label{justify-content:space-between;align-items:center;gap:12px;margin:10px 0;font-size:17px;display:flex}.dev-cheats input[type=number],.dev-cheats select{color:var(--ink);font:inherit;border:1px solid var(--line);background:#172125;border-radius:0;padding:7px 10px}.dev-cheats input[type=number]{width:100px}.dev-cheats input[type=checkbox]{accent-color:var(--brass);width:18px;height:18px}.dev-cheats .dev-cheat-toggle{justify-content:flex-start}.dev-cheat-actions{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.dev-cheats button{padding:10px 14px;font-size:14px}.dev-cheats button:hover,.dev-cheats button:focus-visible{background:var(--ink);color:var(--ink-dark)}.dev-cheats footer{border-top:1px solid var(--line);padding-top:12px}.dev-cheats .dev-cheat-result{color:var(--brass)}.dev-cheats .dev-cheat-result.error{color:var(--foe)}@media (width<=750px){.dev-cheat-grid{grid-template-columns:1fr}.dev-cheats header,.dev-cheats footer{flex-direction:column;align-items:flex-start}}:root{--safe-l:max(env(safe-area-inset-left,0px), var(--sim-safe-left,0px));--safe-r:max(env(safe-area-inset-right,0px), var(--sim-safe-right,0px));--safe-b:max(env(safe-area-inset-bottom,0px), var(--sim-safe-bottom,0px));--compact-pad:16px}.lobby-chat-toggle,.lobby-chat-close,.briefing-compact,.kit-again,.arm-row-again,.rotate-prompt,.settings-rail nav button[hidden],body.input-touch .key-hints,body.input-touch .arm-back kbd{display:none}button.kit-trap[data-drag]{cursor:grab;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.squad-slot [data-tip].tip-shown:after{opacity:1;display:block}.arm-kit button.kit-trap.tapped{border-color:var(--brass);background:#d9b66a29}.arm-kit button.kit-trap.tapped .kit-again{letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-size:10px;font-weight:600;display:block}.arm-kit button.kit-trap.tapped .kit-line{display:none}button.arm-row.tapped .arm-row-again{white-space:nowrap;letter-spacing:.14em;text-transform:uppercase;justify-self:end;font-size:11px;font-weight:600;display:inline}button.arm-row.tapped>:is(.arm-row-tag,.arm-row-cost){display:none}@media (height<=520px){.title-screen .menu-inner{padding:14px calc(var(--compact-pad) + var(--safe-r)) calc(56px + var(--safe-b)) calc(var(--compact-pad) + var(--safe-l));justify-content:flex-start}.title-screen header{margin-bottom:12px}.title-screen .menu-kicker{font-size:11px}.title-screen h1{margin-top:10px;font-size:44px}.title-menu{width:min(380px,100%)}.title-menu .menu-row{min-height:46px;padding:0 14px;font-size:16px}.menu-desc,.title-screen .menu-notice:empty{display:none}.title-screen .menu-notice{margin-top:6px}.title-foot{left:calc(var(--compact-pad) + var(--safe-l));right:calc(var(--compact-pad) + var(--safe-r));bottom:var(--safe-b);height:56px}.dev-toggle{min-height:44px}.title-callsign{font-size:12px}.staging-room{--lobby-gap:0px;padding:0 calc(var(--compact-pad) + var(--safe-r)) var(--safe-b) calc(var(--compact-pad) + var(--safe-l));grid-template-rows:48px minmax(0,1fr) 56px}.menu .lobby-top{flex-wrap:nowrap;align-items:stretch;gap:12px}.menu .lobby-top>div:first-child{align-items:stretch;display:flex}.lobby-brand,.lobby-balance,.room-tag button{display:none}.lobby-tabs{gap:20px}.lobby-tab{align-items:center;min-height:47px;padding:3px 0 0;font-size:15px;display:flex}.staging-tools{justify-content:flex-end;gap:14px;width:auto;padding:0}.room-tag{gap:8px}.room-tag>span,.session-tag{font-size:11px}.room-tag b{letter-spacing:.12em;font-size:16px}.lobby-chat-toggle{place-items:center;width:44px;height:44px;padding:0;display:grid;position:relative}.lobby-chat-toggle .ic{width:22px;height:22px}.lobby-chat-unread{min-width:18px;height:18px;font:700 11px/1 var(--f-ui);letter-spacing:0;color:var(--ink-dark);background:var(--brass);place-items:center;padding:0 4px;display:grid;position:absolute;top:-4px;right:-4px}.lobby-chat-unread[hidden]{display:none}.staging-room .deployment-bar{padding:0}.deployment-inner{flex-wrap:nowrap;gap:14px}.deployment-bar [data-act=back]{min-height:44px;padding:0 4px;font-size:12px}.deployment-status{flex:auto;order:0;max-width:none;font-size:11px;line-height:1.25;overflow:hidden}.deployment-ready{margin-bottom:1px;font-size:15px}.deployment-message{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.deployment-bar [data-act=deploy]{letter-spacing:.24em;width:auto;min-width:150px;min-height:44px;margin:0;padding:0 26px;font-size:16px}.squad-toasts{top:56px;right:calc(var(--compact-pad) + var(--safe-r))}.squad-toast{padding:6px 12px;font-size:13px}.staging-layout{grid-template:"summary squad""actions squad"minmax(0,1fr)/minmax(0,1fr) minmax(0,1.32fr);column-gap:20px}.operation-row,.operation-plan{display:contents}.operation-summary{grid-area:summary;grid-template-columns:minmax(0,1fr);align-items:start;gap:4px;padding-top:8px;display:grid}.operation-name{font-size:18px;line-height:1.1}.operation-summary .operation-facts{font-size:11px}button.operation-briefing{letter-spacing:.1em;grid-area:auto/1;justify-self:start;min-height:44px;margin-top:4px;padding:0 12px;font-size:12px}.operation-card{grid-area:actions;align-items:flex-start;padding:8px 0 0}.operation-actions{gap:0}.operation-actions .menu-row{letter-spacing:.1em;min-height:46px;padding:0 10px;font-size:15px}.operation-plan>.map-blueprint,.floor-selector,.plan-key,.operation-plan>.game-options{display:none}.squad-panel{border-left:1px solid var(--line);grid-area:squad;padding-left:14px}.squad-panel>.ui-label{display:none}.squad-grid{grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:minmax(0,1fr);gap:0;padding:0}.squad-slot{border-bottom:1px solid var(--line);grid-template-columns:46px minmax(0,1fr) auto;align-items:center;column-gap:10px;min-height:0;padding:0;display:grid}.squad-slot:before{display:none}.squad-slot.me{border-bottom:1px solid var(--line)}.squad-slot .soldier-stage{border:1px solid var(--line);background:#1d1f1a;grid-area:1/1;width:46px;height:46px;position:relative;inset:auto;overflow:hidden}.squad-slot.me .soldier-stage{border-color:var(--brass)}.squad-slot .soldier-portrait .portrait-art{object-fit:cover;object-position:50% 18%}.squad-caption{grid-area:1/2;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 8px;min-width:0;height:auto;display:grid;position:static}.squad-identity{display:contents}.slot-callsign{grid-area:1/1/auto/-1;font-size:15px}.squad-slot.me .slot-callsign{color:var(--brass-hi)}.squad-identity small{display:none}.squad-state{grid-area:2/2;margin:0;font-size:10px}.squad-role{letter-spacing:.08em;white-space:nowrap;grid-area:2/1;min-width:0;font-size:10px;overflow:hidden}.change-soldier{display:none}button.select-soldier{inset:0 216px 0 0}.squad-slot .squad-kit,.squad-traps{grid-area:1/3;height:44px;position:static}.squad-kit .kit-traps,.squad-traps{grid-template-columns:repeat(6,32px);gap:3px;height:100%}.squad-kit .kit-trap,.squad-trap{height:44px;padding:8px 0 0}.squad-kit .kit-icon .ic,.squad-trap>.ic{width:18px;height:18px}.squad-kit .kit-number,.squad-trap .kit-number{font-size:9px}.squad-slot [data-tip]:after{font-size:13px;inset:calc(100% + 4px) 0 auto auto}.squad-slot:nth-child(n+3) [data-tip]:after{top:auto;bottom:calc(100% + 4px)}.squad-slot.vacant{flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;padding:0;display:flex}.vacancy-number{text-align:center;width:46px;color:var(--dim);font-size:16px}.vacancy-label{font-size:14px}.squad-slot.vacant>button,.squad-slot.vacant>.vacancy-hint{margin-left:auto}.squad-slot.vacant>button{min-height:44px;padding:0 14px;font-size:12px}.lobby-chat-panel{z-index:20;width:min(360px,62vw);padding:8px calc(14px + var(--safe-r)) calc(8px + var(--safe-b)) 16px;border-left:1px solid var(--line-hi,var(--line));visibility:hidden;background:#121410;transition:transform .2s ease-out,visibility 0s .2s;position:fixed;top:0;bottom:0;right:0;transform:translate(105%);box-shadow:-20px 0 60px #000a}.lobby-chat-panel:before{display:none}.staging-room.chat-open .lobby-chat-panel{visibility:visible;transition:transform .2s ease-out;transform:none}.lobby-chat-panel>.ui-label{min-height:44px;margin:0 52px 0 0;font-size:11px}.lobby-chat-close{top:8px;right:calc(8px + var(--safe-r));border:0;place-items:center;width:44px;height:44px;padding:0;font-size:16px;display:grid;position:absolute}.lobby-chat-entry{order:-1;height:46px;margin-bottom:8px}.lobby-chat-entry input,.lobby-chat-entry input:focus-visible{height:100%;font-size:16px}.lobby-chat-entry button{width:44px;height:44px}.lobby-chat-log{font-size:14px}.armory-tab:not([hidden]){padding:0}.arm-kit-view{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:0 20px;display:grid}.arm-kit-view>.ui-label{display:none}.arm-kit{grid-column:1;min-height:0}.arm-kit .kit-traps{grid-template-rows:repeat(6,minmax(44px,1fr));grid-template-columns:minmax(0,1fr);gap:0;height:100%}.arm-kit button.kit-trap{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;grid-template-rows:1fr;grid-template-columns:16px 24px minmax(0,1fr) auto;place-items:center start;gap:8px;min-height:44px;padding:0 10px;display:grid}.arm-kit .kit-trap .kit-number{grid-column:1;position:static}.arm-kit .kit-trap .kit-icon{grid-column:2;height:auto}.arm-kit .kit-trap .kit-icon .ic{width:22px;height:22px}.arm-kit .kit-trap .kit-name{grid-column:3;font-size:15px}.arm-kit .kit-trap .kit-rank{display:none}.arm-kit .kit-trap .kit-cost,.arm-kit .kit-trap .kit-again{grid-area:1/4;justify-self:end}.arm-kit .kit-trap .kit-trait{grid-area:1/2;place-self:start end;margin:6px -6px 0 0;position:static}.arm-kit button.kit-trap.target{box-shadow:inset 2px 0 var(--brass);background:#d9b66a24}.arm-kit button.kit-trap.tapped .kit-cost{display:none}.arm-kit button.kit-trap.dragging{z-index:2;opacity:.85;background:var(--ink);color:var(--ink-dark);position:relative}.arm-focus{overscroll-behavior:contain;grid-column:2;grid-template-rows:max-content max-content;grid-template-columns:88px minmax(0,1fr);align-content:start;gap:10px 14px;padding:6px 2px 8px 0;display:grid;overflow-y:auto}.arm-focus .arm-model-slot{grid-area:1/1/span 2;align-self:start}.arm-model{flex:none;width:88px;height:88px;min-height:0}.arm-info,.arm-rank-col{overflow:visible}.arm-focus .arm-info{grid-area:1/2}.arm-focus .arm-rank-col{grid-area:2/2}.arm-specs{font-size:10px}.arm-name{margin:3px 0 4px;font-size:20px}.arm-desc{margin-bottom:8px;font-size:13px}.arm-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 10px}.arm-stats>div{padding-bottom:3px}.arm-stats dt{font-size:10px}.arm-stats dd{margin-top:1px;font-size:14px}.arm-stats-note{display:none}.arm-rank-col h4.ui-label{margin-bottom:2px;font-size:11px}.arm-track{margin:2px 0 4px}.arm-node{width:20px;height:20px;font-size:12px}.arm-mastery{margin-bottom:6px;font-size:10px}button.menu-row.arm-trait{min-height:46px;padding:6px 8px;font-size:14px}.arm-trait small{font-size:12px}.arm-pick-view{gap:6px}.armory-tab .arm-pick-head{gap:12px;padding:8px 0 6px}.arm-pick-title{font-size:15px}.arm-replacing{font-size:12px}.arm-pick-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px}.arm-rows{overscroll-behavior:contain;max-height:none}button.arm-row{min-height:46px;font-size:15px}.arm-pick-detail{overscroll-behavior:contain;gap:8px;padding-bottom:8px;overflow-y:auto}.arm-pick-top{flex:none;grid-template-columns:88px minmax(0,1fr);align-items:start;gap:14px}.arm-pick-top .arm-info{overflow:visible}.arm-compare{gap:4px 18px;padding-top:6px;font-size:13px}.arm-pick-action{flex-wrap:wrap;gap:8px 12px;min-height:44px}.arm-click{font-size:13px}.arm-pick-action .primary{min-height:44px;font-size:14px}.arm-purchase-balance{font-size:12px}.armory-footer{gap:14px;padding-top:0}.arm-toast{font-size:12px}.arm-back{min-height:44px;padding:0 16px;font-size:12px}dialog.lobby-dialog,dialog.lobby-dialog[open]{width:auto;max-width:none;height:auto;max-height:none;padding:4px calc(var(--compact-pad) + var(--safe-r)) var(--safe-b) calc(var(--compact-pad) + var(--safe-l));box-shadow:none;background:#121410;border:0;margin:0;position:fixed;inset:0}.lobby-dialog .dialog-heading{gap:12px;min-height:48px;padding:0}.lobby-dialog .dialog-heading .menu-kicker{display:none}.lobby-dialog .dialog-heading h2{letter-spacing:.08em;margin:0;font-size:17px}.lobby-dialog .dialog-heading .ghost{min-height:44px;padding:0 16px;font-size:12px}.soldier-dialog[open]{flex-direction:column;display:flex;overflow:hidden}.soldier-tab{gap:8px;min-height:48px;padding:4px 8px}.soldier-face{width:36px;height:36px}.soldier-tab-role{display:none}.soldier-tab-name{font-size:15px}.soldier-tab-state{letter-spacing:.1em;font-size:10px}.soldier-main{flex:1;grid-template-columns:34% minmax(0,1fr);gap:16px;padding:8px 0}.soldier-blurb{font-size:12px;line-height:1.35;bottom:8px;left:10px;right:10px}.soldier-dossier{overscroll-behavior:contain}.soldier-origin{font-size:11px}.soldier-who h3{margin:2px 0 4px;font-size:19px}.soldier-kit{grid-template-columns:32px minmax(0,1fr);gap:10px;padding:6px 0}.soldier-kit-icon .ic{width:26px;height:26px}.soldier-kit-icon .ic.wide{width:32px;height:16px}.soldier-kit-name{font-size:15px}.soldier-kit p{font-size:13px;line-height:1.35}.soldier-facts span{padding:2px 6px;font-size:11px}.soldier-bars{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 14px}.soldier-bar-row{grid-template-columns:58px 1fr 48px;gap:6px;font-size:12px}.soldier-bar-row span{font-size:10px}.soldier-footer{justify-content:flex-end;min-height:56px;padding:0}.soldier-footer button{min-width:150px;min-height:44px;padding:0 20px}.map-dialog[open]{grid-template-rows:auto minmax(0,1fr) auto;gap:0;display:grid;overflow:hidden}.mission-browser{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px;padding-top:4px}.mission-list{overscroll-behavior:contain;padding-right:0}.mission-row.menu-row{gap:10px;min-height:46px;padding:4px 10px;font-size:15px}.mission-index{font-size:13px}.mission-row b{font-size:15px}.mission-row>span:last-child{gap:2px}.mission-row .mission-row-state{font-size:10px}.mission-preview{overscroll-behavior:contain;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) 96px;align-content:start;gap:8px 14px}.mission-dossier{grid-area:1/1}.map-dialog .mission-sector{font-size:10px}.mission-title{margin:2px 0 4px;font-size:20px}.mission-objective{margin-bottom:4px;font-size:13px}.mission-description{-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.mission-facts{margin-top:4px;font-size:10px}.mission-plan{grid-area:1/2}.mission-plan .map-blueprint{flex:none;height:96px}.mission-floor-controls{display:none}.mission-difficulty{grid-area:2/1/auto/-1}.mission-difficulty .ui-label{margin-bottom:4px;font-size:10px}.tier-buttons{gap:8px}.tier-buttons button{min-height:44px;padding:6px 12px}.mission-select-footer{gap:14px;min-height:56px;padding:0}.mission-availability{font-size:12px}.mission-select-footer .primary{min-width:190px;min-height:44px}.briefing-dialog[open]{overscroll-behavior:contain;overflow-y:auto}.briefing-dialog .dialog-heading{z-index:1;background:#121410;position:sticky;top:-4px}.briefing-dialog .operation-objective{margin:8px 0 4px;font-size:14px}.briefing-dialog .operation-description{margin:0 0 8px;font-size:13px;line-height:1.4}.briefing-compact{grid-template-columns:140px minmax(0,1fr);align-items:start;gap:16px;margin:0 0 10px;display:grid}.briefing-compact .map-blueprint{padding:6px}.briefing-compact .game-options{border:0;grid-area:1/2;padding:0}.briefing-compact .game-option{min-height:44px;font-size:13px}.briefing-dialog h3.ui-label{margin:4px 0 8px;font-size:11px}.briefing-dialog .briefing-subjects{margin:8px 0 12px;font-size:13px}.settings-screen{place-items:stretch stretch;padding:0}.settings-window{width:100%;max-height:none;box-shadow:none;padding:0 calc(var(--compact-pad) + var(--safe-r)) var(--safe-b) var(--safe-l);border:0;grid-template-columns:196px minmax(0,1fr);animation:none;position:relative}.settings-rail{padding:6px 12px 8px var(--compact-pad);overscroll-behavior:contain}.settings-rail .menu-kicker,.settings-rail .settings-note{display:none}.settings-rail h2{margin:6px 0;font-size:20px}.settings-callsign{margin-bottom:8px;font-size:11px}.settings-callsign input{min-height:44px}.settings-rail nav{gap:2px}.settings-rail nav button{letter-spacing:.1em;white-space:nowrap;align-items:center;gap:10px;min-height:44px;padding:0 10px;font-size:12px}.settings-actions{z-index:1;right:calc(var(--compact-pad) + var(--safe-r));bottom:var(--safe-b);flex-direction:row;align-items:center;gap:10px;height:56px;margin:0;padding:0;position:absolute}.settings-actions button{text-align:center;width:auto;min-height:44px;padding:0 18px}.settings-head{padding:8px 0 6px 18px}.settings-head .menu-kicker{display:none}.settings-head h3{margin:0;font-size:16px}.settings-content{overscroll-behavior:contain;padding:0 4px 8px 18px}.settings-content>p{margin:6px 0 2px;font-size:13px}.settings-status{align-items:center;min-height:56px;padding:6px 330px 6px 18px;font-size:12px;line-height:1.3;display:flex}.setting-row{min-height:48px;padding:2px 0}.setting-row>label{font-size:14px}.setting-row select{min-height:44px;font-size:14px}.setting-row input[type=range],.setting-row input[type=color]{height:44px}.setting-row>button,.binding-group button{min-height:44px}}body.input-touch .pause-section:has(.pause-controls){display:none}body.input-touch .mission-wait footer>span{visibility:hidden}@media (height<=520px){.overlay.pause{justify-content:stretch;align-items:stretch;padding:0}.pause-menu{width:100%;min-height:0;max-height:none;box-shadow:none;padding:0 var(--safe-r) var(--safe-b) var(--safe-l);border:0;flex:1;grid-template-columns:230px minmax(0,1fr);animation:none;overflow:hidden}.pause-command{overscroll-behavior:contain;min-height:0;padding:8px 14px 8px var(--compact-pad);overflow-y:auto}.pause-command>.menu-kicker{display:none}.overlay .pause-command h2{margin:0 0 2px;font-size:26px}.overlay .pause-status{margin:0 0 8px;font-size:12px;line-height:1.35}.pause-actions{gap:4px;margin-bottom:8px}.pause-actions button{letter-spacing:.1em;min-height:44px;padding:0 12px;font-size:15px}.pause-actions [data-act=quit]{margin-top:4px}.pause-room{flex-flow:wrap;align-items:center;gap:4px 12px;padding-top:8px}.pause-room .menu-kicker{display:none}.pause-room b{font-size:18px}.pause-room button{min-height:44px}.overlay .pause-net-note{flex-basis:100%;font-size:11px;line-height:1.35}.pause-report{overscroll-behavior:contain;min-height:0;overflow-y:auto}.pause-section{padding:10px var(--compact-pad)}.pause-section h3{margin-top:2px;font-size:17px}.pause-stats{gap:8px;margin-top:8px}.pause-stats>div{padding:6px 8px}.pause-stats b{font-size:17px}.scoreboard th,.scoreboard td{padding:5px 8px}.scoreboard td{font-size:16px}.debrief{padding:10px calc(var(--compact-pad) + var(--safe-r)) 14px calc(var(--compact-pad) + var(--safe-l));grid-template-columns:minmax(0,1fr);gap:18px}.overlay .debrief h2{font-size:30px}.overlay .debrief-story{font-size:13px}.overlay .debrief .stars{font-size:26px}.overlay .debrief .stats b{font-size:20px}.debrief .scoreboard td{font-size:15px}.debrief-bar{min-height:calc(56px + var(--safe-b));padding:0 calc(var(--compact-pad) + var(--safe-r)) var(--safe-b) calc(var(--compact-pad) + var(--safe-l))}.debrief-bar button{min-height:44px}.overlay .debrief-bar .session-note{margin:0;font-size:12px}.promotion-row{grid-template-columns:minmax(0,1fr)}.promotion{gap:12px;padding:10px 14px}.promo-icon{width:56px;height:56px}.promo-icon .ic{width:34px;height:34px}.promo-name{font-size:20px}.promo-level>b{font-size:34px}.unlocks li{grid-template-columns:26px minmax(0,1fr) auto}.unlock-kicker{grid-column:2}.trap-xp li{grid-template-columns:20px minmax(0,1fr) 72px auto;gap:10px;font-size:14px}.trap-xp .xp-track{grid-column:1/-1}.h2h-head .score-who b{font-size:17px}.h2h-acc b{font-size:24px}.h2h-traps li{padding:6px 2px 7px;font-size:14px}.mission-wait-status{margin-top:12px}.mission-wait h2{margin:8px 0 4px;font-size:20px}.mission-wait ul{margin-top:10px}.mission-wait li{padding:6px 0;font-size:14px}.mission-wait footer{left:calc(var(--compact-pad) + var(--safe-l));right:calc(var(--compact-pad) + var(--safe-r));bottom:var(--safe-b);min-height:56px;padding:0}.mission-wait button,.overlay.model-loading button{min-height:44px}.overlay.model-loading h2{font-size:28px}}@media (width<=600px) and (orientation:portrait){#app{visibility:hidden}dialog{display:none!important}.rotate-prompt{z-index:1000;text-align:center;color:var(--dim);font:600 14px var(--f-ui);letter-spacing:.2em;text-transform:uppercase;background:#0b0c0a;place-content:center;justify-items:center;gap:14px;padding:24px;display:grid;position:fixed;inset:0}.rotate-prompt svg{width:56px;height:56px;color:var(--brass)}.rotate-prompt p{margin:0}}.touch-controls{pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;--touch-k:1;position:absolute;inset:0}.touch-controls[hidden]{display:none}.touch-controls>*{pointer-events:auto}.touch-look{touch-action:none;position:absolute;inset:0}.touch-stick-zone{touch-action:none;width:42%;position:absolute;bottom:0;left:0}.touch-stick{pointer-events:none;background:#0a0b0938;border:1px solid #ece8dc6b;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.touch-stick.rest{opacity:.45}.touch-stick.sprint{border:2px solid var(--brass)}.touch-knob{background:#ece8dcd9;border-radius:50%;width:44%;height:44%;margin:-22% 0 0 -22%;position:absolute;top:50%;left:50%;box-shadow:0 1px 6px #0009}.touch-sprint-lock{margin-bottom:calc(10px * var(--touch-k));color:#ece8dc99;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.touch-sprint-lock .ic{width:calc(20px * var(--touch-k));height:calc(20px * var(--touch-k))}.touch-stick.sprint .touch-sprint-lock,.touch-stick.locked .touch-sprint-lock{color:var(--brass-hi)}.touch-stick.locked{border-width:3px}.touch-btn{color:var(--ink);touch-action:none;-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0b0966;border:1px solid #ece8dc6b;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.touch-btn[hidden]{display:none}.touch-btn .ic{width:42%;height:42%}.touch-btn .ic.wide{width:62%;height:31%}.touch-btn.pressed,.touch-btn.on{background:var(--ink);color:var(--ink-dark);text-shadow:none}.touch-fire{border:2px solid var(--ink)}.touch-label{font-size:calc(9px * var(--touch-k));letter-spacing:.14em;text-transform:uppercase;color:#ece8dc99;white-space:nowrap;text-shadow:0 1px 2px #000;margin-top:2px;font-weight:600;display:none;position:absolute;top:100%}.touch-controls.labels .touch-label,.touch-ctx .touch-label,.touch-detonate .touch-label{display:block}.touch-badge{font-size:calc(13px * var(--touch-k));text-shadow:0 1px 2px #000;font-weight:600;position:absolute;top:-5px;right:-3px}.touch-grenade.empty{opacity:.4}.touch-charge{pointer-events:none;width:calc(100% + 8px);height:calc(100% + 8px);position:absolute;inset:-4px;transform:rotate(-90deg)}.touch-charge circle{fill:none;stroke:#ece8dc80;stroke-width:3px}.touch-ability.ready .touch-charge circle{stroke:var(--brass)}.touch-ctx{border-color:var(--brass);color:var(--brass-hi)}.touch-ctx .touch-label{color:var(--brass-hi);font-size:calc(10px * var(--touch-k))}.touch-ctx.primary{background:var(--brass);color:var(--ink-dark)}.touch-ctx.disabled{opacity:.45}.touch-hold{pointer-events:none;width:calc(100% + 10px);height:calc(100% + 10px);position:absolute;inset:-5px;transform:rotate(-90deg)}.touch-hold circle{fill:none;stroke:var(--brass);stroke-width:3px;stroke-dasharray:1;stroke-dashoffset:1px}.touch-ctx.holding .touch-hold circle{stroke-dashoffset:0;transition:stroke-dashoffset 1s linear}.touch-ctx.confirm.holding .touch-hold circle{transition-duration:.6s}.touch-system{top:calc(10px * var(--touch-k));left:max(12px, calc(env(safe-area-inset-left,0px) + 12px));gap:calc(6px * var(--touch-k));display:flex;position:absolute}.touch-sys{width:calc(44px * var(--touch-k));height:calc(44px * var(--touch-k));color:var(--ink);touch-action:none;background:#0a0b0966;border:1px solid #ece8dc6b;place-items:center;padding:0;display:grid}.touch-sys .ic{width:45%;height:45%}.touch-sys:active{background:var(--ink);color:var(--ink-dark)}.touch-ready{left:50%;top:calc(98px * var(--touch-k));height:calc(44px * var(--touch-k));padding:0 calc(22px * var(--touch-k));border:1px solid var(--brass);color:var(--brass-hi);font:600 calc(14px * var(--touch-k)) var(--f-ui);letter-spacing:.22em;text-transform:uppercase;touch-action:none;background:#d9b66a1a;position:absolute;transform:translate(-50%)}.touch-ready[hidden]{display:none}.touch-ready.on{background:var(--brass);color:var(--ink-dark);text-shadow:none}html,body{overscroll-behavior:none}body.input-touch{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}body.input-touch :is(button,a,[role=button],.slot){touch-action:manipulation}body.input-touch :is(input,textarea){-webkit-user-select:text;user-select:text}body.input-touch :is(.opening-cinematic kbd,#deploy-hint){display:none}.home-screen-hint{left:50%;bottom:max(12px, env(safe-area-inset-bottom,0px));z-index:50;font:500 14px var(--f-ui);color:var(--ink);border-top:1px solid var(--line);background:linear-gradient(90deg,#0000,#0a0b09d9 12% 88%,#0000);align-items:center;gap:14px;padding:8px 10px 8px 16px;display:flex;position:fixed;transform:translate(-50%)}.home-screen-hint b{color:var(--brass-hi);font-weight:600}.home-screen-hint button{min-height:44px;color:var(--ink);font:600 12px var(--f-ui);letter-spacing:.18em;text-transform:uppercase;background:0 0;border:1px solid #ece8dc6b;padding:0 16px}.hud.touch-hud{--hud-edge:12px}.hud.touch-hud .touch-controls{z-index:1}.hud.touch-hud :is(.hud-bottom,.hud-bl){z-index:2}.hud.touch-hud .hud-top{transform:translateX(-50%) scale(calc(var(--hud-scale,1) * .62));top:8px}.hud.touch-hud .hud-tl{top:calc(118px * var(--touch-k,1));left:max(12px, calc(env(safe-area-inset-left,0px) + 12px));transform:scale(calc(var(--hud-scale,1) * .75))}.hud.touch-hud .hud-grenades kbd,.hud.touch-hud .hud-room{display:none}.hud.touch-hud .hud-bl{top:calc(60px * var(--touch-k,1));bottom:auto;left:max(12px, calc(env(safe-area-inset-left,0px) + 12px));transform:scale(calc(var(--hud-scale,1) * .7));transform-origin:0 0;flex-direction:column-reverse;align-items:flex-start;gap:8px}.hud.touch-hud .hud-minimap{width:132px;height:132px}.hud.touch-hud .hud-me{width:240px}.hud.touch-hud .hud-chat{top:0;bottom:auto;left:calc(100% + 16px)}.hud.touch-hud .hud-br{top:10px;bottom:auto;right:max(12px, calc(env(safe-area-inset-right,0px) + 12px));transform:scale(calc(var(--hud-scale,1) * .7));transform-origin:100% 0}.hud.touch-hud .perk-heading{display:none}.hud.touch-hud .hud-feed{top:calc(150px * var(--touch-k,1));right:max(12px, calc(env(safe-area-inset-right,0px) + 12px));transform:scale(calc(var(--hud-scale,1) * .7))}.hud.touch-hud .hud-bottom{left:var(--touch-hotbar-x,50%);bottom:max(6px, env(safe-area-inset-bottom,0px));transform:translateX(-50%) scale(calc(var(--hud-scale,1) * .8))}.hud.touch-hud .hud-trapinfo,.hud.touch-hud .hud-prompt{max-width:420px;padding:4px 24px;font-size:14px}.hud.touch-hud .hotbar .slot{pointer-events:auto;touch-action:none;width:56px;height:54px}.hud.touch-hud .hotbar .slot kbd{display:none}.hud.touch-hud .hotbar .slot .cost{font-size:12px}.hud.touch-hud kbd:empty{display:none}.hud.touch-hud .hud-fps{top:40%}@media (height<=520px){.hud.touch-hud .hud-squad,.hud.touch-hud .hud-minimap,.hud.touch-hud .hud-feed,.hud.touch-hud .perk-passive{display:none}.hud.touch-hud .hud-top{transform:translateX(-50%) scale(calc(var(--hud-scale,1) * .5))}.hud.touch-hud .hud-br .hud-weapon{display:none}.hud.touch-hud .hud-countdown span{font-size:64px}.hud.touch-hud .hotbar .slot{grid-template-rows:1fr;width:46px;height:44px;padding:4px 0}.hud.touch-hud .hotbar .slot .cost,.hud.touch-hud .hud-trapinfo small{display:none}}
