@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/outfit-latin-ext-400-normal-5tcqmc2S.woff2)format("woff2"),url(/assets/outfit-latin-ext-400-normal-DHm7mdGe.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/outfit-latin-400-normal-BGsTXAXT.woff2)format("woff2"),url(/assets/outfit-latin-400-normal-DMwTpYkH.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-ext-700-normal-CI4iH74K.woff2)format("woff2"),url(/assets/outfit-latin-ext-700-normal-fjS8-Gm7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-700-normal-Cu9v6i1X.woff2)format("woff2"),url(/assets/outfit-latin-700-normal-D4itBLBr.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-thai-400-normal-BEOmKAI1.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-400-normal-Dxb_unuU.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-latin-ext-400-normal-nBP59pVw.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-ext-400-normal-B-1H0YkH.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-latin-400-normal-BaWBrqFP.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-400-normal-Dh_FJjOB.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-thai-700-normal-Cm52XUnT.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-700-normal-C9ISMlQq.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-latin-ext-700-normal-uJk63onE.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-ext-700-normal-xdwl2Xg6.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-latin-700-normal-_dn-40wb.woff2)format("woff2"),url(/assets/noto-sans-thai-latin-700-normal-C4AMFKt5.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-ui:"Outfit", "Noto Sans Thai", sans-serif;--paper:#f5f0e5;--paper-shade:#e2daca;--ink:#21293b;--ink-soft:#586074;--blue:#3171c4;--red:#d04d39;--gold:#e4b125;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--ease:.18s ease;--sheet-shadow:0 4px 0 #21293b2e, 0 12px 24px #21293b2e}*{box-sizing:border-box}html,body{background:var(--ink);height:100%;color:var(--ink);font-family:var(--font-ui);-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}#game-canvas{width:100%;height:100%;display:block;position:fixed;inset:0}.is-hidden{display:none!important}#game-canvas.is-aiming{cursor:none}#hud{pointer-events:none;position:fixed;inset:0}.note{background:var(--paper);border:2px solid var(--ink);box-shadow:var(--sheet-shadow);padding:var(--space-1) var(--space-2);border-radius:4px}#scorebar{top:var(--space-2);align-items:center;gap:var(--space-2);font-size:24px;font-weight:700;display:flex;position:absolute;left:50%;transform:translate(-50%)rotate(-.6deg)}#score-blue{color:var(--blue)}#score-red{color:var(--red)}#range-panel{top:var(--space-2);gap:var(--space-3);color:var(--ink-soft);text-align:center;font-size:12px;display:flex;position:absolute;left:50%;transform:translate(-50%)rotate(-.6deg)}#range-panel strong{color:var(--ink);font-size:24px;display:block}#match-clock{color:var(--ink-soft);text-align:center;min-width:48px;font-size:16px;font-weight:400}#vitals{left:var(--space-3);bottom:var(--space-3);gap:var(--space-1);width:280px;display:grid;position:absolute;transform:rotate(.6deg)}.meter-label{justify-content:space-between;font-size:14px;font-weight:700;display:flex}.meter{border:2px solid var(--ink);background:var(--paper-shade);border-radius:2px;height:12px;overflow:hidden}.meter>div{height:100%;transition:width var(--ease)}#health-fill{background:var(--red)}#weapon-card{top:88px;right:var(--space-3);gap:var(--space-1);width:288px;padding:var(--space-2);display:grid;position:absolute;transform:rotate(.6deg)}#weapon-card-image{width:100%;display:block}#weapon-card-image.is-mirrored{transform:scaleX(-1)}#weapon-card-name{font-size:18px;font-weight:700}#weapon-card-stats{gap:4px var(--space-2);grid-template-columns:1fr auto;margin:0;font-size:14px;display:grid}#weapon-card-stats dt{color:var(--ink-soft)}#weapon-card-stats dd{text-align:right;margin:0;font-weight:700}#weapon-panel{right:var(--space-3);bottom:var(--space-3);text-align:right;position:absolute;transform:rotate(-.6deg)}#money-row{justify-content:flex-end;align-items:baseline;gap:var(--space-2);font-size:18px;font-weight:700;display:flex}#money-text{color:#287148}#buy-hint{color:var(--ink-soft);font-size:12px;font-weight:400}#slot-bar{color:var(--ink-soft);margin:4px 0;padding:0;font-size:12px;line-height:16px;list-style:none}#slot-bar li.is-empty{opacity:.45}#slot-bar li.is-active{color:var(--ink);font-weight:700}#buy-menu{padding:var(--space-3);background:#21293b4d;place-items:center;display:grid;position:fixed;inset:0}#buy-sheet{width:min(760px,100%);max-height:calc(100vh - 48px);padding:var(--space-3);overflow-y:auto}#buy-header{justify-content:space-between;align-items:baseline;display:flex}#buy-header h2{margin:0;font-size:24px}#buy-money{color:#287148;font-size:24px;font-weight:700}#buy-note{margin:0 0 var(--space-2);color:var(--ink-soft);font-size:14px}#buy-sections h3{margin:var(--space-2) 0 var(--space-1);font-size:14px}.buy-list{gap:var(--space-1);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.buy-item{padding:var(--space-1);font:400 14px var(--font-ui);color:var(--ink);text-align:left;background:var(--paper);border:2px solid var(--ink);cursor:pointer;transition:transform var(--ease), background var(--ease);border-radius:4px;gap:4px;display:grid}.buy-item img{object-fit:contain;width:100%;height:56px}.buy-item-name{font-weight:700}.buy-item:hover:enabled{background:var(--paper-shade);transform:translateY(-2px)}.buy-item:disabled{cursor:not-allowed;opacity:.5}#weapon-name{color:var(--ink-soft);font-size:14px}#ammo-text{font-size:28px;font-weight:700}#kill-feed{top:var(--space-2);right:var(--space-2);gap:var(--space-1);justify-items:end;margin:0;padding:0;font-size:14px;list-style:none;display:grid;position:absolute}#kill-feed li{background:var(--paper);border-left:4px solid var(--ink);padding:4px var(--space-1);box-shadow:var(--sheet-shadow)}#kill-feed li.team-blue{border-left-color:var(--blue)}#kill-feed li.team-red{border-left-color:var(--red)}#crosshair{width:28px;height:28px;transition:width var(--ease), height var(--ease);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#crosshair span{background:var(--ink);box-shadow:0 0 0 1px var(--paper);transition:background var(--ease);position:absolute}#crosshair span:first-child,#crosshair span:nth-child(2){width:2px;height:8px;left:calc(50% - 1px)}#crosshair span:first-child{top:0}#crosshair span:nth-child(2){bottom:0}#crosshair span:nth-child(3),#crosshair span:nth-child(4){width:8px;height:2px;top:calc(50% - 1px)}#crosshair span:nth-child(3){left:0}#crosshair span:nth-child(4){right:0}#crosshair.is-hit span{background:var(--paper);box-shadow:0 0 0 2px var(--ink)}#crosshair.is-headshot span{background:var(--gold)}#scope-mask{background:linear-gradient(var(--ink), var(--ink)) center / 2px 70vh no-repeat, linear-gradient(var(--ink), var(--ink)) center / 70vh 2px no-repeat, radial-gradient(circle at center, transparent 34vh, var(--ink) 35vh);position:absolute;inset:0}#scope-dot{background:var(--red);border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#flash-overlay{opacity:0;background:#fff;position:absolute;inset:0}#respawn-note{font-size:20px;font-weight:700;position:absolute;top:28%;left:50%;transform:translate(-50%)rotate(-1deg)}#scoreboard{min-width:360px;padding:var(--space-2);position:absolute;top:16%;left:50%;transform:translate(-50%)}#scoreboard table{border-collapse:collapse;width:100%}#scoreboard th,#scoreboard td{padding:4px var(--space-1);text-align:left;border-bottom:1px solid var(--paper-shade)}#scoreboard th{color:var(--ink-soft);font-size:12px}#scoreboard tr.team-blue td:first-child{color:var(--blue);font-weight:700}#scoreboard tr.team-red td:first-child{color:var(--red);font-weight:700}#panel-layer{padding:var(--space-3);background:#21293b59;place-items:center;display:grid;position:fixed;inset:0}#panel{width:min(880px,100%);padding:var(--space-4);background:var(--paper);border:2px solid var(--ink);box-shadow:var(--sheet-shadow);background-image:repeating-linear-gradient(#0000 0 31px,#b8d3ea 31px 32px);border-radius:4px;max-height:calc(100vh - 32px);overflow-y:auto;transform:rotate(-.5deg)}#panel h1{letter-spacing:.02em;margin:0;font-size:48px;font-weight:700;line-height:64px}#panel-subtitle{margin:0 0 var(--space-2);color:var(--ink-soft);font-size:18px;line-height:32px}#controls{gap:0 var(--space-2);margin:0 0 var(--space-3);grid-template-columns:auto 1fr;font-size:15px;line-height:32px;display:grid}#controls dt{font-weight:700}#controls dd{margin:0}.setting-row{align-items:center;gap:var(--space-2);grid-template-columns:112px 1fr 40px;font-size:15px;font-weight:700;line-height:32px;display:grid}.setting-row output{text-align:right}.setting-row input{appearance:none;background:var(--paper-shade);border:2px solid var(--ink);cursor:pointer;border-radius:2px;width:100%;height:8px;margin:0}.setting-row input::-webkit-slider-thumb{appearance:none;background:var(--ink);width:16px;height:24px;transition:background var(--ease);border-radius:2px}.setting-row input::-moz-range-thumb{background:var(--ink);border:none;border-radius:2px;width:16px;height:24px}.setting-row input:hover::-webkit-slider-thumb{background:var(--blue)}.setting-row input:focus-visible{outline:3px solid var(--gold);outline-offset:2px}#settings-view{width:min(560px,100%);margin:0 auto}#settings-title{margin:0 0 var(--space-1);font-size:24px;line-height:32px}#preview-frame{aspect-ratio:16/9;margin-bottom:var(--space-1);border:2px solid var(--ink);border-radius:2px;position:relative;overflow:hidden}#gun-preview{width:100%;height:100%;display:block}#preview-crosshair{background:linear-gradient(var(--ink), var(--ink)) center / 100% 2px no-repeat, linear-gradient(var(--ink), var(--ink)) center / 2px 100% no-repeat;width:12px;height:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.panel-buttons{gap:var(--space-1);margin-top:var(--space-2);display:flex}.panel-button{padding:var(--space-2);font:700 18px var(--font-ui);color:var(--paper);background:var(--ink);border:2px solid var(--ink);cursor:pointer;transition:transform var(--ease), background var(--ease);border-radius:4px;flex:1}.panel-button:hover{background:var(--blue);transform:translateY(-2px)}.panel-button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.panel-button.is-secondary{color:var(--ink);background:var(--paper);flex:none}.panel-button.is-secondary:hover{color:var(--paper);background:var(--blue)}.lobby-heading{margin:var(--space-1) 0;color:var(--ink-soft);font-size:14px;line-height:16px}#mode-list{gap:var(--space-1);grid-template-columns:repeat(4,1fr);display:grid}#mode-note{min-height:24px;margin:var(--space-1) 0;color:var(--ink-soft);font-size:14px;line-height:24px}#loadout-tabs{gap:var(--space-1);margin-bottom:var(--space-1);display:flex}#armory{gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.armory-slot-title{margin-bottom:4px;font-size:12px;font-weight:700;display:block}.armory-slot-items{gap:4px;display:flex}.lobby-card{padding:var(--space-1);font:700 15px var(--font-ui);color:var(--ink);background:var(--paper);border:2px solid var(--ink);cursor:pointer;transition:transform var(--ease), background var(--ease), color var(--ease);border-radius:4px}.lobby-card:hover:enabled{background:var(--paper-shade);transform:translateY(-2px)}.lobby-card:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.lobby-card.is-selected,.lobby-card.is-selected:hover:enabled{color:var(--paper);background:var(--ink)}.lobby-card:disabled{cursor:default}.armory-item{align-content:start;gap:4px;width:80px;padding:4px;font-size:11px;font-weight:400;line-height:14px;display:grid}.armory-item img{object-fit:contain;width:100%;height:40px}.armory-item.is-selected img{background:var(--paper);border-radius:2px}#objective-strip{align-items:center;gap:var(--space-1);white-space:nowrap;font-size:14px;font-weight:700;display:flex;position:absolute;top:72px;left:50%;transform:translate(-50%)rotate(.4deg)}.point-chip{text-align:center;background:var(--paper-shade);border:2px solid var(--ink);width:32px;height:32px;transition:background var(--ease), color var(--ease);border-radius:4px;line-height:28px}.point-chip.owner-blue{color:var(--paper);background:var(--blue)}.point-chip.owner-red{color:var(--paper);background:var(--red)}#round-wait-note{font-size:20px;font-weight:700;position:absolute;top:28%;left:50%;transform:translate(-50%)rotate(-1deg)}#objective-prompt{text-align:center;gap:4px;min-width:240px;font-size:15px;font-weight:700;display:grid;position:absolute;top:62%;left:50%;transform:translate(-50%)}#objective-progress{background:var(--gold);width:0}#round-banner{padding:var(--space-2) var(--space-3);white-space:nowrap;font-size:24px;font-weight:700;position:absolute;top:18%;left:50%;transform:translate(-50%)rotate(-.6deg)}#shop-header{justify-content:space-between;align-items:baseline;display:flex}#shop-header h2{margin:0;font-size:24px;line-height:32px}#shop-coins{color:#9c6e11;font-size:20px;font-weight:700}#shop-case-row{gap:var(--space-3);margin:var(--space-1) 0;align-items:center;display:flex}#shop-case{flex:none;width:200px}#shop-case.is-opening{animation:.14s linear infinite case-shake}@keyframes case-shake{0%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}to{transform:rotate(-3deg)}}#shop-case-actions{gap:var(--space-1);flex:1;display:grid}#shop-open-case:disabled{cursor:not-allowed;opacity:.5}#shop-reveal{min-height:96px;padding:var(--space-1);border-left:4px solid #0000;gap:4px;font-size:14px;display:grid}#shop-reveal img{object-fit:contain;justify-self:start;height:56px}#shop-reveal.rarity-common,.armory-item.rarity-common{border-color:#758ca3}#shop-reveal.rarity-rare,.armory-item.rarity-rare{border-color:#853bce}#shop-reveal.rarity-legendary,.armory-item.rarity-legendary{border-color:var(--gold)}#shop-inventory{flex-wrap:wrap;gap:4px;max-height:200px;font-size:14px;display:flex;overflow-y:auto}#shop-inventory p{color:var(--ink-soft);margin:0}#shop-inventory .armory-item{width:112px}#online-title{margin:0;font-size:24px;line-height:32px}#online-status,#online-note{min-height:24px;margin:0 0 var(--space-1);color:var(--ink-soft);-webkit-user-select:text;user-select:text;font-size:14px;line-height:24px}.online-field{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);grid-template-columns:112px 1fr;font-size:15px;font-weight:700;display:grid}.online-field input{padding:var(--space-1);font:400 15px var(--font-ui);color:var(--ink);background:var(--paper);border:2px solid var(--ink);transition:border-color var(--ease);-webkit-user-select:text;user-select:text;border-radius:4px}.online-field input:focus-visible{outline:3px solid var(--gold);outline-offset:2px}#online-room-header{align-items:center;gap:var(--space-2);font-size:14px;display:flex}#online-room-code{letter-spacing:.1em;-webkit-user-select:text;user-select:text;font-size:32px}#online-modes{gap:var(--space-1);grid-template-columns:repeat(3,1fr);display:grid}#online-teams{gap:var(--space-2);margin:var(--space-2) 0 var(--space-1);grid-template-columns:1fr 1fr;display:grid}.online-team h3{margin:0 0 var(--space-1);font-size:16px}.online-team.team-blue h3{color:var(--blue)}.online-team.team-red h3{color:var(--red)}.online-team ul{gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.online-team li{align-items:center;gap:var(--space-1);min-height:32px;display:flex}.online-team li span{flex:1}.online-team .lobby-card{padding:4px var(--space-1);font-size:13px}
