:root{--bg-dark: #0a0d14;--bg-card: rgba(18, 24, 38, .85);--bg-glass: rgba(255, 255, 255, .05);--border-neon: rgba(56, 189, 248, .25);--accent-cyan: #06b6d4;--accent-blue: #3b82f6;--accent-purple: #8b5cf6;--accent-amber: #f59e0b;--accent-rose: #f43f5e;--text-main: #f8fafc;--text-muted: #94a3b8;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}html,body{width:100%;height:100%;overflow:hidden;background-color:var(--bg-dark);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--text-main)}.pk-arena-root{display:flex;flex-direction:column;width:100%;height:100%;max-height:100dvh;position:relative;background:radial-gradient(circle at 50% 10%,#172554,#0a0d14 70%);overflow:hidden}.pk-hud-header{display:flex;align-items:center;justify-content:space-between;padding:max(6px,env(safe-area-inset-top,0px)) 16px 6px;background:linear-gradient(180deg,#0a0d14eb,#0a0d148c);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:none;z-index:25;flex-shrink:0;gap:8px}.hud-brand{display:flex;align-items:center;gap:8px;flex-shrink:0}.hud-title-group{display:flex;align-items:center;gap:6px;white-space:nowrap}.hud-logo-icon{font-size:20px;filter:drop-shadow(0 0 8px rgba(6,182,212,.6))}.hud-title{font-size:18px;font-weight:900;letter-spacing:-.5px;background:linear-gradient(135deg,#38bdf8,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.1}.hud-subtitle{display:block;font-size:8px;color:var(--text-muted);font-weight:700;letter-spacing:1px}.hud-room-badge{display:flex;align-items:center;gap:6px;background:#ffffff0f;padding:4px 10px;border-radius:20px;border:none}.room-label{font-size:9px;color:var(--accent-cyan);font-weight:800}.room-code{font-size:13px;font-weight:800;letter-spacing:1.5px;font-family:monospace}.btn-copy-code{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;padding:2px;border-radius:4px}.btn-copy-code:hover{color:var(--text-main);background:#ffffff1a}.hud-net-badge{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;background:#ffffff0d;padding:4px 10px;border-radius:20px;border:none}.net-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px #22c55e}.net-dot.connecting{background:#eab308;box-shadow:0 0 8px #eab308}.net-dot.disconnected{background:#ef4444;box-shadow:0 0 8px #ef4444}.hud-actions{display:flex;align-items:center;gap:6px}.hud-btn{background:#ffffff12;border:none;color:var(--text-main);padding:6px 10px;border-radius:8px;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.hud-btn:hover{background:#ffffff29;transform:translateY(-1px)}.hud-btn.is-active{background:var(--accent-cyan);color:#000}.hud-btn-danger:hover{background:var(--accent-rose)}.pk-battlefield{flex:1;display:flex;align-items:center;justify-content:center;padding:12px;gap:16px;position:relative;overflow:hidden}.player-zone{display:flex;flex-direction:column;align-items:center;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;border-radius:0;padding:0;box-shadow:none;position:relative}.local-zone{width:min(88vw,360px);flex-shrink:0}.rival-zone{width:min(75vw,290px);opacity:.95;flex-shrink:0}.zone-header,.rival-radar-header{width:100%;display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;gap:6px;overflow:hidden}.player-profile{display:flex;align-items:center;gap:6px;flex:1;min-width:0;overflow:hidden}.player-avatar{font-size:20px}.profile-info{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden}.player-name{font-size:13px;font-weight:700;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-role-badge,.score-title,.rival-zone:has(.enemies-mini-grid.multi-enemies) .dmc-widget{display:none}.dmc-widget{display:flex;flex-direction:column;align-items:center;min-width:34px;flex-shrink:0}.dmc-letter-wrap{position:relative}.dmc-letter{font-size:20px;font-weight:900;font-style:italic;line-height:1;background:linear-gradient(180deg,#facc15,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 6px rgba(245,158,11,.6))}.dmc-letter.rank-s,.dmc-letter.rank-ss,.dmc-letter.rank-sss{background:linear-gradient(180deg,#f43f5e,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:dmcPulse .5s infinite alternate ease-in-out}@keyframes dmcPulse{0%{transform:scale(1);filter:drop-shadow(0 0 6px #f43f5e)}to{transform:scale(1.15);filter:drop-shadow(0 0 12px #ec4899)}}.dmc-gauge-wrap{width:36px;height:4px;background:#ffffff26;border-radius:2px;overflow:hidden;margin-top:2px}.dmc-gauge-bar{height:100%;background:linear-gradient(90deg,#f59e0b,#ef4444);transition:width .1s linear}.score-card{position:relative;background:transparent;border:none;border-radius:0;padding:0 2px;text-align:right;min-width:48px;flex-shrink:0}.score-title{display:block;font-size:8px;font-weight:800;color:var(--text-muted)}.score-number{display:block;font-size:19px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;color:#38bdf8;line-height:1.05;text-shadow:0 2px 10px rgba(56,189,248,.35)}.rival-score-card .score-number{color:#c084fc;text-shadow:0 2px 10px rgba(192,132,252,.35)}.score-popup{position:absolute;top:-12px;right:6px;font-size:12px;font-weight:800;color:#facc15;pointer-events:none;opacity:0;transform:translateY(0)}.score-popup.show{animation:scoreFloat .6s ease-out forwards}@keyframes scoreFloat{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-16px)}}.attack-charge-wrap{width:100%;margin-bottom:6px}.charge-label-row{display:flex;justify-content:space-between;font-size:9.5px;font-weight:800;margin-bottom:3px}.charge-title{color:var(--accent-cyan)}.charge-status{color:#a3e635}.charge-track{width:100%;height:5px;background:#ffffff1a;border-radius:999px;overflow:hidden}.charge-fill{height:100%;background:linear-gradient(90deg,#06b6d4,#3b82f6,#ec4899);transition:width .2s ease-out}.board-wrapper{--board-size: min(80vw, 320px);--cell-gap: 8px;--cell-size: calc((var(--board-size) - (var(--cell-gap) * 5)) / 4);position:relative;width:var(--board-size);height:var(--board-size);background:#0f172ae6;border-radius:var(--radius-md);padding:var(--cell-gap);border:none;box-shadow:0 14px 36px #0000008c,inset 0 1px #ffffff14;touch-action:none}.grid-container{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:var(--cell-gap);width:100%;height:100%}.grid-cell{background:#ffffff0e;border-radius:clamp(2.5px,calc(var(--cell-size) * .13),8px);border:none}.tile-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.tile{position:absolute;top:0;left:0;width:var(--cell-size);height:var(--cell-size);transition:transform 95ms cubic-bezier(.2,0,.2,1);will-change:transform;pointer-events:none}.tile-inner{width:100%;height:100%;border-radius:clamp(2.5px,calc(var(--cell-size) * .13),8px);display:flex;align-items:center;justify-content:center;font-weight:800;text-align:center;line-height:1;box-sizing:border-box;will-change:transform;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.tile-new .tile-inner{animation:tileSpawn .16s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes tileSpawn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.tile-merged .tile-inner{animation:tileMergePop .2s cubic-bezier(.2,.9,.3,1.3) forwards}.tile-merged-away .tile-inner{opacity:0;transform:scale(.75);transition:opacity 85ms ease-out,transform 85ms ease-out}@keyframes tileMergePop{0%{transform:scale(.82)}45%{transform:scale(1.22)}75%{transform:scale(.96)}to{transform:scale(1)}}.tile-popup-score{position:absolute;top:0;left:50%;transform:translate(-50%);font-size:clamp(14px,3.8vw,20px);font-weight:900;color:#f59e0b;text-shadow:0 2px 4px rgba(0,0,0,.4),0 0 12px rgba(245,158,11,.7);pointer-events:none;z-index:60;white-space:nowrap;animation:tileScoreFloat .65s cubic-bezier(.16,1,.3,1) forwards}@keyframes tileScoreFloat{0%{opacity:0;transform:translate(-50%,4px) scale(.6)}25%{opacity:1;transform:translate(-50%,-14px) scale(1.2)}65%{opacity:.95;transform:translate(-50%,-28px) scale(1)}to{opacity:0;transform:translate(-50%,-44px) scale(.85)}}.tile-2{background:#fff7ed;color:#92400e;font-size:calc(var(--cell-size) * .48);box-shadow:0 2px 8px #fbbf242e,inset 0 1px 1px #fff}.tile-4{background:#fed7aa;color:#9a3412;font-size:calc(var(--cell-size) * .48);box-shadow:0 2px 10px #f9731633,inset 0 1px 1px #fff}.tile-8{background:#fb923c;color:#fff;font-size:calc(var(--cell-size) * .48);box-shadow:0 3px 12px #f9731659,inset 0 1px 1px #ffffff73}.tile-16{background:#fb7185;color:#fff;font-size:calc(var(--cell-size) * .44);box-shadow:0 4px 14px #f43f5e61,inset 0 1px 1px #ffffff73}.tile-32{background:#f43f5e;color:#fff;font-size:calc(var(--cell-size) * .44);box-shadow:0 4px 16px #e11d486b,inset 0 1px 1px #ffffff73}.tile-64{background:#e11d48;color:#fff;font-size:calc(var(--cell-size) * .44);box-shadow:0 4px 18px #be123c7a,inset 0 1px 1px #ffffff80}.tile-128{background:#8b5cf6;color:#fff;font-size:calc(var(--cell-size) * .38);box-shadow:0 4px 20px #8b5cf685,inset 0 1px 1px #fff9}.tile-256{background:#0ea5e9;color:#fff;font-size:calc(var(--cell-size) * .38);box-shadow:0 4px 22px #0ea5e98c,inset 0 1px 1px #fff9}.tile-512{background:#10b981;color:#fff;font-size:calc(var(--cell-size) * .38);box-shadow:0 4px 24px #10b9818c,inset 0 1px 1px #fff9}.tile-1024{background:#f59e0b;color:#fff;font-size:calc(var(--cell-size) * .3);box-shadow:0 6px 26px #f59e0ba6,inset 0 1px 2px #ffffffb3}.tile-2048{background:linear-gradient(135deg,#f59e0b,#ec4899,#8b5cf6);color:#fff;font-size:calc(var(--cell-size) * .3);box-shadow:0 0 30px #ec4899bf,inset 0 0 8px #fffc}.tile-super{background:linear-gradient(135deg,#06b6d4,#3b82f6,#8b5cf6 70%,#ec4899);color:#fff;font-size:calc(var(--cell-size) * .26);box-shadow:0 0 32px #8b5cf6cc,inset 0 0 12px #ffffffe6;border:1.5px solid rgba(255,255,255,.7)}.tile.tile-pending-eject{z-index:45}.tile.tile-pending-eject .tile-inner{position:relative;border:2px solid #22d3ee!important;box-shadow:0 0 0 2px #22d3ee59,0 0 18px #22d3eed9,inset 0 0 10px #facc15bf!important;animation:pendingEjectPulse .42s infinite alternate ease-in-out!important}.tile.tile-pending-eject .tile-inner:after{content:"待发射";position:absolute;top:-6px;right:-4px;padding:1px 4px;border-radius:999px;background:linear-gradient(135deg,#06b6d4,#f59e0b);color:#fff;font-size:clamp(8px,calc(var(--cell-size) * .16),11px);font-weight:900;line-height:1.2;letter-spacing:.02em;box-shadow:0 2px 6px #00000080;pointer-events:none}@keyframes pendingEjectPulse{0%{transform:scale(.96) translateY(0);filter:brightness(1.05)}to{transform:scale(1.08) translateY(-2px);filter:brightness(1.25)}}.tile-obstacle .tile-inner{background:radial-gradient(circle,#2d131f,#0f172a);color:#f43f5e;border:2px dashed #f43f5e;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;animation:glitchShake .9s infinite ease-in-out;box-shadow:0 0 16px #f43f5e80,inset 0 0 8px #f43f5e33}.obs-lock-icon{font-size:calc(var(--cell-size) * .28);line-height:1}.obs-countdown{font-size:calc(var(--cell-size) * .26);font-weight:900;color:#f43f5e;line-height:1}@keyframes glitchShake{0%{transform:translate(0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,-1px)}75%{transform:translate(-1px,-1px)}to{transform:translate(0)}}.danger-vignette{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-md);box-shadow:inset 0 0 25px #ef4444b3;opacity:0;pointer-events:none;transition:opacity .3s ease}.board-wrapper.in-danger .danger-vignette{opacity:1;animation:dangerPulse 1s infinite alternate}@keyframes dangerPulse{0%{box-shadow:inset 0 0 15px #ef444480}to{box-shadow:inset 0 0 35px #ef4444e6}}.fog-blind-layer{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-md);background:radial-gradient(circle,#0f172af2,#1e293bfa);opacity:0;pointer-events:none;transition:opacity .3s ease}.board-wrapper.fog-active .fog-blind-layer{opacity:1}.pk-center-divider{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:5}.vs-emblem{font-size:24px;font-weight:900;font-style:italic;background:linear-gradient(135deg,#f43f5e,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 10px rgba(56,189,248,.5))}.pk-combat-log{max-width:280px;text-align:center;font-size:11px;font-weight:700;color:#cbd5e1;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rival-mirror-wrapper{--rival-size: min(60vw, 240px);--cell-gap: 6px;--cell-size: calc((var(--rival-size) - (var(--cell-gap) * 5)) / 4);position:relative;width:var(--rival-size);height:var(--rival-size);background:#0f172adb;border-radius:var(--radius-md);padding:var(--cell-gap);border:none;box-shadow:0 8px 22px #0000007a,inset 0 1px #ffffff0f}.rival-grid-container{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:var(--cell-gap);width:100%;height:100%}.rival-grid-cell{background:#ffffff0d;border-radius:clamp(2.5px,calc(var(--cell-size) * .13),6px)}.rival-tile-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.rival-status-bar{width:100%;text-align:center;margin-top:6px}.rival-status-text{font-size:10px;color:#c084fc;font-weight:600}.pk-footer-controls{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 16px 14px;z-index:20;flex-shrink:0}.emote-bar{display:flex;align-items:center;gap:5px;flex-shrink:0}.btn-emote{background:#ffffff12;border:none;color:#cbd5e1;font-size:10px;font-weight:800;cursor:pointer;padding:2px 7px;border-radius:5px;transition:all .15s ease;white-space:nowrap}.btn-emote:hover{background:#38bdf840;color:#fff;transform:translateY(-1px)}.btn-emote:active{transform:scale(.92)}.virtual-dpad{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,40px);gap:4px}.dpad-btn{background:#ffffff1a;border:none;color:#fff;border-radius:8px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center}.dpad-btn:active{background:var(--accent-cyan);color:#000}.dpad-up{grid-column:2;grid-row:1}.dpad-left{grid-column:1;grid-row:2}.dpad-right{grid-column:3;grid-row:2}.dpad-down{grid-column:2;grid-row:3}.pk-effect-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:260}.floating-emote{position:absolute;font-size:38px;animation:emoteFloatUp 1.8s ease-out forwards;pointer-events:none}@keyframes emoteFloatUp{0%{opacity:0;transform:translateY(20px) scale(.6)}20%{opacity:1;transform:translateY(0) scale(1.2)}80%{opacity:1;transform:translateY(-80px) scale(1)}to{opacity:0;transform:translateY(-130px) scale(.8)}}.ballistic-orb{position:absolute;left:0;top:0;width:42px;height:42px;margin-left:-21px;margin-top:-21px;border-radius:50%;pointer-events:none;z-index:82;will-change:transform}.orb-core{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 18px currentColor,0 0 34px currentColor;border:2px solid rgba(255,255,255,.92);animation:orbPulse .22s infinite alternate ease-in-out}.orb-label{font-size:11px;font-weight:900;color:#fff;letter-spacing:-.5px;line-height:1;text-shadow:0 1px 4px rgba(0,0,0,.9);white-space:nowrap}@keyframes orbPulse{0%{transform:scale(.94)}to{transform:scale(1.1)}}.orb-outbound{color:#38bdf8;background:radial-gradient(circle,#e0f2fe 8%,#0ea5e9 55%,#0369a1 95%);filter:drop-shadow(0 0 12px #38bdf8)}.orb-inbound{color:#f43f5e;background:radial-gradient(circle,#ffe4e6 8%,#f43f5e 55%,#9f1239 95%);filter:drop-shadow(0 0 14px #f43f5e)}.target-reticle{position:absolute;width:48px;height:48px;margin-left:-24px;margin-top:-24px;border-radius:50%;border:2px dashed currentColor;pointer-events:none;z-index:78;animation:reticleLock .52s linear forwards}.reticle-outbound{color:#38bdf8;box-shadow:0 0 14px #38bdf873,inset 0 0 10px #38bdf840}.reticle-inbound{color:#f43f5e;box-shadow:0 0 16px #f43f5e8c,inset 0 0 12px #f43f5e4d}@keyframes reticleLock{0%{opacity:.3;transform:scale(1.6) rotate(0)}to{opacity:.95;transform:scale(.85) rotate(90deg)}}.projectile-spark{position:absolute;width:10px;height:10px;margin-left:-5px;margin-top:-5px;border-radius:50%;pointer-events:none;z-index:79;animation:sparkFade .28s cubic-bezier(.1,.8,.3,1) forwards}@keyframes sparkFade{0%{opacity:.92;transform:scale(1.15)}to{opacity:0;transform:scale(.2)}}.spark-outbound{background:#38bdf8;box-shadow:0 0 10px #38bdf8}.spark-inbound{background:#f43f5e;box-shadow:0 0 12px #f43f5e}.shockwave-ring{position:absolute;width:16px;height:16px;margin-left:-8px;margin-top:-8px;border-radius:50%;border:4px solid currentColor;pointer-events:none;z-index:85;animation:shockwaveExpand .44s cubic-bezier(.1,.7,.1,1) forwards}@keyframes shockwaveExpand{0%{opacity:1;transform:scale(1);border-width:6px}to{opacity:0;transform:scale(12);border-width:1px}}.ring-outbound{color:#38bdf8;box-shadow:0 0 22px #38bdf8}.ring-inbound{color:#f43f5e;box-shadow:0 0 24px #f43f5e}.impact-float-badge{position:absolute;transform:translate(-50%,-50%);padding:4px 12px;border-radius:999px;font-size:14px;font-weight:900;letter-spacing:.5px;white-space:nowrap;pointer-events:none;z-index:90;animation:impactBadgePop .92s cubic-bezier(.16,1,.3,1) forwards}.badge-outbound{background:#0284c7f2;color:#fff;border:1.5px solid #bae6fd;box-shadow:0 4px 18px #38bdf8bf}.badge-inbound{background:#be123cf2;color:#fff;border:1.5px solid #fecdd3;box-shadow:0 4px 20px #f43f5ecc}.badge-defended{background:linear-gradient(135deg,#059669,#0284c7);color:#fff;border:1.5px solid #a7f3d0;box-shadow:0 4px 22px #10b981d9}.badge-missed{background:linear-gradient(135deg,#f59e0b,#ec4899 55%,#06b6d4);color:#fff;border:1.5px solid #fef08a;box-shadow:0 4px 24px #f59e0bd9,0 0 14px #06b6d4b3;font-style:italic;letter-spacing:.5px}.board-dodge-miss{box-shadow:-14px 0 24px #38bdf8a6,14px 0 24px #facc15a6,inset 0 0 18px #facc1573!important;border-color:#fde047!important;animation:dodgeAfterimageStep .52s cubic-bezier(.16,1,.3,1)}@keyframes dodgeAfterimageStep{0%{transform:translateZ(0);filter:brightness(1.35)}25%{transform:translate3d(10px,-2px,0) skew(-3deg);filter:brightness(1.45)}60%{transform:translate3d(-4px,0,0) skew(1deg)}to{transform:translateZ(0);filter:brightness(1)}}.board-shield-parry{box-shadow:0 0 28px #10b981cc,inset 0 0 22px #38bdf8a6!important;border-color:#34d399!important;animation:shieldParryPulse .6s cubic-bezier(.16,1,.3,1)}@keyframes shieldParryPulse{0%{transform:scale(1);filter:brightness(1.35)}35%{transform:scale(1.02)}to{transform:scale(1);filter:brightness(1)}}@keyframes impactBadgePop{0%{opacity:0;transform:translate(-50%,-10%) scale(.5)}22%{opacity:1;transform:translate(-50%,-65%) scale(1.12)}75%{opacity:1;transform:translate(-50%,-115%) scale(1)}to{opacity:0;transform:translate(-50%,-145%) scale(.92)}}.tile.tile-dropped-pulse .tile-inner{box-shadow:0 0 0 3px #f43f5e,0 0 20px #f43f5ed9!important;animation:droppedTileFlash .9s ease-out forwards}@keyframes droppedTileFlash{0%{transform:scale(1.28)}40%{transform:scale(.94)}to{transform:scale(1)}}.tile.tile-downgraded-pulse .tile-inner{box-shadow:0 0 0 3px #f43f5e,0 0 24px #f43f5ee6!important;animation:downgradedTileFlash .65s ease-out forwards}@keyframes downgradedTileFlash{0%{transform:scale(.75);filter:brightness(1.7)}55%{transform:scale(1.08)}to{transform:scale(1);filter:brightness(1)}}.tile-slash-fx-wrap{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:45;overflow:visible}.tile-split-half{position:absolute!important;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;will-change:transform,opacity}.tile-split-half.half-top-left{clip-path:polygon(0 0,100% 0,0 100%);animation:tearHalfTopLeft .52s cubic-bezier(.16,1,.3,1) forwards}.tile-split-half.half-bottom-right{clip-path:polygon(100% 0,100% 100%,0 100%);animation:tearHalfBottomRight .52s cubic-bezier(.16,1,.3,1) forwards}@keyframes tearHalfTopLeft{0%{transform:translateZ(0) rotate(0);opacity:1;filter:brightness(1.6)}28%{transform:translate3d(-11px,-11px,0) rotate(-9deg);opacity:.96}to{transform:translate3d(-24px,-22px,0) rotate(-18deg) scale(.8);opacity:0}}@keyframes tearHalfBottomRight{0%{transform:translateZ(0) rotate(0);opacity:1;filter:brightness(1.6)}28%{transform:translate3d(11px,11px,0) rotate(9deg);opacity:.96}to{transform:translate3d(24px,22px,0) rotate(18deg) scale(.8);opacity:0}}.slash-blade-beam{position:absolute;top:50%;left:50%;width:175%;height:5px;background:linear-gradient(90deg,transparent 0%,#fb7185 18%,#ffffff 50%,#38bdf8 82%,transparent 100%);box-shadow:0 0 14px #fff,0 0 26px #f43f5e;border-radius:999px;transform:translate(-50%,-50%) rotate(-45deg) scaleX(.1);pointer-events:none;z-index:48;animation:bladeSlashStrike .38s cubic-bezier(.1,.9,.2,1) forwards}@keyframes bladeSlashStrike{0%{opacity:0;transform:translate(-50%,-50%) rotate(-45deg) scaleX(.15) scaleY(1.8)}25%{opacity:1;transform:translate(-50%,-50%) rotate(-45deg) scaleX(1.15) scaleY(1.4)}to{opacity:0;transform:translate(-50%,-50%) rotate(-45deg) scaleX(1.3) scaleY(.1)}}.tile-drain-score{position:absolute;top:-10px;left:50%;transform:translate(-50%);padding:2px 7px;border-radius:8px;background:#0f172aeb;border:1px solid #f43f5e;font-size:12px;font-weight:900;color:#fda4af;box-shadow:0 2px 10px #f43f5e99;pointer-events:none;animation:tileScoreFloat .9s cubic-bezier(.2,.8,.2,1) forwards;z-index:60;white-space:nowrap}.board-overcharge-aura{box-shadow:0 0 25px #f43f5e8c,inset 0 0 15px #f43f5e4d!important;border-color:#f43f5ecc!important;animation:overchargePulse 1.2s infinite alternate ease-in-out}@keyframes overchargePulse{0%{filter:brightness(1)}to{filter:brightness(1.12)}}.board-impact-shake{animation:impactShake .35s cubic-bezier(.36,.07,.19,.97) both}@keyframes impactShake{10%,90%{transform:translate3d(-3px,-2px,0)}20%,80%{transform:translate3d(5px,2px,0)}30%,50%,70%{transform:translate3d(-7px,3px,0)}40%,60%{transform:translate3d(7px,-3px,0)}}.pk-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}input,.form-input,.nickname-input,.join-code-input{color:#f8fafc!important;background:#ffffff12!important;border:none!important;-webkit-text-fill-color:#f8fafc!important;outline:none}input:focus,.form-input:focus,.nickname-input:focus,.join-code-input:focus{background:#ffffff1f!important;box-shadow:0 0 12px #38bdf859!important}input::placeholder,.form-input::placeholder,.nickname-input::placeholder,.join-code-input::placeholder{color:#fff6!important;-webkit-text-fill-color:rgba(255,255,255,.4)!important}.player-avatar-tag{font-size:11px;font-weight:900;background:#0284c7;color:#fff;padding:2px 7px;border-radius:4px;letter-spacing:.5px}.player-avatar-tag.rival{background:#9333ea}.pk-chase-banner{margin:0;z-index:20}@keyframes chasePulse{0%{transform:scale(.995);opacity:.92}to{transform:scale(1.005);opacity:1}}.pk-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0d14e0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:120}.loading-spinner{width:32px;height:32px;border:3px solid rgba(56,189,248,.2);border-top-color:#38bdf8;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:13px;font-weight:700;color:#38bdf8;letter-spacing:.5px}.lobby-card-compact{width:100%;max-width:520px;background:#0f172a;border:1px solid rgba(56,189,248,.28);border-radius:var(--radius-md);padding:20px 22px;box-shadow:0 20px 50px #000c,0 0 24px #38bdf829;display:flex;flex-direction:column;gap:16px}.lobby-header-compact{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:12px}.brand-row{display:flex;align-items:baseline;gap:8px}.brand-title{font-size:20px;font-weight:900;color:#f8fafc;letter-spacing:.5px}.brand-sub{font-size:11px;color:var(--text-muted)}.nickname-field{display:flex;align-items:center;background:#ffffff0f;border:none;border-radius:var(--radius-sm);padding:3px 10px;gap:8px}.nickname-tag{font-size:11px;font-weight:800;color:var(--text-muted)}.nickname-input{border:none!important;background:transparent!important;color:#f8fafc!important;font-size:13px;font-weight:700;width:96px;outline:none;padding:4px 2px}.primary-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hero-card{display:flex;align-items:center;gap:14px;border:none;border-radius:10px;padding:16px 18px;cursor:pointer;text-align:left;transition:all .2s cubic-bezier(.16,1,.3,1)}.hero-card:active{transform:scale(.98)}.hero-create{background:linear-gradient(135deg,#0284c7,#2563eb);color:#fff;box-shadow:0 4px 16px #2563eb66}.hero-create:hover:not(:disabled){background:linear-gradient(135deg,#0369a1,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 24px #2563eb8c}.hero-ai{background:linear-gradient(135deg,#7c3aed,#9333ea);color:#fff;box-shadow:0 4px 16px #9333ea59}.hero-ai:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#7e22ce);transform:translateY(-2px);box-shadow:0 8px 24px #9333ea80}.hero-card:disabled{opacity:.7;cursor:not-allowed}.hero-icon-wrap{width:42px;height:42px;border-radius:8px;background:#ffffff29;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hero-text-col{display:flex;flex-direction:column;gap:2px}.hero-title{font-size:16px;font-weight:900;letter-spacing:.5px}.hero-tag{font-size:11px;opacity:.85;font-weight:600}.rooms-section-card{background:#00000047;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:14px 16px;display:flex;flex-direction:column;gap:12px}.rooms-section-header{display:flex;align-items:center;justify-content:space-between}.rooms-title-group{display:flex;align-items:center;gap:8px}.rooms-title{font-size:12px;font-weight:800;color:#cbd5e1;letter-spacing:.5px}.rooms-count-pill{background:#38bdf82e;color:#38bdf8;border:none;font-size:10px;font-weight:800;padding:1px 7px;border-radius:10px}.rooms-header-actions{display:flex;align-items:center;gap:8px}.btn-sub-action{background:#ffffff12;border:none;color:#cbd5e1;border-radius:var(--radius-sm);padding:5px 12px;font-size:11px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s ease}.btn-sub-action:hover{background:#ffffff24;color:#fff}.btn-toggle-join.is-active{background:#38bdf833;color:#38bdf8}.join-drawer-row{display:flex;gap:8px;align-items:center;background:linear-gradient(90deg,#38bdf81f,#38bdf808);border:none;border-radius:var(--radius-sm);padding:8px 10px;animation:drawerSlide .2s cubic-bezier(.16,1,.3,1)}@keyframes drawerSlide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.join-code-input{flex:1;min-width:0;height:34px;text-align:center;font-weight:800;font-size:13px;letter-spacing:2px;padding:0 8px;border-radius:4px}.btn-drawer-join{background:var(--accent-cyan);color:#042f2e;border:none;border-radius:4px;padding:0 16px;height:34px;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap;transition:all .15s ease}.btn-drawer-join:hover{background:#22d3ee}.btn-drawer-cancel{background:transparent;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:0 6px;line-height:1}.btn-drawer-cancel:hover{color:#fff}.rooms-card-grid{max-height:170px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:2px}.rooms-card-grid::-webkit-scrollbar{width:4px}.rooms-card-grid::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.room-card-item{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#ffffff0e,#ffffff04);border:none;border-radius:8px;padding:9px 14px;transition:all .15s ease}.room-card-item:hover{background:linear-gradient(90deg,#38bdf824,#ffffff08);transform:translateY(-1px);box-shadow:inset 3px 0 #38bdf8}.room-card-left{display:flex;flex-direction:column;gap:3px}.room-card-title{display:flex;align-items:baseline;gap:10px}.room-card-code{font-size:14px;font-weight:800;color:#38bdf8;letter-spacing:1px}.room-card-host{font-size:12px;color:#cbd5e1;font-weight:600}.room-card-time{font-size:10px;color:var(--text-muted)}.btn-card-enter{background:linear-gradient(135deg,#0284c7,#06b6d4);color:#fff;border:none;border-radius:6px;padding:6px 16px;font-size:12px;font-weight:800;cursor:pointer;transition:all .15s ease}.btn-card-enter:hover{transform:scale(1.05);box-shadow:0 2px 10px #06b6d466}.room-empty-card{text-align:center;padding:20px 8px;color:var(--text-muted);font-size:11px}@media (max-width: 520px){.primary-cards-grid{grid-template-columns:1fr;gap:10px}}.modal-footer{border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.tip-text{font-size:10px;color:#eab308;line-height:1.4}@media (max-width: 600px){.modes-grid-three{grid-template-columns:1fr;gap:8px}.mode-card{padding:10px}}.hud-mode-pill{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.4px;background:#38bdf824;color:#38bdf8;border:none}.hud-mode-pill.mode-endless{background:#f59e0b29;color:#fbbf24}.mode-selector-bar{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#0f172abf;padding:5px;border-radius:10px;border:1px solid rgba(255,255,255,.08)}.mode-tab{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:9px 12px;border-radius:7px;border:1px solid transparent;background:transparent;color:#94a3b8;cursor:pointer;text-align:left;transition:all .18s ease}.mode-tab:hover{background:#ffffff0a;color:#e2e8f0}.mode-tab.active[data-mode=classic_2048]{background:linear-gradient(135deg,#0284c73d,#2563eb2e);border-color:#38bdf88c;color:#f8fafc;box-shadow:0 4px 14px #0284c733}.mode-tab.active[data-mode=endless]{background:linear-gradient(135deg,#d9770640,#e11d4833);border-color:#fbbf2499;color:#f8fafc;box-shadow:0 4px 14px #f59e0b38}.mode-tab-top{display:flex;align-items:center;gap:6px}.mode-tab-dot{width:7px;height:7px;border-radius:50%;background:#94a3b873;transition:all .18s ease}.mode-tab.active[data-mode=classic_2048] .mode-tab-dot{background:#38bdf8;box-shadow:0 0 8px #38bdf8}.mode-tab.active[data-mode=endless] .mode-tab-dot{background:#fbbf24;box-shadow:0 0 8px #fbbf24}.mode-tab-name{font-size:13px;font-weight:800;letter-spacing:.3px}.mode-tab-desc{font-size:10px;color:#94a3b8;line-height:1.25}.mode-tab.active .mode-tab-desc{color:#cbd5e1}.board-climax-win{box-shadow:0 0 42px #eab308a6,inset 0 0 28px #10b98173!important;animation:climaxBoardPulse 1.1s cubic-bezier(.16,1,.3,1)}.board-climax-lose{box-shadow:0 0 36px #f43f5ea6,inset 0 0 24px #f43f5e66!important}@keyframes climaxBoardPulse{0%{transform:scale(1);filter:brightness(1.4)}35%{transform:scale(1.028);filter:brightness(1.15)}to{transform:scale(1);filter:brightness(1)}}.pk-settlement-overlay{background:radial-gradient(circle at 50% 18%,#0f172ae0,#04070ff0);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:150;padding:clamp(8px,2.2dvh,20px) clamp(12px,3vw,32px)!important;animation:overlayFadeIn .28s cubic-bezier(.16,1,.3,1)}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.pk-settlement-overlay.inspecting-board{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;pointer-events:none;align-items:flex-start;padding-top:max(6px,env(safe-area-inset-top,6px))!important}.pk-settlement-overlay.inspecting-board .settlement-modal-card{display:none!important}.settlement-inspect-floating-bar{display:none;pointer-events:auto;align-items:center;justify-content:space-between;gap:14px;background:#0f172aeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:999px;padding:6px 18px;box-shadow:0 10px 32px #000000bf;animation:drawerSlide .22s cubic-bezier(.16,1,.3,1)}.pk-settlement-overlay.inspecting-board .settlement-inspect-floating-bar{display:inline-flex}.inspect-bar-tip{font-size:12px;font-weight:800;color:#e2e8f0;white-space:nowrap}.inspect-bar-actions{display:inline-flex;align-items:center;gap:8px}.btn-inspect-restore{background:#38bdf838;color:#7dd3fc;border:none;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap;transition:all .15s ease}.btn-inspect-restore:hover{background:#38bdf861;color:#fff}.settlement-modal-card{width:min(96vw,1040px);height:min(92dvh,520px);max-height:calc(100dvh - 16px);background:transparent;border:none;padding:0;box-shadow:none;display:flex;flex-direction:column;justify-content:space-between;gap:clamp(8px,1.8dvh,14px);overflow:hidden;animation:modalCardPop .34s cubic-bezier(.16,1,.3,1)}@keyframes modalCardPop{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.settlement-header-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:clamp(6px,1.2dvh,10px);background:linear-gradient(90deg,rgba(255,255,255,.08) 0%,transparent 100%) bottom / 100% 1px no-repeat;flex-shrink:0}.settlement-verdict-left{display:flex;align-items:center;gap:14px;min-width:0;flex:1}.gameover-banner{font-size:clamp(24px,4.8dvh,34px);font-weight:900;font-style:italic;letter-spacing:2px;line-height:1;flex-shrink:0}.gameover-banner.win{background:linear-gradient(135deg,#fde047,#34d399 55%,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 16px rgba(52,211,153,.45))}.gameover-banner.lose{background:linear-gradient(135deg,#fb7185,#e11d48);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 16px rgba(244,63,94,.45))}.settlement-verdict-meta{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.settlement-verdict-top{display:flex;align-items:center;gap:8px;min-width:0}.gameover-mode-tag{font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:4px;background:#38bdf82e;color:#7dd3fc;border:none;white-space:nowrap;flex-shrink:0}.gameover-reason{font-size:clamp(12.5px,2.4dvh,15px);font-weight:800;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vs-tug-track{width:100%;max-width:320px;height:4px;border-radius:999px;background:#38bdf873;overflow:hidden}.vs-tug-fill-my{height:100%;background:linear-gradient(90deg,#f43f5e,#fb7185);transition:width .45s cubic-bezier(.16,1,.3,1)}.settlement-vs-pill{display:inline-flex;align-items:baseline;gap:7px;background:transparent;border:none;padding:0;white-space:nowrap;flex-shrink:0}.vs-team-label{font-size:11.5px;font-weight:800}.vs-team-label.red{color:#fb7185}.vs-team-label.blue{color:#38bdf8}.vs-side-score{font-size:clamp(16px,3.2dvh,21px);font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums}.vs-side-score.my-score{color:#fb7185}.vs-side-score.rival-score{color:#38bdf8}.dock-vs-colon{font-size:13px;color:#64748b;font-weight:900}.vs-diff-pill{font-size:11px;font-weight:800;padding:2px 8px;border-radius:4px;background:#ffffff14;color:#e2e8f0;border:none;margin-left:4px}.vs-diff-pill.diff-lead{background:#f43f5e38;color:#fda4af}.vs-diff-pill.diff-trail{background:#38bdf838;color:#7dd3fc}.settlement-split-grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(210px,280px) 1fr;gap:clamp(14px,2.4vw,28px);align-items:center;overflow:hidden}.settlement-board-showcase{height:100%;min-height:0;background:transparent;border:none;padding:4px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(8px,1.6dvh,12px);overflow:hidden}.showcase-player-header{width:100%;max-width:var(--snap-size, 236px);display:flex;align-items:center;justify-content:space-between;gap:6px;flex-shrink:0}.showcase-player-left{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.showcase-team-dot,.row-team-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-red{background:#f43f5e;box-shadow:0 0 8px #f43f5e}.dot-blue{background:#38bdf8;box-shadow:0 0 8px #38bdf8}.showcase-player-name{font-size:13.5px;font-weight:900;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.showcase-badges-row{display:inline-flex;align-items:center;flex-shrink:0}.showcase-rating-box{display:inline-flex;align-items:baseline;gap:4px;flex-shrink:0}.showcase-rating-num{font-size:15px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#fde047}.showcase-board-stage{display:flex;align-items:center;justify-content:center;flex-shrink:0}.settlement-snapshot-wrapper{--snap-size: clamp(156px, min(25vw, calc(100dvh - 165px) ), 244px);--cell-gap: 6px;--cell-size: calc((var(--snap-size) - (var(--cell-gap) * 5)) / 4);width:var(--snap-size);height:var(--snap-size);background:#0f172ad9;border-radius:12px;padding:var(--cell-gap);box-shadow:0 12px 32px #0000008c,inset 0 1px #ffffff14}.snapshot-grid-unified{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:var(--cell-gap);width:100%;height:100%}.snapshot-cell-slot{position:relative;width:100%;height:100%;background:#fff1;border-radius:clamp(3px,calc(var(--cell-size) * .13),7px);overflow:hidden}.snapshot-tile{width:100%;height:100%;animation:tileSpawn .2s cubic-bezier(.16,1,.3,1) backwards}.snapshot-tile .tile-inner{width:100%;height:100%;border-radius:clamp(3px,calc(var(--cell-size) * .13),7px)}.showcase-board-caption{font-size:11px;font-weight:600;color:#64748b;text-align:center;white-space:nowrap}.settlement-scoreboard-pane{height:100%;min-height:0;background:transparent;border:none;padding:0;display:flex;flex-direction:column;justify-content:center;gap:6px;overflow:hidden}.scoreboard-col-headers{display:grid;grid-template-columns:minmax(170px,2.1fr) 56px 76px minmax(110px,1.3fr) 78px;align-items:center;gap:8px;padding:0 12px 4px;font-size:10.5px;font-weight:800;color:#64748b;flex-shrink:0}.col-h-tile,.col-h-score,.col-h-combat,.col-h-rating{text-align:center}.scoreboard-teams-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;justify-content:center;gap:clamp(8px,1.6dvh,14px)}.scoreboard-team-section{display:flex;flex-direction:column;gap:4px;background:transparent;border:none;padding:0}.scoreboard-team-bar{display:flex;align-items:center;justify-content:space-between;padding:3px 10px;border-radius:6px;font-size:11px}.team-sec-red .scoreboard-team-bar{background:linear-gradient(90deg,rgba(244,63,94,.22) 0%,transparent 85%)}.team-sec-blue .scoreboard-team-bar{background:linear-gradient(90deg,rgba(56,189,248,.22) 0%,transparent 85%)}.team-bar-left{display:flex;align-items:center;gap:8px}.team-bar-name{font-weight:900;font-size:12px;letter-spacing:.5px}.team-bar-name.red{color:#fb7185}.team-bar-name.blue{color:#38bdf8}.team-verdict-pill{font-size:10px;font-weight:900;padding:1px 7px;border-radius:4px}.team-verdict-pill.pill-win{background:#10b98138;color:#6ee7b7}.team-verdict-pill.pill-lose{background:#94a3b824;color:#94a3b8}.team-bar-score{font-size:11px;color:#94a3b8}.team-bar-score b{color:#f8fafc;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.scoreboard-rows-list{display:flex;flex-direction:column;gap:3px}.settlement-player-row{display:grid;grid-template-columns:minmax(170px,2.1fr) 56px 76px minmax(110px,1.3fr) 78px;align-items:center;gap:8px;min-height:36px;padding:4px 12px;border-radius:6px;background:linear-gradient(90deg,#ffffff0b,#ffffff04);border:none;cursor:pointer;transition:background .15s ease,transform .15s ease;animation:rowSlideIn .34s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(var(--row-idx, 0) * 65ms)}@keyframes rowSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.settlement-player-row:hover{background:linear-gradient(90deg,#ffffff1a,#ffffff08)}.settlement-player-row.is-mvp-row{background:linear-gradient(90deg,#f59e0b29,#ffffff05 90%)}.settlement-player-row.is-svp-row{background:linear-gradient(90deg,#a855f729,#ffffff05 90%)}.settlement-player-row.is-selected{background:linear-gradient(90deg,#38bdf83d,#38bdf80a 92%);box-shadow:inset 3px 0 #38bdf8}.settlement-player-row.is-mvp-row.is-selected{background:linear-gradient(90deg,#f59e0b42,#38bdf80f 92%);box-shadow:inset 3px 0 #fde047}.col-player{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.row-player-name{font-size:12.5px;font-weight:800;color:#f8fafc;white-space:nowrap;flex-shrink:0}.me-tag{font-style:normal;font-size:9.5px;font-weight:900;padding:1px 5px;margin-left:4px;border-radius:3px;background:#38bdf83d;color:#7dd3fc}.player-badges-inline{display:inline-flex;align-items:center;gap:4px;min-width:0;overflow:hidden}.honor-badge{display:inline-flex;align-items:center;gap:2px;font-size:10px;font-weight:900;padding:1px 6px;border-radius:4px;border:none;white-space:nowrap;line-height:1.35;flex-shrink:0;animation:badgePopIn .32s cubic-bezier(.2,.9,.3,1.35) backwards;animation-delay:var(--badge-delay, .16s)}@keyframes badgePopIn{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.honor-badge.badge-mvp{background:linear-gradient(135deg,#fde047,#f59e0b);color:#0f172a;box-shadow:0 0 10px #f59e0b73}.honor-badge.badge-svp{background:linear-gradient(135deg,#a855f7,#ec4899);color:#fff;box-shadow:0 0 10px #a855f773}.honor-badge.badge-titan{background:#eab30838;color:#fde047}.honor-badge.badge-slayer{background:#f43f5e38;color:#fda4af}.honor-badge.badge-aegis{background:#10b98138;color:#6ee7b7}.honor-badge.badge-nexus{background:#38bdf838;color:#7dd3fc}.honor-badge.badge-combo{background:#a855f738;color:#d8b4fe}.col-tile,.col-score,.col-combat,.col-rating{display:flex;align-items:center;justify-content:center;white-space:nowrap}.row-score-val{font-size:13px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;color:#f8fafc}.col-combat{gap:4px;font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.col-combat em{font-style:normal}.c-slash{color:#fda4af}.c-drain{color:#fb7185}.c-block{color:#6ee7b7}.c-eject{color:#7dd3fc}.c-dot{color:#475569;margin:0 1px}.c-muted{color:#64748b;font-size:10.5px;font-weight:700}.col-rating{gap:5px}.row-rating-num{font-size:13.5px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;color:#cbd5e1}.row-rating-num.mvp-score{color:#fde047}.row-rating-num.svp-score{color:#e879f9}.row-grade-tag{font-size:11px;font-weight:900;font-style:italic;color:#94a3b8}.row-grade-tag.rank-s,.row-grade-tag.rank-ss{color:#38bdf8}.row-grade-tag.rank-sss{color:#fde047}.settlement-footer-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:clamp(6px,1.2dvh,10px);background:linear-gradient(90deg,rgba(255,255,255,.08) 0%,transparent 100%) top / 100% 1px no-repeat;flex-shrink:0}.settlement-mvp-callout{font-size:12px;font-weight:700;color:#94a3b8;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settlement-mvp-callout b{color:#fde047;font-weight:900}.callout-sep{margin:0 8px;color:#475569}.mini-tile-badge{min-width:36px;height:22px;padding:0 6px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#f8fafc;background:#334155}.mini-tile-badge.tile-2048,.mini-tile-badge.tile-super{background:linear-gradient(135deg,#f59e0b,#ec4899,#8b5cf6);color:#fff;box-shadow:0 0 10px #ec489980}.rank-prestige-badge{font-size:18px;font-weight:900;font-style:italic;line-height:1;color:#94a3b8;padding:0 2px}.rank-prestige-badge.rank-s,.rank-prestige-badge.rank-ss{background:linear-gradient(135deg,#38bdf8,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.rank-prestige-badge.rank-sss{background:linear-gradient(135deg,#fde047,#f97316,#ef4444);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.metric-slash{color:#38bdf8}.metric-drain{color:#fb7185}.metric-block{color:#34d399}.dock-actions-group{display:flex;align-items:center;gap:10px;flex-shrink:0}.btn-dock-primary{background:linear-gradient(135deg,#0284c7,#2563eb 60%,#4f46e5);color:#fff;border:none;border-radius:8px;padding:8px 20px;font-size:13px;font-weight:900;cursor:pointer;white-space:nowrap;box-shadow:0 4px 16px #2563eb73;transition:all .15s ease}.btn-dock-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-dock-secondary{background:#ffffff14;color:#e2e8f0;border:none;border-radius:8px;padding:8px 14px;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s ease}.btn-dock-secondary:hover{background:#ffffff26}.btn-primary-action{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#0284c7,#2563eb,#4f46e5);color:#fff;border:none;border-radius:10px;padding:13px 18px;font-size:14px;font-weight:800;cursor:pointer;letter-spacing:.5px;box-shadow:0 4px 18px #2563eb73;transition:all .2s cubic-bezier(.16,1,.3,1)}.btn-primary-action:hover{transform:translateY(-2px);box-shadow:0 8px 24px #2563eb99;background:linear-gradient(135deg,#0369a1,#1d4ed8,#4338ca)}.btn-primary-action:active{transform:scale(.97)}.btn-secondary-action{display:flex;align-items:center;justify-content:center;gap:8px;background:#ffffff0f;color:#f8fafc;border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:13px 18px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.btn-secondary-action:hover{background:#ffffff1f;border-color:#ffffff59;transform:translateY(-1px)}.btn-secondary-action:active{transform:scale(.97)}.orb-rescue .orb-core{background:radial-gradient(circle at 32% 30%,#fff,#6ee7b7 35%,#10b981 72%,#047857);box-shadow:0 0 18px #10b981,0 0 36px #10b981d9,inset 0 0 8px #fff;border:1.5px solid #a7f3d0}.reticle-rescue{color:#10b981;box-shadow:0 0 16px #10b981a6}.spark-rescue{background:#34d399;box-shadow:0 0 10px #10b981}.ring-rescue{color:#10b981;box-shadow:0 0 22px #10b981}.hud-team-tug-wrap{display:flex;flex-direction:column;gap:3px;flex:1;max-width:560px;min-width:180px;margin:0 8px}.hud-team-scores{display:flex;align-items:center;justify-content:space-between;font-size:12px;line-height:1.2;gap:6px;min-width:0}.hud-center-status{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:1;min-width:0;overflow:visible}.hud-match-timer{display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:999px;background:#0ea5e933;border:none;color:#e0f2fe;font-size:13px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;letter-spacing:.5px;white-space:nowrap;flex-shrink:0;box-shadow:0 0 10px #38bdf838;transition:transform .15s ease,background .2s ease}.hud-match-timer.timer-warn{background:#f59e0b47;color:#fef08a;box-shadow:0 0 12px #f59e0b61}.hud-match-timer.timer-urgent{background:linear-gradient(135deg,#f59e0b85,#e11d4894);color:#fff;font-size:14.5px;padding:2px 11px;box-shadow:0 0 16px #f43f5e99}.hud-match-timer.timer-critical{background:linear-gradient(135deg,#e11d48,#b91c1c);color:#fff;font-size:15.5px;padding:2px 12px;box-shadow:0 0 22px #f43f5ed9;animation:chaseHudPulse .35s infinite alternate ease-in-out}.hud-match-timer.timer-tick-pop{animation:timerTickHeartbeat .32s cubic-bezier(.18,.89,.32,1.28)}@keyframes timerTickHeartbeat{0%{transform:scale(1)}40%{transform:scale(1.2)}to{transform:scale(1)}}.hud-team-scores:has(#pk-chase-banner[style*=flex]) .pk-combat-log,.hud-team-scores:has(#pk-chase-banner[style*=flex]) .hud-match-timer{display:none!important}.hud-center-status:has(.hud-match-timer.timer-urgent) .pk-combat-log,.hud-center-status:has(.hud-match-timer.timer-critical) .pk-combat-log{display:none!important}.pk-chase-banner{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin:0!important;padding:2px 10px;border-radius:999px;background:linear-gradient(135deg,#f59e0b6b,#e11d4885);border:none;box-shadow:0 0 16px #f59e0b7a;color:#fef08a;font-size:12px;font-weight:900;line-height:1.15;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;animation:chaseHudPulse .75s infinite alternate ease-in-out}.chase-text{display:inline-flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis}.chase-sec-badge{font-size:14px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;color:#fff;background:#e11d48d1;padding:1px 6px;border-radius:999px;border:none;flex-shrink:0}.chase-desc-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pk-chase-banner.chase-urgent{background:linear-gradient(135deg,#e11d48b8,#b91c1cd1);box-shadow:0 0 20px #f43f5ed1;color:#fff;animation-duration:.42s}.pk-chase-banner.chase-critical{background:linear-gradient(135deg,#e11d48,#991b1b);box-shadow:0 0 26px #f43f5ef2,0 0 10px #fde047;animation-duration:.28s}.pk-chase-banner.chase-critical .chase-sec-badge{font-size:15px;background:#f59e0b;color:#0f172a}@keyframes chaseHudPulse{0%{filter:brightness(1);box-shadow:0 0 8px #f59e0b59,inset 0 0 4px #fef08a2e}to{filter:brightness(1.18);box-shadow:0 0 14px #f43f5e8c,inset 0 0 10px #fef08a6b}}.hud-team-red{color:#fb7185;font-weight:800;white-space:nowrap}.hud-team-blue{color:#38bdf8;font-weight:800;white-space:nowrap}.hud-tug-bar{width:100%;height:5px;border-radius:999px;background:linear-gradient(90deg,#0284c7,#2563eb);overflow:hidden}.hud-tug-red-fill{height:100%;background:linear-gradient(90deg,#e11d48,#fb7185);border-right:2px solid #ffffff;transition:width .35s ease}.pk-battlefield{--main-board-size: clamp(284px, min(37vw, calc(100dvh - 148px) ), 460px);--arena-card-height: calc(var(--main-board-size) + 68px);display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(16px,2.2vw,28px);padding:6px 18px;flex:1;min-height:0;width:100%;max-width:1420px;margin:0 auto;overflow:hidden}.battle-col{display:flex;flex-direction:column;min-height:0;overflow:hidden}.ally-chat-zone{width:clamp(248px,24vw,326px);height:var(--arena-card-height);gap:10px;flex-shrink:0}.sub-panel{background:transparent;border:none;border-radius:0;padding:0;display:flex;flex-direction:column;min-height:0;box-shadow:none}.allies-panel{flex:0 0 auto}.allies-panel:has(.ally-board-card)>.sub-panel-header{display:none}.sub-panel-header{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px;flex-shrink:0}.sub-panel-title{font-size:11px;font-weight:800;color:#94a3b8;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.sub-panel-hint{font-size:10px;color:#34d399;font-weight:800;background:#10b98124;border:none;padding:1px 7px;border-radius:999px;white-space:nowrap;flex-shrink:0}.allies-mini-grid{display:flex;gap:10px;overflow:hidden;align-items:center;justify-content:center}.allies-mini-grid.has-two-allies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center;gap:10px}.solo-telemetry-box{width:100%;display:flex;flex-direction:column;gap:6px}.telemetry-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.telemetry-pill{background:linear-gradient(180deg,#ffffff0e,#ffffff04);border:none;border-radius:8px;padding:6px 4px;display:flex;flex-direction:column;align-items:center;gap:2px}.telemetry-val{font-size:14px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;line-height:1.1}.telemetry-val.val-slash{color:#38bdf8}.telemetry-val.val-drain{color:#fb7185}.telemetry-val.val-block{color:#34d399}.telemetry-lbl{font-size:9.5px;color:#94a3b8;font-weight:700}.battle-chat-panel{flex:1;min-height:0;overflow:hidden;justify-content:flex-end;gap:6px}.battle-chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-end;gap:3px;padding:2px 0;font-size:11px;min-height:0;mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 100%)}.chat-msg-row{line-height:1.38;word-break:break-word;color:#e2e8f0;padding:2px 8px;border-radius:4px;background:linear-gradient(90deg,rgba(15,23,42,.65) 0%,transparent 92%)}.chat-msg-sender{font-weight:800;margin-right:5px}.chat-msg-sender.team-red{color:#fb7185}.chat-msg-sender.team-blue{color:#38bdf8}.chat-msg-sender.team-spectator{color:#fbbf24}.chat-msg-sender.team-system{color:#34d399}.battle-chat-bottom-hud{display:flex;flex-direction:column;gap:5px;flex-shrink:0}.battle-chat-input-row,.seat-chat-input-row{display:flex;gap:6px;margin-top:0}.battle-chat-input,.seat-chat-input{flex:1;height:30px;border-radius:6px;padding:0 10px;font-size:12px}.btn-chat-send{background:#38bdf838;color:#7dd3fc;border:none;border-radius:6px;padding:0 12px;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap;transition:all .15s ease}.btn-chat-send:hover{background:#38bdf861;color:#fff}.local-zone{width:var(--main-board-size)!important;max-width:none!important;height:var(--arena-card-height);align-items:center;justify-content:center;padding:0;flex-shrink:0}.local-zone .board-wrapper{--board-size: var(--main-board-size);--cell-gap: 7px}.rival-zone{width:var(--main-board-size)!important;max-width:none!important;height:var(--arena-card-height);align-items:center;justify-content:center;padding:0;flex-shrink:0}.rival-zone:has(.enemies-mini-grid.multi-enemies) .rival-radar-header,.rival-zone:has(.enemies-mini-grid.multi-enemies) .rival-status-bar{display:none!important}.rival-radar-header{width:100%;margin-bottom:6px}.enemies-mini-grid{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;overflow:hidden;min-height:0}.enemies-mini-grid.single-enemy #primary-enemy-card{background:transparent;border:none;box-shadow:none;padding:0;cursor:default}.enemies-mini-grid.single-enemy #primary-enemy-card>.enemy-card-top{display:none}.enemies-mini-grid.single-enemy #primary-enemy-card .rival-mirror-wrapper{--rival-size: calc(var(--main-board-size) - 12px);--cell-gap: 6px;border:none;box-shadow:0 12px 32px #00000085,inset 0 1px #ffffff0f}.enemies-mini-grid.single-enemy .extra-enemies-slot{display:none}.enemies-mini-grid.multi-enemies{flex-direction:row;flex-wrap:wrap;align-content:center;justify-content:center;gap:12px 14px}.extra-enemies-slot{display:contents}.enemy-board-card,.ally-board-card{background:transparent;border:none;border-radius:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;max-width:100%;cursor:pointer;transition:transform .16s ease,opacity .16s ease}.enemy-board-card:hover .rival-mirror-wrapper,.ally-board-card:hover .rival-mirror-wrapper{box-shadow:0 10px 26px #38bdf840,inset 0 1px #ffffff24}.enemy-board-card.active-target .rival-mirror-wrapper{box-shadow:0 0 20px #f43f5e6b,inset 0 0 8px #f43f5e40}.enemy-board-card.is-stuck-locked,.ally-board-card.is-stuck-locked{opacity:.78}.enemy-board-card.is-stuck-locked .enemy-card-lock,.ally-board-card.is-stuck-locked .ally-rescue-tag{color:#94a3b8}.enemy-card-top{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:4px;font-size:11px;padding:0 2px;min-width:0}.enemy-card-name{font-weight:800;color:#e2e8f0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enemy-card-lock{font-size:11px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;padding:0;border:none;background:transparent;color:#fda4af;white-space:nowrap;flex-shrink:0}.ally-rescue-tag{font-size:11px;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;padding:0;border:none;background:transparent;color:#6ee7b7;white-space:nowrap;flex-shrink:0}.enemies-mini-grid.multi-enemies .rival-mirror-wrapper{--rival-size: clamp(102px, min(14vw, calc((var(--arena-card-height) - 52px) / 2)), 166px);--cell-gap: 3.5px;border-radius:9px}.allies-mini-grid .rival-mirror-wrapper{--rival-size: clamp(92px, 11vw, 126px);--cell-gap: 3px;border-radius:8px}.enemies-mini-grid.multi-enemies .rival-mirror-wrapper .tile-inner,.enemies-mini-grid.multi-enemies .rival-mirror-wrapper .rival-grid-cell,.allies-mini-grid .rival-mirror-wrapper .tile-inner,.allies-mini-grid .rival-mirror-wrapper .rival-grid-cell{border-radius:3.5px}.enemies-mini-grid.multi-enemies .rival-mirror-wrapper .tile-inner,.allies-mini-grid .rival-mirror-wrapper .tile-inner{letter-spacing:-.4px;box-shadow:inset 0 .5px .5px #ffffff73}.pk-modal-backdrop{padding:clamp(6px,1.8dvh,16px)!important}.lobby-minimal-shell{width:100%;max-width:720px;max-height:calc(100dvh - 12px);display:flex;flex-direction:column;justify-content:center;gap:clamp(8px,2.2dvh,18px);padding:4px 8px}.lobby-minimal-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 4px;flex-shrink:0}.lobby-top-controls{display:flex;align-items:center;gap:10px}.mode-portals-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,2vw,20px);flex-shrink:0}.mode-portal-card{position:relative;height:clamp(96px,32dvh,185px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(4px,1.2dvh,10px);padding:clamp(12px,3dvh,24px);border-radius:16px;border:none;text-align:center;cursor:pointer;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:all .22s cubic-bezier(.16,1,.3,1)}.portal-2048{background:linear-gradient(135deg,#0ea5e942,#2563eb1a);box-shadow:0 12px 32px #00000073,inset 0 1px #ffffff29}.portal-2048:hover{transform:translateY(-3px);background:linear-gradient(135deg,#0ea5e95c,#2563eb2e);box-shadow:0 16px 40px #0ea5e94d,inset 0 1px #ffffff3d}.portal-endless{background:linear-gradient(135deg,#f59e0b42,#e11d481a);box-shadow:0 12px 32px #00000073,inset 0 1px #ffffff29}.portal-endless:hover{transform:translateY(-3px);background:linear-gradient(135deg,#f59e0b5c,#e11d482e);box-shadow:0 16px 40px #f59e0b4d,inset 0 1px #ffffff3d}.portal-big-title{font-size:clamp(22px,5dvh,32px);font-weight:900;letter-spacing:2px;color:#fff;line-height:1.15;text-shadow:0 4px 18px rgba(0,0,0,.45)}.portal-short-sub{font-size:clamp(11px,2.2dvh,13px);font-weight:600;color:#e2e8f0d1;letter-spacing:.5px}.rooms-minimal-bar{background:#0f172a6b;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:none;border-radius:12px;padding:clamp(8px,1.8dvh,12px) 14px;display:flex;flex-direction:column;gap:6px;min-height:0;flex-shrink:1}.rooms-minimal-bar .rooms-card-grid{max-height:clamp(44px,16dvh,140px)}.rooms-minimal-bar .room-empty-card{padding:2px 0;font-size:11.5px;color:#94a3b8bf}#modal-seat-lobby{background:radial-gradient(circle at 50% 18%,#0f172ae0,#04070ff0);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.seat-lobby-card{width:min(96vw,940px);height:min(92dvh,490px);max-height:calc(100dvh - 12px);background:transparent;border:none;border-radius:0;padding:0;box-shadow:none;display:flex;flex-direction:column;gap:clamp(8px,1.8dvh,14px);overflow:hidden}.seat-lobby-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:clamp(5px,1.2dvh,9px);background:linear-gradient(90deg,rgba(255,255,255,.08) 0%,transparent 100%) bottom / 100% 1px no-repeat;border-bottom:none;flex-shrink:0}.seat-header-left{display:flex;align-items:center;gap:8px;min-width:0}.btn-seat-back{display:inline-flex;align-items:center;gap:3px;background:#ffffff12;color:#e2e8f0;border:none;border-radius:7px;padding:5px 10px;font-size:11.5px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s ease}.btn-seat-back:hover{background:#ffffff24}.seat-room-badge{display:inline-flex;align-items:center;gap:6px;background:#ffffff0d;border:none;border-radius:7px;padding:4px 10px;white-space:nowrap}.seat-room-label{font-size:10px;color:#94a3b8;font-weight:700}.seat-room-code{font-size:13.5px;font-weight:900;color:#38bdf8;letter-spacing:1px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.btn-seat-copy{background:#38bdf82e;color:#7dd3fc;border:none;border-radius:5px;padding:2px 8px;font-size:10.5px;font-weight:800;cursor:pointer}.btn-seat-copy:hover{background:#38bdf852;color:#fff}.seat-format-pill{font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:#10b9812e;color:#6ee7b7;border:none;white-space:nowrap}.seat-mode-switcher{display:inline-flex;background:#ffffff0d;border:none;border-radius:7px;padding:2px;gap:3px;flex-shrink:0}.seat-mode-btn{background:transparent;color:#94a3b8;border:none;border-radius:5px;padding:4px 10px;font-size:11.5px;font-weight:800;cursor:pointer;white-space:nowrap}.seat-mode-btn.active{background:linear-gradient(135deg,#0284c7,#2563eb);color:#fff}.seat-lobby-body{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:clamp(10px,1.8vw,20px);overflow:hidden}.team-seats-col{min-height:0;background:transparent;border:none;border-radius:0;padding:0;display:flex;flex-direction:column;gap:clamp(5px,1.1dvh,9px);overflow:hidden}.team-col-header{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;border-radius:6px;border-bottom:none;flex-shrink:0}.team-col-red .team-col-header{background:linear-gradient(90deg,rgba(244,63,94,.22) 0%,transparent 90%)}.team-col-blue .team-col-header{background:linear-gradient(90deg,rgba(56,189,248,.22) 0%,transparent 90%)}.team-col-dot{width:7px;height:7px;border-radius:50%}.red-dot{background:#f43f5e;box-shadow:0 0 8px #f43f5e}.blue-dot{background:#38bdf8;box-shadow:0 0 8px #38bdf8}.team-col-title{font-size:12px;font-weight:900;color:#f8fafc;flex:1;margin-left:6px}.team-col-count{font-size:11px;font-weight:800;color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.seats-stack{display:flex;flex-direction:column;gap:clamp(5px,1.2dvh,9px);flex:1;min-height:0}.seat-slot-card{flex:1;min-height:0;border-radius:7px;background:transparent;border:none;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:all .16s ease;overflow:hidden}.seat-slot-card.empty-slot{padding:0;background:transparent}.seat-slot-card.occupied-red{background:linear-gradient(90deg,#f43f5e38,#ffffff06 95%);box-shadow:inset 3px 0 #fb7185}.seat-slot-card.occupied-blue{background:linear-gradient(90deg,#38bdf838,#ffffff06 95%);box-shadow:inset 3px 0 #38bdf8}.seat-empty-wrap{width:100%;height:100%;display:flex;align-items:stretch;justify-content:stretch;gap:6px}.btn-seat-join{flex:1.3;height:100%;min-height:34px;border-radius:7px;border:none;background:linear-gradient(90deg,#38bdf829,#38bdf80f);color:#7dd3fc;font-size:clamp(12px,2.5dvh,14px);font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;white-space:nowrap;transition:all .16s ease}.team-col-red .btn-seat-join{background:linear-gradient(90deg,#f43f5e29,#f43f5e0f);color:#fda4af}.btn-seat-join:hover:not(:disabled){background:linear-gradient(90deg,#38bdf84d,#38bdf824);color:#fff}.team-col-red .btn-seat-join:hover:not(:disabled){background:linear-gradient(90deg,#f43f5e4d,#f43f5e24);color:#fff}.btn-seat-join:active:not(:disabled),.btn-seat-add-bot:active:not(:disabled){transform:scale(.97)}.btn-seat-join:disabled{opacity:.45;cursor:not-allowed}.seat-join-plus,.seat-bot-plus{font-size:15px;font-weight:900;line-height:1}.btn-seat-add-bot{flex:1;height:100%;min-height:34px;background:linear-gradient(135deg,#a855f733,#a855f714);color:#e9d5ff;border:none;border-radius:7px;padding:0 8px;font-size:clamp(11.5px,2.3dvh,13.5px);font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:3px;cursor:pointer;white-space:nowrap;transition:all .16s ease}.btn-seat-add-bot:hover{background:linear-gradient(135deg,#a855f757,#a855f72e);color:#fff}.seat-occupant-info{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.seat-avatar-pill{width:clamp(26px,5.8dvh,32px);height:clamp(26px,5.8dvh,32px);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:#fff;background:#0284c7;flex-shrink:0}.occupied-red .seat-avatar-pill{background:#e11d48}.seat-occupant-text{display:flex;align-items:center;gap:5px;min-width:0;flex-wrap:wrap}.seat-occupant-name{font-size:12.5px;font-weight:800;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:96px}.seat-occupant-tags{display:inline-flex;gap:3px}.seat-tag{font-size:9px;font-weight:800;padding:1px 5px;border-radius:4px;background:#ffffff1f;color:#cbd5e1;white-space:nowrap}.seat-tag.tag-host{background:#eab30838;color:#fde047}.seat-tag.tag-bot{background:#a855f740;color:#d8b4fe}.btn-seat-remove{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:#f43f5e2e;color:#fda4af;border:none;border-radius:6px;padding:0;font-size:12px;font-weight:900;cursor:pointer;flex-shrink:0;transition:all .15s ease}.btn-seat-remove:hover{background:#f43f5e59;color:#fff}.seat-center-col{min-height:0;display:flex;flex-direction:column;gap:clamp(6px,1.4dvh,10px);overflow:hidden}.seat-chat-box{flex:1;min-height:0;background:#ffffff06;border:none;border-radius:8px;padding:clamp(6px,1.4dvh,10px) 10px;display:flex;flex-direction:column;overflow:hidden}.seat-chat-header{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:800;color:#94a3b8;padding-bottom:4px;border-bottom:none;flex-shrink:0}.seat-chat-messages{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding:4px 2px;font-size:11.5px}.seat-launch-bar{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.countdown-banner{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(90deg,#eab30840,#f43f5e47);border:none;border-radius:8px;padding:3px 10px;animation:chasePulse .5s infinite alternate}.countdown-number{font-size:18px;font-weight:900;color:#fde047;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.countdown-text{font-size:11px;font-weight:800;color:#fef08a}.btn-launch-match{width:100%;height:clamp(32px,7.6dvh,42px);border-radius:8px;border:none;background:linear-gradient(135deg,#059669,#0284c7);color:#fff;font-size:clamp(13px,2.5dvh,15px);font-weight:900;letter-spacing:.5px;cursor:pointer;box-shadow:0 4px 16px #10b98159;transition:all .18s ease}.btn-launch-match:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 4px 18px #10b98173}.btn-launch-match:disabled{background:#ffffff14;color:#64748b;box-shadow:none;cursor:not-allowed}.btn-launch-match.is-counting-down{background:linear-gradient(135deg,#e11d48,#d97706);border:none;color:#fff;transform:none!important;box-shadow:inset 0 0 12px #fef08a59;animation:btnCountdownPulse .5s infinite alternate ease-in-out}@keyframes btnCountdownPulse{0%{filter:brightness(.96);box-shadow:inset 0 0 6px #fef08a33}to{filter:brightness(1.16);box-shadow:inset 0 0 16px #fef08a8c}}.btn-cancel-countdown{width:100%;height:clamp(32px,7.6dvh,42px);border-radius:8px;border:none;background:linear-gradient(135deg,#e11d48,#be123c);color:#fff;font-size:clamp(13px,2.5dvh,15px);font-weight:900;cursor:pointer;box-shadow:0 0 20px #f43f5e8c}.seat-spectator-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;background:linear-gradient(90deg,#fbbf241f,#ffffff05 85%);border:none;border-radius:7px;padding:clamp(4px,1.2dvh,8px) 12px;flex-shrink:0}.spectator-left{display:flex;align-items:center;gap:8px}.spectator-title{font-size:11px;font-weight:800;color:#fbbf24}.btn-spectator-join{min-height:28px;padding:3px 12px;border-radius:999px;border:none;background:#fbbf2433;color:#fde047;font-size:11.5px;font-weight:800;cursor:pointer;white-space:nowrap;transition:all .16s ease}.btn-spectator-join:hover{background:#fbbf2459;color:#fff}.spectator-list{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:5px;flex:1;justify-content:flex-end}.spectator-pill{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:#fbbf2429;color:#fde68a;border:none;white-space:nowrap}@media (max-width: 920px),(max-height: 500px){.pk-hud-header{min-height:36px;height:auto;padding:max(2px,env(safe-area-inset-top,0px)) 8px 3px;gap:5px}.hud-title{font-size:13px}.hud-mode-pill,.room-label,.hud-net-badge{display:none}.hud-room-badge{padding:2px 7px;gap:4px}.room-code{font-size:11.5px}.hud-team-tug-wrap{margin:0 4px;min-width:160px;max-width:600px;gap:2px}.hud-team-scores{font-size:11.5px;gap:4px}.hud-tug-bar{height:3.5px}.hud-match-timer{font-size:12px;padding:1px 7px}.hud-match-timer.timer-urgent{font-size:13.5px;padding:1px 9px}.hud-match-timer.timer-critical{font-size:14px;padding:1px 10px}.pk-combat-log{max-width:min(44vw,260px);font-size:10.5px;font-weight:700;color:#e2e8f0}.pk-chase-banner{font-size:11px;padding:1px 8px;max-width:none}.chase-sec-badge{font-size:12.5px;padding:0 5px}.pk-battlefield{--arena-card-height: calc(100dvh - 44px) ;--main-board-size: clamp(148px, min(30vw, calc(var(--arena-card-height) - 48px)), 284px);gap:10px;padding:2px 8px}.ally-chat-zone{flex:1 1 180px;width:auto;min-width:168px;max-width:244px;gap:6px}.sub-panel{padding:0}.sub-panel-header{margin-bottom:2px}.allies-mini-grid,.allies-mini-grid.has-two-allies{gap:6px}.enemy-board-card,.ally-board-card{padding:0;gap:2px}.enemy-card-top{font-size:9.5px;gap:2px}.enemy-card-lock,.ally-rescue-tag{font-size:9px;padding:0}.allies-mini-grid .rival-mirror-wrapper{--rival-size: clamp(74px, min(13.2vw, calc(var(--arena-card-height) * .34)), 106px);--cell-gap: 2.5px;border-radius:6px}.telemetry-pill{padding:4px 2px}.telemetry-val{font-size:12.5px}.battle-chat-input{height:26px;font-size:11px;padding:0 7px}.btn-chat-send{padding:0 9px;font-size:10.5px}.local-zone{width:var(--main-board-size)!important;padding:0}.local-zone .zone-header,.rival-radar-header{margin-bottom:2px;gap:4px}.player-role-badge,.score-title,.rival-zone:has(.enemies-mini-grid.multi-enemies) .dmc-widget{display:none}.player-avatar-tag{font-size:9px;padding:1px 5px;letter-spacing:0;flex-shrink:0}.player-profile{gap:4px}.player-name{font-size:11.5px}.dmc-widget{min-width:20px}.dmc-letter{font-size:14.5px}.dmc-gauge-wrap{width:20px;height:2.5px}.score-card{min-width:38px;padding:0}.score-number{font-size:14px}.local-zone .attack-charge-wrap{margin-bottom:3px}.charge-track{height:4px}.local-zone .board-wrapper{--cell-gap: 4px}.rival-zone{width:var(--main-board-size)!important;padding:0}.enemies-mini-grid.multi-enemies{gap:6px 8px}.enemies-mini-grid.single-enemy #primary-enemy-card .rival-mirror-wrapper{--rival-size: calc(var(--main-board-size) - 6px);--cell-gap: 4px}.enemies-mini-grid.multi-enemies .rival-mirror-wrapper{--rival-size: clamp(68px, min(13vw, calc((var(--arena-card-height) - 38px) / 2)), 104px);--cell-gap: 2.5px;border-radius:6px}.enemies-mini-grid.multi-enemies .rival-mirror-wrapper .tile-inner,.enemies-mini-grid.multi-enemies .rival-mirror-wrapper .rival-grid-cell,.allies-mini-grid .rival-mirror-wrapper .tile-inner,.allies-mini-grid .rival-mirror-wrapper .rival-grid-cell{border-radius:2.5px}.pk-settlement-overlay{padding:6px 12px!important}.settlement-modal-card{width:100%;height:min(96dvh,450px);gap:5px}.settlement-header-bar{padding-bottom:4px;gap:8px}.gameover-banner{font-size:20px;letter-spacing:1px}.gameover-reason{font-size:11.5px}.vs-side-score{font-size:14px}.settlement-split-grid{grid-template-columns:minmax(165px,200px) 1fr;gap:12px}.settlement-board-showcase{gap:5px}.showcase-player-name{font-size:11.5px}.settlement-snapshot-wrapper{--snap-size: clamp(132px, min(23vw, calc(100dvh - 120px) ), 184px);--cell-gap: 4px}.showcase-board-caption{font-size:9.5px}.scoreboard-col-headers,.settlement-player-row{grid-template-columns:minmax(135px,2fr) 44px 58px minmax(88px,1.25fr) 62px;gap:5px;padding:3px 8px;min-height:30px}.scoreboard-teams-scroll{gap:6px}.scoreboard-rows-list{gap:2px}.row-player-name{font-size:11px}.honor-badge{font-size:8.5px;padding:0 5px}.row-score-val{font-size:11.5px}.col-combat{font-size:9.5px}.row-rating-num{font-size:11.5px}.settlement-footer-bar{padding-top:4px}.settlement-mvp-callout{font-size:10.5px}.btn-dock-primary{padding:5px 14px;font-size:11.5px}.btn-dock-secondary{padding:5px 10px;font-size:11px}}@media (max-width: 580px){.seat-lobby-card{height:min(95dvh,630px);padding:4px 6px}.seat-lobby-body{grid-template-columns:1fr 1fr;grid-template-rows:1.25fr 1fr;gap:8px}.team-col-red{grid-column:1;grid-row:1}.team-col-blue{grid-column:2;grid-row:1}.seat-center-col{grid-column:1 / -1;grid-row:2}.pk-battlefield{flex-wrap:wrap;overflow-y:auto;align-content:flex-start!important;padding:6px;gap:6px}.local-zone{order:1;--main-board-size: min(86vw, 310px);width:100%!important;height:auto}.rival-zone{order:2;width:calc(50% - 4px)!important;height:210px}.enemies-mini-grid.single-enemy #primary-enemy-card .rival-mirror-wrapper{--rival-size: 132px;--cell-gap: 3px}.ally-chat-zone{order:3;width:calc(50% - 4px)!important;height:210px}}
