:root{color-scheme:dark;--ink:#102632;--deep:#081e2c;--paper:#f7edcf;--muted:#bcc8c8;--line:#e9efd025;--friendly:#a6e7b4;--enemy:#ff9781;--gold:#efd389;--font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#142a47;color:var(--paper)}body{font:14px var(--font);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit;background:none}button:disabled{cursor:wait;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--friendly);outline-offset:4px}button[hidden],[hidden]{display:none!important}a{color:inherit;text-decoration:none}svg{display:block}kbd{font:10px var(--font);padding:3px 5px;border:1px solid #d1e2cf48;border-radius:4px;background:#e3e4ce09;color:#e4eed9;white-space:nowrap}canvas{position:fixed;inset:0;width:100%;height:100%;display:block;outline:none;touch-action:none}#game-ui{position:fixed;inset:0;z-index:2;pointer-events:none}#game-ui button,#game-ui input,#game-ui a{pointer-events:auto}#world-veil{position:fixed;inset:0;pointer-events:none;z-index:1;background:linear-gradient(180deg,#071a30aa,#091f32ce 25%,#091f32dc 80%,#091f32a6);transition:background .2s}body:not([data-screen=menu]) #world-veil{background:radial-gradient(ellipse at center,transparent 45%,#06152b28)}.menu-only{display:none}body[data-screen=menu] .menu-only{display:block}.play-only{display:none}body[data-screen=playing] .play-only,body[data-screen=paused] .play-only{display:block}body[data-screen=paused] .play-only{opacity:.15}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:.14em;color:#d2dac9;margin:0}.friendly{color:var(--friendly)}.enemy{color:var(--enemy)}
.menu-brand{position:absolute;top:26px;left:40px;right:40px;align-items:center;justify-content:space-between}body[data-screen=menu] .menu-brand{display:flex}.menu-brand>a{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.14em}.menu-brand>b,.menu-brand a>b{color:var(--gold);font-weight:400}.brand-mark{font:italic 34px/.8 var(--serif);color:var(--gold);transform:rotate(-12deg);display:block;margin-right:5px}.quiet-button{font-size:13px;color:#c6d2cd;padding:8px 12px;border-radius:4px}.quiet-button:hover{color:var(--paper);background:#e7e8d011}
#main-menu{position:absolute;left:50%;top:50%;transform:translate(-50%,-47%);width:min(910px,calc(100vw - 80px));max-height:calc(100vh - 130px);overflow-y:auto;padding:4px;scrollbar-width:thin;scrollbar-color:#e6d29350 transparent;pointer-events:auto}.lobby-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px;gap:25px}.lobby-heading .eyebrow{font-size:10px;color:var(--gold)}.lobby-heading h1{font:58px/1.05 var(--serif);font-weight:400;letter-spacing:-2px;margin:7px 0 0}.lobby-heading h1>span{color:var(--friendly)}.match-promise{font-size:16px;color:#e5e8d5;text-align:right;line-height:1.4;margin:0 0 4px;white-space:nowrap}.match-promise>b{font-weight:600;color:var(--friendly)}.match-promise>span{display:block;font-size:12px;color:#b6c9ca;margin-top:6px}
.faction-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}.faction-card{border:1px solid #d7e0cb35;border-radius:7px;display:flex;align-items:center;gap:12px;background:#0a2333ac;padding:13px 17px;text-align:left;min-height:54px;transition:background .16s,border-color .16s}.faction-card:hover{border-color:#d1deba89}.faction-card.selected{border-color:var(--friendly);background:#659f7929}.faction-card strong{font-size:16px;font-weight:500}.faction-mark{width:15px;height:24px;border-radius:5% 40% 8% 30%;transform:rotate(14deg);box-shadow:inset 4px 0 #ffffff30;flex-shrink:0}.faction-check{margin-left:auto;color:var(--friendly);font-size:18px}.selection-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.selection-heading h2{font-size:16px;font-weight:500;margin:0}.selection-heading p{font-size:12px;color:#a9bfc4;margin:0}
.artist-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.artist-card{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;border:1px solid #d1dfc92e;border-radius:7px;overflow:hidden;padding:0 7px 13px;background:linear-gradient(#2e4b5670,#0a2233df);transition:border-color .16s,transform .16s,background .16s}.artist-card:hover{transform:translateY(-3px);border-color:#dce8c990}.artist-card.selected{border-color:var(--friendly);background:linear-gradient(#7caa7352,#123731f0);box-shadow:0 0 0 1px #a6e7b42b,inset 0 -3px var(--friendly)}.portrait{position:relative;display:block;width:100%;height:100%;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,#c7d3a615,#203a4600 70%)}.portrait img{width:100%;height:100%;object-fit:contain;display:block;position:relative;z-index:1}.portrait-initial{position:absolute;inset:0;display:grid;place-items:center;font:50px var(--serif);color:#d4dec96b}.portrait.has-image .portrait-initial{display:none}.artist-card>.portrait{height:132px;flex-shrink:0;margin-bottom:6px}.artist-card>strong{font-size:14px;font-weight:500;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.artist-weapon{font-size:11px;color:#a7bac0;margin-top:5px}.selected .artist-weapon{color:#cce6c0}.artist-check{position:absolute;right:9px;top:8px;font-size:15px;color:var(--friendly);font-style:normal;z-index:2}
.play-row{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.selected-artist{display:flex;flex-direction:column;min-width:0}.selected-artist .eyebrow{font-size:9px;color:#9fc5ad}.selected-artist>strong{font:26px/1.15 var(--serif);font-weight:400;margin:3px 0 5px}.selected-artist>span:last-child{font-size:12px;color:#b6c7c9}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:16px 21px;border-radius:6px;background:var(--friendly);color:#16342a;font-size:16px;font-weight:650;border:1px solid #cbf4b759;box-shadow:0 8px 24px #020c172e;transition:background .15s,transform .15s}.primary-button:hover:not(:disabled){background:#c8f2c5;transform:translateY(-1px)}.primary-button>span{font-size:24px;line-height:.8;font-weight:400}.play-row .primary-button{width:235px;font-size:20px;padding:18px 24px;flex-shrink:0}.rival-preview{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:22px}.enemy-portraits{display:flex;flex-shrink:0;padding-right:5px}.enemy-portraits .portrait{width:34px;height:38px;margin-right:-5px;border-radius:50%;background:#264151;border:1px solid #80989950}.enemy-portraits .portrait img{transform:scale(1.25);transform-origin:center 15%}.rival-preview>p{font-size:11px;color:#a4bac0;margin:0;line-height:1.5}.rival-preview strong{font-weight:450;color:#dbcebe}.rival-preview p>span{display:block;font-size:10px;color:#8ba5b0}.menu-footer{position:absolute;left:25px;right:25px;bottom:23px;text-align:center;font-size:11px;color:#aec0bf}.menu-footer>span{margin:0 13px;color:#728f9f}
/* The essentials stay large, and clear of the centre of the action. */
.score-ribbon{position:absolute;left:50%;top:20px;transform:translateX(-50%);display:flex;gap:0;filter:drop-shadow(0 4px 9px #03142150);z-index:3}.team-score{display:flex;align-items:center;gap:19px;min-width:180px;padding:10px 15px 11px;border-top:3px solid currentColor;background:#0a2233e8}.team-score:first-child{border-radius:5px 0 0 5px}.team-score:last-child{border-radius:0 5px 5px 0;text-align:right}.team-score>span{font-size:10px;letter-spacing:.07em;line-height:1.5;white-space:nowrap}.team-score small{display:block;color:#b9cac6;font-size:11px;font-weight:400;letter-spacing:0}.team-score>b{font-size:36px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}.score-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:100px;padding:9px 13px;background:#071c2bed;border-top:3px solid #adccb53a}.score-center>b{font-size:23px;font-weight:450;font-variant-numeric:tabular-nums;line-height:1.2}.score-center>span{font-size:8px;letter-spacing:.07em;color:#a2b9bb;margin-top:4px}.score-ribbon.closing .score-center>b{color:var(--enemy)}
.health-panel{position:absolute;left:26px;bottom:28px;width:354px;display:flex;align-items:center;gap:12px;padding:12px 15px 12px 9px;background:linear-gradient(90deg,#071d2bee,#092332ca);border:1px solid #c0dec722;border-radius:8px;z-index:3}.player-avatar{width:76px;height:82px;flex-shrink:0;border-radius:5px;border-bottom:3px solid var(--friendly);background:linear-gradient(#58826745,#223f3533)}.player-avatar .portrait img{transform:scale(1.15);transform-origin:50% 25%}.health-main{flex:1;min-width:0}.health-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}.health-heading>b{font-size:45px;font-weight:600;line-height:.95;font-variant-numeric:tabular-nums;color:var(--friendly)}.health-heading>span{font-size:13px;color:#e4e8d2;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-track{height:17px;border-radius:4px;background:#bfd9c827;overflow:hidden;box-shadow:inset 0 1px 3px #061c3666}.health-track>i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#8ed7a0,#b9f1bc);border-radius:3px;transition:width .1s}.health-panel.low .health-track>i{background:var(--enemy)}.health-panel.low .health-heading>b{color:var(--enemy)}.secondary-vitals{display:flex;gap:15px;margin-top:7px}.secondary-vitals>span{display:flex;align-items:center;gap:5px;flex:1}.secondary-vitals svg{width:12px;height:12px;fill:none;stroke:#a7c4bb;stroke-width:1.6}.secondary-vitals i{height:3px;border-radius:2px;background:#bad5cd24;flex:1;overflow:hidden}.secondary-vitals b{display:block;height:100%;width:100%;background:#a1bfc0;transition:width .15s}.secondary-vitals>span:last-child b{background:#ded49c}
.weapon-panel{position:absolute;right:26px;bottom:28px;text-align:right;min-width:209px;max-width:240px;padding:12px 15px 11px;background:linear-gradient(270deg,#071d2bee,#092332ad);border:1px solid #c0dec722;border-radius:8px;z-index:3}.weapon-title{display:flex;align-items:center;justify-content:flex-end;gap:12px}.weapon-title>span svg{width:49px;height:26px;fill:#acc7c5}.weapon-title>b{font:20px var(--serif);font-weight:400;color:var(--paper)}.ammo-row{display:flex;align-items:baseline;gap:10px;justify-content:flex-end}.ammo-row>b{font-size:48px;line-height:1.15;font-weight:550;color:var(--paper);font-variant-numeric:tabular-nums}.ammo-row>span{font-size:22px;color:#a7babd;font-variant-numeric:tabular-nums}.weapon-panel.low-ammo .ammo-row>b{color:var(--gold)}#reload-state{display:flex;align-items:center;justify-content:flex-end;gap:7px;font-size:10px;color:#b3c5be;height:19px}#reload-state kbd{font-size:9px;padding:2px 4px}#reload-state>i{display:none;width:78px;height:4px;background:#b6cdb83b;border-radius:3px;overflow:hidden}#reload-state>i>b{display:block;height:100%;background:var(--friendly)}#reload-state.reloading>i{display:block}#reload-state.reloading>kbd{display:none}.weapon-slots{display:flex;justify-content:flex-end;gap:7px;margin-top:5px}.weapon-slot{padding:3px 5px;border:1px solid #b1cab22e;border-radius:3px;display:flex;align-items:center;gap:4px;opacity:.5}.weapon-slot.active{opacity:1;border-color:#b5e7bc91;background:#72ad8922}.weapon-slot>b{font-size:10px;font-weight:500}.weapon-slot svg{width:31px;height:17px;fill:#c1d8c6}
.utility-hud{position:absolute;bottom:29px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:3}.ability{position:relative;width:59px;height:78px;border:1px solid #cadccb41;border-radius:7px;background:#0a2334eb;text-align:center;padding-top:13px;color:#dceacf}.ability>svg{height:27px;width:27px;margin:0 auto 4px;stroke:currentColor;stroke-width:1.5;fill:#c6ebba17;stroke-linecap:round;stroke-linejoin:round}.ability>kbd{position:absolute;top:-9px;left:8px;font-size:10px;background:#173d42;border-color:#a1d2ae9c;color:#c2e8bd;padding:3px 5px}.ability-charge{position:absolute;top:5px;right:7px;font-size:11px;font-weight:600;color:var(--friendly)}.ability>span{font-size:11px}.ability-state{display:block;font-size:9px;margin-top:2px;line-height:1.1;color:#a1bcc3}.ability.empty{opacity:.46}.ability.cooling{opacity:.65}.ability.empty .ability-charge{display:none}.match-help{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);display:flex;gap:14px;font-size:9px;color:#b1c4c5;text-shadow:0 1px 4px #032031;z-index:3}.match-help kbd{font-size:8px;padding:0;border:none;background:none;color:#d5e2d0;margin-right:3px}
.kill-feed{position:absolute;right:24px;top:112px;display:flex;flex-direction:column;align-items:flex-end;gap:6px;max-width:350px;z-index:3}.kill-entry{display:flex;align-items:center;gap:9px;border-radius:5px;background:#081e2de6;border:1px solid #d0dec21d;padding:5px 8px;animation:feed-in .18s ease-out}.kill-entry>span{display:flex;align-items:center;gap:7px}.kill-entry b{font-size:12px;font-weight:450;white-space:nowrap;max-width:94px;overflow:hidden;text-overflow:ellipsis}.kill-entry .portrait{width:27px;height:30px;flex-shrink:0;border-radius:3px;background:#d1ddb711}.kill-entry .portrait img{transform:scale(1.3);transform-origin:50% 20%}.kill-entry .portrait-initial{font-size:20px}.kill-weapon svg{width:30px;height:18px;fill:#a2b7b1}.kill-entry.your-kill{border-color:#a6e7b46b;background:#163b35ed}@keyframes feed-in{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}
#crosshair{--spread:6px;position:absolute;left:50%;top:50%;width:2px;height:2px;z-index:2;filter:drop-shadow(0 1px 1px #051b20);color:#fcf5db}#crosshair>i{position:absolute;background:currentColor;width:7px;height:2px;border-radius:2px}#crosshair>i:nth-child(1){right:var(--spread);top:0}#crosshair>i:nth-child(2){left:var(--spread);top:0}#crosshair>i:nth-child(3){height:7px;width:2px;left:0;bottom:var(--spread)}#crosshair>i:nth-child(4){height:7px;width:2px;left:0;top:var(--spread)}#crosshair>b{position:absolute;width:2px;height:2px;background:currentColor;border-radius:50%}#crosshair.aiming{--spread:3px}#crosshair.aiming>i{opacity:.45}#crosshair.hidden{display:none}#hit-marker{position:absolute;left:50%;top:50%;transform:translate(-50%,-53%);font:36px/.8 var(--font);font-weight:200;color:var(--paper);text-shadow:0 1px 3px #092234;opacity:0;z-index:3}#hit-marker.active{opacity:1}#hit-marker.kill{color:var(--friendly)}#hit-confirmation{position:absolute;left:50%;top:calc(50% + 29px);transform:translateX(-50%);display:flex;align-items:center;gap:9px;opacity:0;color:var(--friendly);text-shadow:0 2px 7px #041a25;z-index:3}#hit-confirmation.active{opacity:1;animation:hit-pop .18s ease-out}#hit-confirmation>b{font-size:30px;line-height:1;font-weight:650}#hit-confirmation>span{font-size:11px;letter-spacing:.1em}#hit-confirmation>small{font-size:12px;color:#d4f2bb;margin-left:4px}@keyframes hit-pop{from{transform:translate(-50%,5px) scale(.9)}to{transform:translate(-50%,0) scale(1)}}#damage-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 38%,#d75d438a);box-shadow:inset 0 0 40px #f9845d55;opacity:0;transition:opacity .1s;z-index:1}#damage-vignette.active{opacity:1}.announcement{position:absolute;left:50%;top:22%;transform:translateX(-50%);font:36px var(--serif);color:#fff0c3;text-shadow:0 3px 15px #032438;opacity:0;transition:opacity .2s;white-space:nowrap;z-index:3}.announcement.show{opacity:1}.spawn-protection{position:absolute;left:50%;top:calc(50% + 64px);transform:translateX(-50%);opacity:0;z-index:2}.spawn-protection.show{opacity:.8}.spawn-protection svg{width:25px;height:25px;fill:#a6e7b421;stroke:var(--friendly);stroke-width:1.5;filter:drop-shadow(0 2px 4px #102439)}
.scope-overlay{display:none;position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle closest-side at center,transparent 85%,#071623 98%)}.scope-overlay.show{display:block}.scope-lens{position:absolute;left:50%;top:50%;height:min(80vh,80vw);width:min(80vh,80vw);transform:translate(-50%,-50%);border:2px solid #0c2024;border-radius:50%;box-shadow:0 0 0 100vmax #061323df;overflow:hidden}.scope-lens:before,.scope-lens:after{content:"";position:absolute;background:#06161d;left:50%;top:50%;transform:translate(-50%,-50%)}.scope-lens:before{height:1px;width:100%}.scope-lens:after{width:1px;height:100%}.scope-lens>i{position:absolute;left:50%;top:50%;width:80px;height:80px;border:1px solid #071921;transform:translate(-50%,-50%);border-radius:50%}.scope-lens>b{position:absolute;left:50%;top:50%;width:4px;height:4px;background:#e97950;transform:translate(-50%,-50%);border-radius:50%}
.interaction-hud{position:absolute;left:50%;top:calc(50% + 85px);transform:translateX(-50%);background:#0c293be8;border:1px solid #abd9aa56;border-radius:5px;padding:10px 14px;min-width:190px;text-align:center;display:none;z-index:3}.interaction-hud.show{display:block}.interaction-hud>span{font-size:13px;color:var(--friendly)}.interaction-hud>i{height:6px;display:block;background:#b8dcb933;margin-top:8px;border-radius:4px;overflow:hidden}.interaction-hud b{display:block;background:var(--friendly);height:100%;width:0}.respawn-panel{position:absolute;inset:0;display:none;place-items:center;background:#0923394d;z-index:5;animation:death-in .14s ease-out}.respawn-panel.show{display:grid}.respawn-message{text-align:center;text-shadow:0 3px 18px #061a2b,0 1px 4px #061a2b}.respawn-message>p{margin:0 0 12px;font:38px/1.2 var(--serif);color:#f7edcf}.respawn-message>p>strong{font:600 39px var(--font);font-variant-numeric:tabular-nums;margin-left:4px}.death-credit{display:flex;justify-content:center;align-items:center;gap:9px;font-size:12px;color:#cdd7cc}.death-credit b{font-weight:550;color:var(--enemy)}.killer-avatar{width:31px;height:38px}.killer-avatar .portrait{background:none}.killer-avatar .portrait img{transform:scale(1.15);transform-origin:center 20%}@keyframes death-in{from{opacity:0}to{opacity:1}}.is-dead .health-panel,.is-dead .weapon-panel,.is-dead .utility-hud{opacity:.3}.is-dead #spawn-protection,.is-dead #hit-confirmation{display:none}.pointer-resume{display:none;position:absolute;left:50%;top:65%;transform:translate(-50%,-50%);padding:13px 20px;border:1px solid #b7e3b77d;border-radius:6px;background:#092a3bf2;color:var(--friendly);font-size:16px;z-index:6}.pointer-resume.show{display:block}.pointer-resume>span{display:block;margin-top:5px;color:#a9c4c5;font-size:11px}.is-dead .pointer-resume{display:none}
.overlay-panel{position:absolute;inset:0;padding:25px;display:grid;place-items:center;overflow-y:auto;background:#061a2ea8;backdrop-filter:blur(9px);pointer-events:auto;z-index:10}.modal-card{width:min(480px,100%);padding:30px;border:1px solid #c2d7bc38;border-radius:9px;background:linear-gradient(145deg,#173747f5,#0a2336fa);box-shadow:0 18px 75px #00132960}.modal-card h2{font:38px/1.12 var(--serif);font-weight:400;letter-spacing:-.7px;margin:10px 0 27px}.modal-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.modal-heading h2{margin:0}.close-button{font-size:26px;line-height:1;width:33px;height:33px;border:1px solid #b3cab745;border-radius:50%;color:#c0d1c4}.close-button:hover{background:#d6e1c713}.secondary-button{font-size:13px;color:#d0ddd3;border:1px solid #b7d2c440;background:#0a213453;padding:12px 14px;border-radius:5px}.secondary-button:hover{background:#c9edbc14;border-color:#b7d2c48c}.pause-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.controls-grid{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:15px 19px;margin-top:24px;padding-top:23px}.controls-grid>span{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#bdcfc7;gap:8px}.controls-grid kbd{font-size:9px;padding:5px}.pause-card>.quiet-button{display:block;margin:19px auto -9px;font-size:11px}.settings-card>label{font-size:14px;display:flex;justify-content:space-between;align-items:center;margin:26px 0 16px}.settings-card output{font-size:13px;color:var(--friendly);font-variant-numeric:tabular-nums}.settings-card input{width:100%;height:5px;accent-color:var(--friendly);cursor:pointer;display:block;margin:0}.setting-label{font-size:14px;margin:29px 0 14px}.quality-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.quality-options button{font-size:13px;border:1px solid #b7d2c440;padding:13px 7px;border-radius:5px;background:#0a213466}.quality-options .selected{border-color:#a6e7b4a6;color:var(--friendly);background:#8bcc9717}.settings-card>.primary-button{margin-top:30px}.scoreboard-overlay{background:#061a2ec2}.scoreboard-card{width:min(830px,100%);max-height:calc(100vh - 50px);overflow:auto}.scoreboard-hint{font-size:12px;color:#afc5c7}.scoreboard-hint kbd{font-size:10px;margin-left:4px}.scoreboard-teams{display:grid;grid-template-columns:1fr 1fr;gap:26px}.scoreboard-team>header{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid currentColor;padding:8px 0 14px}.scoreboard-team>header>b{font-size:11px;line-height:1.5;font-weight:500}.scoreboard-team>header>strong{font-size:28px;font-weight:600}.score-table{width:100%;border-collapse:collapse;margin-top:10px;color:#d7e3d7}.score-table th{font-size:9px;color:#91aeb9;letter-spacing:.06em;font-weight:450;text-align:right;padding:7px 5px}.score-table th:first-child{text-align:left}.score-table td{font-size:13px;text-align:right;padding:6px 5px;border-top:1px solid #bbd6c315;font-variant-numeric:tabular-nums}.score-table td:first-child{text-align:left;display:flex;align-items:center;gap:8px;min-height:49px}.score-table .portrait{width:32px;height:37px;flex-shrink:0;background:#a3c5bd0a;border-radius:3px}.score-table .portrait img{transform:scale(1.2);transform-origin:50% 20%}.score-table .portrait-initial{font-size:24px}.score-table td>span:not(.portrait){font-size:12px;white-space:nowrap}.score-table small{font-size:8px;display:block;color:var(--friendly);margin-top:3px}.score-table .tags{font-size:18px;font-weight:500;color:var(--paper)}.score-table .you{background:#9edcb81a}.score-table .dead .portrait{filter:grayscale(1);opacity:.55}.score-table .dead td{color:#7e9ca7}.results-card{text-align:center;width:min(470px,100%);padding:36px}.results-card h2{font-size:42px;margin:12px 0 22px}.results-card.defeat h2{color:#f0d2b5}.results-score{display:flex;align-items:center;justify-content:center;gap:30px;margin-bottom:24px}.results-score>span{display:flex;flex-direction:column;gap:7px;min-width:110px}.results-score small{font-size:12px}.results-score b{font-size:49px;font-weight:550;line-height:1;font-variant-numeric:tabular-nums}.results-score>i{font-style:normal;font-size:23px;color:#92b1b6}.result-player{display:flex;align-items:center;justify-content:center;gap:13px;border-top:1px solid var(--line);padding-top:18px;margin-bottom:24px;text-align:left}.result-player>div:first-child{width:51px;height:63px;background:#a6e7b40a;border-bottom:2px solid var(--friendly);border-radius:3px}.result-player>div:last-child>b{display:block;font:20px var(--serif);font-weight:400}.result-player>div:last-child>span{display:block;margin-top:7px;font-size:13px;color:#abc3c4}.results-card>.secondary-button{margin-top:9px;width:100%}.toast{position:absolute;left:50%;bottom:150px;transform:translate(-50%,5px);max-width:min(510px,calc(100vw - 40px));padding:11px 16px;border:1px solid #c0dcb837;border-radius:5px;background:#0a263be8;color:#d5e6ce;font-size:12px;line-height:1.5;opacity:0;transition:opacity .15s,transform .15s;text-align:center;z-index:12}.toast.show{opacity:1;transform:translate(-50%,0)}#fatal-error{z-index:30}#fatal-error-message{font-size:14px;line-height:1.6;margin-bottom:22px;color:#d1dccd}#loading-screen{position:fixed;inset:0;z-index:20;background:#0c2438;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#c7dbc6;pointer-events:none;transition:opacity .25s,visibility .25s}#loading-screen p{font-size:15px;margin-top:25px}.loading-mark{font:italic 70px var(--serif);color:var(--friendly);animation:loading 1s ease-in-out infinite}@keyframes loading{50%{opacity:.4}}body.ready #loading-screen{opacity:0;visibility:hidden}
@media(min-width:1500px) and (min-height:850px){#main-menu{width:1050px}.lobby-heading h1{font-size:72px}.lobby-heading{margin-bottom:30px}.faction-options{margin-bottom:27px}.faction-card{padding:17px 20px}.faction-card strong{font-size:18px}.artist-card>.portrait{height:165px}.artist-card>strong{font-size:16px}.artist-card{padding-bottom:17px}.artist-weapon{font-size:12px}.play-row{margin-top:28px;padding-top:23px}.rival-preview{margin-top:26px}}
@media(max-width:1050px){#main-menu{width:calc(100vw - 64px)}.artist-options{gap:8px}.artist-card>strong{font-size:12px}.artist-card>.portrait{height:122px}.artist-card{padding-left:5px;padding-right:5px}.selected-artist>strong{font-size:24px}.health-panel{left:20px;width:320px;bottom:29px;padding:10px 12px 10px 8px}.player-avatar{width:64px;height:78px}.health-heading>b{font-size:42px}.health-heading>span{font-size:12px}.weapon-panel{right:20px;min-width:200px;max-width:210px;padding:10px 12px;bottom:29px}.weapon-title>b{font-size:18px}.weapon-title>span svg{width:40px}.ammo-row>b{font-size:43px}.ammo-row>span{font-size:20px}.utility-hud{gap:8px}.ability{width:56px}.kill-feed{right:20px;max-width:330px}.kill-entry b{font-size:11px;max-width:91px}.team-score{min-width:168px;gap:13px}.scoreboard-teams{gap:20px}.score-table td>span:not(.portrait){font-size:11px}}
@media(max-height:700px){#main-menu{max-height:calc(100vh - 108px);transform:translate(-50%,-47%)}.menu-brand{top:19px}.menu-footer{bottom:17px}.lobby-heading{margin-bottom:17px}.lobby-heading h1{font-size:48px}.lobby-heading .eyebrow{font-size:9px}.match-promise{font-size:15px}.match-promise>span{font-size:11px}.faction-options{margin-bottom:17px}.faction-card{min-height:47px;padding:10px 14px}.selection-heading{margin-bottom:10px}.artist-card>.portrait{height:100px}.artist-card{padding-bottom:11px}.play-row{margin-top:18px;padding-top:15px}.selected-artist>strong{font-size:22px}.selected-artist>span:last-child{font-size:11px}.play-row .primary-button{padding:16px 21px}.rival-preview{margin-top:16px}.enemy-portraits .portrait{height:33px;width:29px}.rival-preview p>span{font-size:9px}.scoreboard-card{padding:24px}.score-table td:first-child{min-height:43px}.score-table .portrait{height:33px;width:28px}.scoreboard-team>header{padding-bottom:10px}.modal-card h2{font-size:35px}.controls-grid{gap:13px 19px}}
@media(max-width:820px){.menu-brand{left:27px;right:27px}.lobby-heading h1{font-size:44px}.artist-card>strong{font-size:11px}.artist-weapon{font-size:10px}.artist-card>.portrait{height:112px}.selection-heading p{font-size:11px}.faction-card strong{font-size:14px}.selected-artist>span:last-child{font-size:11px}.play-row .primary-button{width:200px}.health-panel{width:280px;left:16px}.health-heading{gap:8px}.health-heading>b{font-size:37px}.health-heading>span{font-size:10px}.player-avatar{width:55px;height:73px}.health-track{height:15px}.secondary-vitals{gap:8px}.weapon-panel{right:16px}.utility-hud{bottom:150px;gap:8px}.ability{width:49px;height:68px;padding-top:11px}.ability>svg{width:23px;height:23px}.ability>span{font-size:10px}.match-help{bottom:9px;right:20px;left:auto;transform:none}.score-ribbon{top:16px}.team-score{min-width:142px;padding:9px 11px;gap:10px}.team-score>span{font-size:8px}.team-score small{font-size:9px}.team-score>b{font-size:31px}.score-center{min-width:88px}.score-center>b{font-size:21px}.kill-feed{top:104px}.kill-entry .portrait{width:23px;height:27px}.kill-entry b{font-size:10px;max-width:78px}.kill-weapon svg{width:24px}.scoreboard-card{padding:24px 18px}.scoreboard-team>header>b{font-size:10px}.score-table td>span:not(.portrait){font-size:10px}.score-table td:first-child{gap:5px}.scoreboard-teams{gap:15px}.score-table td{padding-left:3px;padding-right:3px}.score-table th{font-size:8px}}
@media(max-width:600px){#main-menu{width:calc(100vw - 30px);top:76px;transform:translateX(-50%);max-height:calc(100vh - 109px)}.menu-brand{left:19px;right:19px;top:18px}.menu-brand>a{font-size:9px;gap:7px}.brand-mark{font-size:28px}.quiet-button{font-size:12px}.lobby-heading{align-items:flex-start;margin-bottom:16px;gap:12px}.lobby-heading h1{font-size:37px;letter-spacing:-1.3px}.lobby-heading .eyebrow{font-size:8px}.match-promise{font-size:12px;margin-top:4px}.match-promise>span{font-size:9px;max-width:100px;white-space:normal}.faction-options{gap:8px;margin-bottom:16px}.faction-card{gap:8px;padding:9px 10px;min-height:46px}.faction-card strong{font-size:12px}.faction-mark{width:10px;height:21px}.faction-check{font-size:13px}.selection-heading h2{font-size:14px}.selection-heading p{font-size:9px}.artist-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.artist-card>.portrait{height:85px;margin-bottom:3px}.artist-card>strong{font-size:12px}.artist-card{padding-bottom:10px}.artist-weapon{font-size:10px;margin-top:3px}.play-row{gap:13px;margin-top:16px;padding-top:13px}.selected-artist>strong{font-size:22px}.selected-artist .eyebrow{font-size:8px}.selected-artist>span:last-child{font-size:9px;max-width:210px;line-height:1.5}.play-row .primary-button{width:132px;padding:15px;font-size:18px}.rival-preview{gap:11px;margin-top:16px}.enemy-portraits .portrait{width:24px;height:28px}.rival-preview>p{font-size:10px}.rival-preview p>span{font-size:8px}.menu-footer{font-size:9px;bottom:12px;left:12px;right:12px}.menu-footer>span{margin:0 6px}.team-score{min-width:112px;gap:9px;padding:8px}.team-score>span{font-size:7px}.team-score small{font-size:8px;max-width:73px;overflow:hidden;text-overflow:ellipsis}.team-score>b{font-size:27px}.score-center{min-width:73px;padding:7px}.score-center>b{font-size:19px}.score-center>span{font-size:6px}.health-panel{width:211px;left:12px;bottom:24px;padding:9px;gap:7px}.player-avatar{width:44px;height:65px}.health-heading{gap:6px;margin-bottom:7px}.health-heading>b{font-size:33px}.health-heading>span{font-size:9px;max-width:76px}.health-track{height:13px}.secondary-vitals{gap:7px;margin-top:6px}.secondary-vitals svg{width:10px;height:10px}.weapon-panel{right:12px;bottom:24px;min-width:143px;max-width:167px;padding:8px 10px}.weapon-title{gap:7px}.weapon-title>span svg{width:28px;height:20px}.weapon-title>b{font-size:16px}.ammo-row{gap:6px}.ammo-row>b{font-size:35px}.ammo-row>span{font-size:16px}#reload-state{font-size:9px;gap:5px}.weapon-slot svg{width:25px;height:13px}.weapon-slot{padding:2px 4px}.weapon-slot>b{font-size:8px}.utility-hud{bottom:135px}.match-help{bottom:7px;font-size:8px;right:13px;gap:9px}.kill-feed{right:12px;top:95px;max-width:270px}.kill-entry{gap:6px;padding:4px 6px}.kill-entry>span{gap:5px}.kill-entry b{font-size:9px;max-width:70px}.kill-entry .portrait{width:22px;height:24px}.kill-weapon svg{width:23px;height:15px}.announcement{font-size:26px;top:25%}.pointer-resume{font-size:14px;padding:12px 16px;top:58%;white-space:nowrap}.pointer-resume>span{font-size:10px}.respawn-message>p{font-size:31px}.respawn-message>p>strong{font-size:33px}.overlay-panel{padding:18px}.modal-card{padding:24px}.modal-card h2{font-size:31px}.controls-grid>span{font-size:10px}.controls-grid{gap:13px}.controls-grid kbd{font-size:8px;padding:4px}.primary-button{font-size:15px;padding:14px 17px}.scoreboard-teams{grid-template-columns:1fr;gap:20px}.scoreboard-card{padding:23px}.scoreboard-team>header>b{font-size:11px}.score-table td>span:not(.portrait){font-size:12px}.score-table td:first-child{min-height:42px}.score-table .portrait{width:28px;height:33px}.scoreboard-hint{font-size:10px}.scoreboard-card .modal-heading{margin-bottom:15px}.results-card h2{font-size:37px}.results-score{gap:20px}.results-score>span{min-width:90px}.results-score b{font-size:43px}.results-score small{font-size:10px}.result-player>div:last-child>span{font-size:12px}}

/* The chosen artist carries this exact weapon and this original art tag. */
.artist-weapon{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;max-width:100%;font-size:10px}.artist-weapon>svg{width:27px;height:16px;fill:currentColor;flex-shrink:0}
.selection-kit{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;margin-top:21px;padding-top:17px;border-top:1px solid var(--line)}.kit-content{display:grid;grid-template-columns:minmax(0,1fr) 90px 100px;gap:16px;align-items:center}.primary-kit{min-width:0}.weapon-preview{position:relative;height:92px;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#b6d2bc12,transparent 70%)}.weapon-preview>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 4px #03162385)}.weapon-preview-fallback{position:absolute;inset:10% 12%;display:grid;place-items:center;opacity:.65}.weapon-preview-fallback svg{width:100%;height:100%;fill:#adc4bf}.weapon-preview.has-image .weapon-preview-fallback{display:none}.primary-description{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:2px}.primary-description>div:first-child{display:flex;flex-direction:column;gap:2px}.primary-description .eyebrow{font-size:8px;color:#a9c5ba;letter-spacing:.1em}.primary-description strong{font:22px/1.1 var(--serif);font-weight:400}.primary-stats{display:flex;flex-direction:column;gap:4px;font-size:10px;line-height:1.3;color:#bdcfc7;text-align:right;white-space:nowrap;padding-bottom:1px}.secondary-kit,.art-kit{display:flex;align-items:center;flex-direction:column;min-width:0;text-align:center}.secondary-kit>.eyebrow,.art-kit>.eyebrow{font-size:8px;letter-spacing:.08em;color:#9db8b4}.secondary-kit .weapon-preview{width:90px;height:72px;margin:3px 0 4px;background:none}.secondary-kit .weapon-preview>img{width:226px;max-width:none;left:50%;transform:translateX(-50%);object-fit:contain}.secondary-kit>b{font-size:12px;font-weight:500}.secondary-kit>span:last-child{font-size:10px;color:#a4bbb9;margin-top:3px}.art-kit>img{height:63px;width:63px;object-fit:contain;margin:3px 0 5px;filter:drop-shadow(0 3px 4px #061a2755)}.art-kit>b{font-size:10px;line-height:1.3;font-weight:500;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.art-kit>span:last-child{display:flex;align-items:center;gap:4px;font-size:9px;color:#a4bbb9;margin-top:5px;white-space:nowrap}.art-kit kbd{font-size:8px;padding:2px 4px}.kit-play{display:flex;flex-direction:column;justify-content:center;gap:13px;border-left:1px solid var(--line);padding-left:23px}.kit-play .selected-artist>strong{font-size:22px;line-height:1.2;overflow-wrap:anywhere;margin-bottom:0}.kit-play .primary-button{font-size:20px;padding:15px 17px}.kit-play .eyebrow{font-size:8px}
.spray-hud{position:absolute;left:50%;bottom:120px;transform:translateX(-50%);display:flex;align-items:center;gap:7px;height:29px;padding:2px 9px 2px 4px;color:#cddcca;background:#0c25369c;border-radius:4px;z-index:3;font-size:10px}.spray-hud>kbd{font-size:9px;padding:2px 4px}.spray-hud>img{display:block;height:25px;width:25px;object-fit:contain;transition:filter .15s,transform .15s}.spray-hud.cooling{color:#a0b7b6}.spray-hud.cooling>img{opacity:.5}.spray-hud.sprayed>img{animation:tag-pop .6s ease-out;opacity:1;filter:drop-shadow(0 0 7px #b9eea0)}@keyframes tag-pop{0%{transform:scale(.8)}35%{transform:scale(1.35)}100%{transform:scale(1)}}
.is-dead #crosshair,.is-dead #hit-marker,.is-dead #hit-confirmation,.is-dead #scope-overlay,.is-dead #reload-state,.is-dead #weapon-slots,.is-dead #pointer-resume,.is-dead #spawn-protection,.is-dead #interaction-hud,.is-dead #spray-hud,.is-dead #damage-vignette,.is-dead #announcement{display:none!important}
@media(min-width:601px) and (max-height:820px){#main-menu{max-height:calc(100vh - 104px)}.lobby-heading{margin-bottom:17px}.lobby-heading h1{font-size:48px}.faction-options{margin-bottom:17px}.faction-card{min-height:47px;padding:10px 14px}.selection-heading{margin-bottom:10px}.artist-card>.portrait{height:105px}.artist-card{padding-bottom:11px}.selection-kit{margin-top:18px;padding-top:14px}.rival-preview{margin-top:16px}.enemy-portraits .portrait{height:33px;width:29px}}
@media(max-width:1050px){.selection-kit{gap:18px;grid-template-columns:minmax(0,1fr) 165px}.kit-content{gap:12px;grid-template-columns:minmax(0,1fr) 80px 95px}.kit-play{padding-left:17px}.artist-weapon{gap:3px;font-size:9px}.artist-weapon>svg{width:24px}.primary-description strong{font-size:21px}.kit-play .selected-artist>strong{font-size:20px}}
@media(max-width:820px){.selection-kit{gap:15px;grid-template-columns:minmax(0,1fr) 143px}.kit-content{gap:10px;grid-template-columns:minmax(0,1fr) 72px 80px}.kit-play{padding-left:14px}.kit-play .selected-artist>strong{font-size:19px}.primary-stats{font-size:9px}.primary-description strong{font-size:19px}.primary-description .eyebrow{font-size:7px}.artist-weapon>svg{width:21px}.artist-weapon{font-size:8px}.art-kit>b{font-size:9px}.spray-hud{bottom:229px}}
@media(max-width:600px){.selection-kit{grid-template-columns:1fr;gap:15px;margin-top:17px;padding-top:13px}.kit-content{grid-template-columns:minmax(0,1fr) 70px 88px;gap:9px}.kit-play{border-left:0;border-top:1px solid var(--line);padding:12px 0 0;flex-direction:row;align-items:center;justify-content:space-between;gap:18px}.kit-play .primary-button{width:133px;flex-shrink:0;padding:13px 15px}.kit-play .selected-artist>strong{font-size:22px}.kit-play .eyebrow{font-size:8px}.primary-description{align-items:flex-start;flex-direction:column;gap:5px}.primary-stats{flex-direction:row;gap:7px;font-size:8px}.primary-description strong{font-size:20px}.weapon-preview{height:80px}.secondary-kit .weapon-preview{height:60px;width:70px}.secondary-kit .weapon-preview>img{width:183px}.art-kit>img{width:56px;height:56px}.artist-weapon{font-size:9px}.artist-weapon>svg{width:23px}.rival-preview{margin-top:14px}.spray-hud{bottom:214px}}
.primary-kit .weapon-preview{height:122px}.primary-kit .weapon-preview>img{object-position:12% center}.art-kit>img{height:68px;width:68px}
@media(min-width:601px) and (max-height:700px){.lobby-heading h1{font-size:43px}.faction-card{min-height:44px}.faction-options{margin-bottom:13px}.artist-card>.portrait{height:94px}.selection-kit{margin-top:14px;padding-top:10px}.primary-kit .weapon-preview{height:110px}.rival-preview{margin-top:10px}.lobby-heading{margin-bottom:14px}}
@media(max-width:600px){.primary-kit .weapon-preview{height:94px}.art-kit>img{height:56px;width:56px}}
@media(max-width:600px){.artist-card>.portrait{height:65px}.primary-kit .weapon-preview{height:75px}.rival-preview{display:none}.lobby-heading{margin-bottom:13px}.faction-options{margin-bottom:13px}.selection-kit{margin-top:13px}.kit-play{padding-top:10px}}
@media(max-width:600px){.score-table td{padding-top:3px;padding-bottom:3px}.score-table td:first-child{min-height:34px}.score-table .portrait{height:24px;width:21px}}
#crosshair[data-target=friendly]{color:var(--friendly)}#crosshair[data-target=enemy]{color:var(--enemy)}
.spray-hud>img{opacity:.35}.spray-hud.can-place>img,.spray-hud.sprayed>img{opacity:1}.spray-hud.can-place{color:var(--friendly)}.spray-hud.can-place>img{outline:1px solid #a6e7b4b3;outline-offset:3px;border-radius:50%}.spray-hud.can-place>kbd{border-color:#a6e7b480;color:var(--friendly)}
/* Crew emblems keep their identity; green and coral still mean ally and enemy. */
.team-crest{display:block;width:28px;height:28px;flex:0 0 auto;line-height:0;font-style:normal}.team-crest>svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 1px 2px #061c3059)}.faction-card>.team-crest{width:32px;height:32px}.team-score{gap:12px}.team-score>.team-crest{width:27px;height:27px}.scoreboard-team>header{gap:10px}.scoreboard-team>header>.team-crest{width:25px;height:25px}.scoreboard-team>header>b{flex:1}.results-score small{display:flex;align-items:center;justify-content:center;gap:6px}.results-score small>.team-crest{width:20px;height:20px}
.kit-play .kit-taunt{display:flex;align-items:center;gap:5px;min-width:0;font-size:10px;color:#b9d0c2;line-height:1.4;margin-top:6px}.kit-taunt>kbd{font-size:8px;padding:2px 4px}.kit-taunt>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cosmetic-hud{position:absolute;left:50%;bottom:120px;transform:translateX(-50%);display:flex;align-items:center;gap:8px;height:29px;z-index:3}.cosmetic-hud .spray-hud{position:static;transform:none}.taunt-hud{display:flex;align-items:center;gap:6px;height:29px;padding:2px 8px 2px 4px;border-radius:4px;background:#0c25369c;color:#cddcca;font-size:10px;white-space:nowrap}.taunt-hud>kbd{font-size:9px;padding:2px 4px}.taunt-hud>svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.taunt-hud>svg circle{fill:currentColor;stroke:none}.taunt-hud.unavailable{color:#90a9a9}.taunt-hud.unavailable>svg{opacity:.4}.taunt-hud.active{color:var(--friendly)}.taunt-hud.active>svg{animation:taunt-step .5s ease-in-out infinite alternate}.taunt-hud.active>kbd{border-color:#a6e7b480;color:var(--friendly)}@keyframes taunt-step{from{transform:rotate(-9deg)}to{transform:rotate(9deg)}}
#crosshair>i{transition:left .1s ease-out,right .1s ease-out,top .1s ease-out,bottom .1s ease-out,color .1s}
.killer-avatar{width:76px;height:88px}.killer-avatar .portrait img{transform:scale(1.35);transform-origin:center 20%}.death-credit{gap:15px}.death-credit>span{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:12px}.death-credit b{font-size:24px;line-height:1.15;font-weight:600}.respawn-message>p{margin-bottom:16px}.kill-entry .portrait{width:30px;height:34px}.is-dead #cosmetic-hud{display:none!important}
@media(min-width:601px) and (max-height:700px){.faction-card>.team-crest{width:24px;height:24px}}
@media(max-width:820px){.cosmetic-hud{bottom:229px}.team-score{gap:8px}.team-score>.team-crest{width:23px;height:23px}}
@media(max-width:600px){.faction-card>.team-crest{width:26px;height:26px}.team-score{gap:7px}.team-score>.team-crest{width:20px;height:20px}.scoreboard-team>header>.team-crest{width:22px;height:22px}.results-score small>.team-crest{width:18px;height:18px}.kit-play .kit-taunt{font-size:10px;margin-top:4px}.cosmetic-hud{bottom:214px}.killer-avatar{width:72px;height:82px}.death-credit{gap:13px}.death-credit b{font-size:22px}.kill-entry .portrait{width:26px;height:30px}}
@media(prefers-reduced-motion:reduce){.taunt-hud.active>svg{animation:none}#crosshair>i{transition:none}}
.is-taunting #crosshair,.is-taunting #scope-overlay,.is-taunting #reload-state,.is-taunting #weapon-slots,.is-taunting #hit-marker,.is-taunting #hit-confirmation{display:none!important}
.is-taunting #utility-hud,.is-taunting .weapon-panel{display:none!important}
/* Reveal the picker only after its images and the first world frame are ready. */
body:not(.ready) .menu-only{visibility:hidden}

/* A small live countdown over the actual arena. The match clock owns timing. */
.gogh-wordmark{display:flex;justify-content:center;gap:.12em;font:900 34px/.9 Impact,"Arial Narrow",sans-serif;letter-spacing:-.025em;color:#fff0c8;transform:rotate(-3deg);text-shadow:2px 3px 0 #082333,0 2px 10px #061a2e}
.gogh-wordmark>span:last-child{color:#efc56b;font-style:italic}
.match-intro{--intro-progress:0;position:absolute;left:50%;top:44%;width:290px;height:192px;transform:translate(-50%,-50%);z-index:8;pointer-events:none;background:none;isolation:isolate}
.intro-content{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;gap:13px}
.intro-brand{position:relative;padding:7px 16px 8px;animation:countdown-arrive .2s ease-out both}
.intro-brand:before{content:"";position:absolute;inset:-3px -9px;background:#102b3bb0;clip-path:polygon(4% 12%,35% 1%,98% 9%,94% 83%,60% 94%,0 87%);z-index:-1}
.intro-brand:after{content:"";position:absolute;height:3px;left:12%;right:10%;bottom:0;background:linear-gradient(90deg,#eec16b,#8fd5d3);transform:rotate(-2deg)}
.intro-dial{position:relative;width:132px;height:132px;display:grid;place-items:center}
.intro-dial:before{content:"";position:absolute;inset:9px;border-radius:50%;background:radial-gradient(ellipse,#0c283467,transparent 72%);z-index:-1}
.intro-ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:rotate(-90deg);filter:drop-shadow(0 2px 2px #082534)}
.intro-ring-track{fill:none;stroke:#f4edcf35;stroke-width:3}
.intro-ring-progress{fill:none;stroke:#edd08c;stroke-width:4;stroke-linecap:round;stroke-dasharray:364.425;stroke-dashoffset:calc(364.425 * (1 - var(--intro-progress)));transition:stroke-dashoffset .035s linear}
.intro-ring-accent{fill:none;stroke:#91d6db;stroke-width:3;stroke-linecap:round;stroke-dasharray:28 336;transform-origin:66px 66px;transform:rotate(80deg)}
.intro-count{position:relative;display:grid;place-items:center;min-width:112px;min-height:105px}
.intro-number{display:block;color:#fff4db;font:92px/.95 Impact,"Arial Narrow",sans-serif;letter-spacing:-.025em;text-shadow:3px 4px 0 #0a293d,0 0 18px #08273780;animation:countdown-beat .8s cubic-bezier(.2,.7,.3,1) both}
.intro-crews{position:absolute;top:99px;left:14px;right:14px;display:flex;justify-content:space-between;pointer-events:none}
.intro-crews>i{width:33px;height:33px;display:block;filter:drop-shadow(0 2px 3px #082534)}.intro-crews svg{width:100%;height:100%}
.is-intro #crosshair,.is-intro #spawn-protection,.is-intro #pointer-resume{visibility:hidden}
.match-intro.is-exiting{animation:countdown-away .32s ease-out both}
.match-intro.is-exiting .intro-number{font-size:70px;color:#c7f0be;animation:none}
.match-intro.is-exiting .intro-ring-progress{stroke:#a6e7b4}
body[data-screen=paused] .match-intro *,body[data-screen=paused] .match-intro{animation-play-state:paused!important}
@keyframes countdown-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes countdown-beat{0%{transform:scale(1.15);opacity:.65}22%{transform:scale(1);opacity:1}100%{transform:scale(.98);opacity:1}}
@keyframes countdown-away{to{opacity:0;transform:translate(-50%,-54%) scale(1.04)}}
#loading-screen{inset:auto;left:50%;bottom:24px;top:auto;width:240px;height:auto;padding:13px 18px;transform:translateX(-50%);gap:7px;background:#0c2832d9;border-radius:8px;pointer-events:none;box-shadow:0 6px 24px #04142125}
.loading-wordmark{font-size:25px}.loading-wordmark+ #loading-text{margin:0;font-size:10px;letter-spacing:.035em;color:#d3ded6}
@media(max-width:600px){.match-intro{width:268px;height:187px;top:42%}.intro-wordmark{font-size:31px}.intro-crews{left:8px;right:8px}.intro-crews>i{width:30px;height:30px}}
@media(max-height:500px){.match-intro{top:46%;transform:translate(-50%,-50%) scale(.8)}}
@media(prefers-reduced-motion:reduce){.match-intro,.match-intro *{animation:none!important;transition:none!important}}

.inspect-artist{display:inline-flex;align-items:center;gap:5px;padding:5px 0;font-size:10px;color:#c8d8cd;align-self:flex-start;white-space:nowrap}.inspect-artist svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5}.inspect-artist:hover{color:var(--friendly)}.kit-play .selected-artist>.inspect-artist{margin-top:2px}

/* Close-up portrait assets fill combat identity badges without cropping hats. */
.killer-avatar .portrait img{transform:none;object-fit:contain}

/* A brief paint-stamp reward keeps the sightline and the match HUD readable. */
#hit-marker.kill{color:#f5d17e;text-shadow:0 0 9px #efd27888,0 2px 3px #092234}
#hit-confirmation.frag-confirmation{top:calc(50% + 45px);gap:0;color:#fff2cf;pointer-events:none;text-shadow:0 1px 4px #041a25;max-width:calc(100vw - 48px)}
#hit-confirmation.frag-confirmation.active{animation:none}
.frag-card{position:relative;isolation:isolate;display:flex;align-items:center;gap:10px;min-height:68px;padding:1px 16px 1px 2px;animation:frag-arrive .24s cubic-bezier(.16,.9,.28,1.25) both,frag-away .18s 1.23s ease-in both}
.frag-card:before{content:"";position:absolute;inset:7px 0 5px 24px;background:linear-gradient(105deg,#0b253bdf,#0a2336ec 65%,#0a233685);clip-path:polygon(4% 8%,76% 0,97% 10%,100% 84%,91% 92%,5% 100%,0 76%);z-index:-1}
.frag-card:after{content:"";position:absolute;bottom:4px;left:45px;right:7px;height:3px;background:linear-gradient(90deg,#f5ca68 2%,#e8a557 55%,#86d8b7b0 93%,transparent);clip-path:polygon(0 35%,40% 0,100% 35%,92% 75%,45% 100%,2% 75%);transform:rotate(-2deg);transform-origin:left;animation:frag-brush .3s .05s ease-out both;z-index:-1}
.frag-seal{position:relative;width:64px;height:64px;display:grid;place-items:center;flex-shrink:0;filter:drop-shadow(0 3px 4px #04142180)}
.frag-seal>svg{position:absolute;inset:0;width:100%;height:100%;animation:frag-seal .38s cubic-bezier(.16,.9,.28,1.15) both}
.frag-paint{fill:#eac46c;stroke:#f4d590;stroke-width:.6}.frag-rim{fill:none;stroke:#795828a3;stroke-width:1.1;stroke-linecap:round}
.frag-point{position:relative;padding-right:1px;font:800 27px/1 var(--font);font-variant-numeric:tabular-nums;letter-spacing:-2px;color:#163343;text-shadow:0 1px 0 #fff0c655;animation:frag-point .3s .06s cubic-bezier(.16,.9,.28,1.35) both}
.frag-details{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;gap:2px;padding:6px 0 7px}
.frag-identity{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}
.frag-face{position:relative;display:grid;place-items:center;width:35px;height:38px;flex-shrink:0;overflow:hidden;border-radius:50% 50% 44% 44%;background:radial-gradient(ellipse,#54627388,#112f4100 74%)}
.frag-face>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.frag-initial{font:25px/1 var(--serif);color:#d0d1bc}.frag-face.has-image>.frag-initial{display:none}
.frag-name{font-size:14px;line-height:1.2;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;color:#f9efda;letter-spacing:.015em}
.frag-label{margin-left:1px;font-size:9px;line-height:1.1;font-weight:750;letter-spacing:.16em;color:#f0ca7f}
.frag-heal{margin:0 0 0 44px;font-size:10px;line-height:1;font-weight:600;color:#b4e5ac;white-space:nowrap}
.frag-headshot{position:absolute;right:-2px;bottom:1px;width:20px;height:20px;padding:3px;border-radius:50%;background:#112e3d;color:#f7d289;box-shadow:0 0 0 1px #f1cf8599}
.frag-headshot>svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.frag-flecks{position:absolute;left:32px;top:34px;width:1px;height:1px;z-index:-1}
.frag-flecks>i{--angle:calc(var(--i)*45deg + 9deg);position:absolute;left:0;top:0;display:block;width:13px;height:4px;border-radius:70% 20% 55% 25%;background:#edc66e;box-shadow:0 1px 2px #08223140;opacity:0;animation:frag-fleck .68s calc(var(--i)*.014s) cubic-bezier(.15,.6,.2,1) both}
.frag-flecks>i:nth-child(3n){width:5px;height:5px;background:#b8e5ce;border-radius:40%}.frag-flecks>i:nth-child(3n + 1){height:3px;background:#f2dfab}
.frag-confirmation.is-multi .frag-card{animation-duration:.24s,.18s;animation-delay:0s,1.49s}.frag-confirmation.is-multi .frag-seal>svg{filter:drop-shadow(0 0 6px #f5c65e66)}.frag-confirmation.is-multi .frag-label{font-size:11px;letter-spacing:.14em;color:#ffdc8b}
@keyframes frag-arrive{from{opacity:0;transform:translateY(7px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes frag-away{to{opacity:0;transform:translateY(-4px)}}
@keyframes frag-seal{from{transform:rotate(-23deg) scale(.65)}to{transform:rotate(0) scale(1)}}
@keyframes frag-point{from{opacity:0;transform:scale(1.6) translateY(-3px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes frag-brush{from{transform:rotate(-2deg) scaleX(0)}to{transform:rotate(-2deg) scaleX(1)}}
@keyframes frag-fleck{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(22px) scale(.4)}20%{opacity:.95}80%{opacity:.55}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(79px) scale(.45)}}
@media(max-width:600px){#hit-confirmation.frag-confirmation{top:calc(50% + 35px)}.frag-card{gap:7px;min-height:61px;padding-right:12px}.frag-seal{width:57px;height:57px}.frag-point{font-size:25px}.frag-name{font-size:13px;max-width:133px}.frag-face{width:30px;height:33px}.frag-identity{gap:6px}.frag-heal{margin-left:36px}.frag-flecks{left:30px;top:31px}.frag-label{font-size:8px}.frag-confirmation.is-multi .frag-label{font-size:10px}}
@media(prefers-reduced-motion:reduce){.frag-confirmation,.frag-confirmation *,.frag-card:after{animation:none!important}.frag-flecks{display:none}}

/* The countdown's cream, gold and ink identity carries through every menu. */
:root{--brand-font:Impact,"Arial Narrow",sans-serif;--brand-gold:#efc56b;--brand-ink:#102b3b;--brand-cream:#fff0c8}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-color:var(--brand-gold)}
summary:focus-visible{outline:2px solid var(--brand-gold);outline-offset:4px}
.menu-brand>a{letter-spacing:0;gap:0}.menu-wordmark{font-size:23px;text-shadow:1px 2px 0 #082333;gap:.14em}
.lobby-heading h1{font-family:var(--brand-font);font-size:61px;line-height:1;letter-spacing:-.015em;text-transform:uppercase;color:var(--brand-cream)}
.lobby-heading h1>span{color:var(--brand-gold)}
.primary-button{background:var(--brand-gold);border-color:#ffe6aa70;color:#142c38;border-radius:4px;font:24px/1.1 var(--brand-font);letter-spacing:.02em;text-transform:uppercase;padding:16px 21px}
.primary-button:hover:not(:disabled){background:#f8d892}.primary-button:active:not(:disabled){transform:translateY(1px);background:#ddb362}
.primary-button>span{font-family:var(--font);font-size:25px}.secondary-button{background:#081d292e;border-color:#eadab32b;color:#e5decb;border-radius:4px}
.secondary-button:hover{background:#eed09a0d;border-color:#eac57480}.quiet-button{color:#bbc7c5}.quiet-button:hover{background:#edd1900c;color:var(--brand-cream)}
.overlay-panel{background:#061b2ab0;backdrop-filter:blur(7px);padding:24px;align-items:safe center}
.modal-card{position:relative;isolation:isolate;background:linear-gradient(135deg,#153340f8,#0b2332fc 72%);border-color:#e8d59f35;border-radius:12px;padding:32px;box-shadow:0 24px 85px #02111c70,inset 0 1px #fff1c807;max-height:calc(100dvh - 48px);overflow:auto;scrollbar-width:thin;scrollbar-color:#d8b96d50 transparent}
.modal-card:before{content:"";position:absolute;top:0;left:26px;right:26px;height:3px;pointer-events:none;background:linear-gradient(90deg,#efc56b 0%,#efd391 55%,#8bd1cf 100%);clip-path:polygon(0 15%,31% 0,74% 25%,100% 3%,96% 72%,59% 100%,6% 78%)}
.panel-brand{display:flex;align-items:center;justify-content:flex-start;margin:2px 0 21px}.panel-wordmark{font-size:23px;gap:.13em;text-shadow:1px 2px 0 #082333}
.modal-card h2{font:48px/1.05 var(--brand-font);text-transform:uppercase;letter-spacing:-.01em;color:var(--brand-cream);margin:0 0 26px}
.modal-heading{align-items:center;margin-bottom:26px;gap:16px}.modal-heading h2{margin:0}.close-button{width:35px;height:35px;flex:0 0 auto;border-radius:5px;border-color:#eddca72d;color:#d9dccd;background:#081e281f}
.close-button:hover{border-color:#e7c57880;background:#efd09c0c;color:var(--brand-cream)}
.pause-card{width:min(470px,100%)}.pause-card h2{font-size:62px;margin-bottom:26px}.pause-actions{gap:10px;margin-top:10px}.pause-actions .secondary-button{padding-block:13px}
.controls-details{border-top:1px solid #e4d0a123;margin-top:25px;color:#b9c9c7}
.controls-details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:17px 0 3px;font-size:12px;line-height:1.3;user-select:none}
.controls-details>summary::-webkit-details-marker{display:none}.controls-details>summary:hover{color:var(--brand-cream)}.controls-details>summary>span{font-size:19px;line-height:1;transition:transform .15s;color:var(--brand-gold)}.controls-details[open]>summary>span{transform:rotate(45deg)}
.controls-details .controls-grid{border:0;margin:0;padding-top:20px;gap:13px 18px}.controls-grid>span{font-size:10px;gap:7px}.controls-grid kbd{font-size:8px;border-color:#e0d1b337;background:#eee1c405;color:#dddac6;border-radius:3px}
.pause-card>.quiet-button{margin:20px auto -7px;font-size:11px;color:#9fadae}.pause-card>.quiet-button:hover{color:var(--brand-cream)}
.settings-card output{color:var(--brand-gold)}.settings-card input{accent-color:var(--brand-gold);height:6px}.settings-card>label{color:#e8e2d3}
.quality-options button{border-color:#eddaa22a;background:#061c2833;color:#becbc8;border-radius:4px}.quality-options button:hover{border-color:#eed29177;color:var(--brand-cream)}.quality-options .selected{background:#edc56b15;color:var(--brand-gold);border-color:#efc56b99}
.scoreboard-card{width:min(850px,100%)}.scoreboard-card .panel-brand{margin-bottom:17px}.scoreboard-card h2{font-size:43px}.scoreboard-card .modal-heading{margin-bottom:18px}.scoreboard-team>header>strong{font-family:var(--brand-font);font-weight:400;font-size:33px}.score-table th{color:#a6b6b7}
.results-card .panel-brand{justify-content:center;margin-bottom:25px}.results-card h2{font-size:49px;line-height:1.04;margin-bottom:25px;text-wrap:balance}.results-card.defeat h2{color:#f2c7ac}.results-score b{font:58px/1 var(--brand-font)}.results-score>span{min-width:112px}.results-score{gap:20px}.result-player>div:last-child>b{font-family:var(--font);font-size:17px;font-weight:600}.results-card>.primary-button{margin-top:3px}
.pointer-resume{background:#102b3beF;border-color:#efc56b7a;color:var(--brand-cream);box-shadow:0 5px 24px #04142135}.pointer-resume:hover{border-color:var(--brand-gold);background:#143643}
@media(min-width:1500px) and (min-height:850px){.lobby-heading h1{font-size:76px}}
@media(min-width:601px) and (max-height:820px){.lobby-heading h1{font-size:53px}}
@media(max-width:820px){.lobby-heading h1{font-size:47px}}
@media(max-width:600px){.menu-wordmark{font-size:22px}.lobby-heading h1{font-size:41px;letter-spacing:-.015em}.overlay-panel{padding:16px}.modal-card{padding:26px;max-height:calc(100dvh - 32px);border-radius:10px}.modal-card:before{left:22px;right:22px}.panel-brand{margin-bottom:20px}.panel-wordmark{font-size:22px}.modal-card h2{font-size:42px}.pause-card h2{font-size:57px;margin-bottom:24px}.primary-button{font-size:23px;padding:15px 19px}.controls-details .controls-grid{gap:13px 17px}.controls-grid>span{font-size:10px}.scoreboard-card h2{font-size:37px}.scoreboard-teams{gap:22px}.scoreboard-card .panel-brand{margin-bottom:16px}.results-card h2{font-size:44px}.results-score b{font-size:54px}.results-score>span{min-width:90px}.results-score small{font-size:11px}.score-table th{font-size:9px}}
@media(max-width:380px){.modal-card{padding:23px}.controls-details .controls-grid{grid-template-columns:1fr;gap:11px}.controls-grid>span{font-size:11px}.lobby-heading h1{font-size:34px}.panel-wordmark{font-size:20px}.results-card h2{font-size:38px}.results-score{gap:13px}.results-score small{font-size:9px}.results-score>span{min-width:80px}}
@media(prefers-reduced-motion:reduce){.controls-details>summary>span{transition:none}}
@media(max-width:600px){.scoreboard-card{padding:23px}.scoreboard-card .panel-brand{margin-bottom:10px}.scoreboard-card .modal-heading{margin-bottom:12px}.scoreboard-teams{gap:12px}}
