:root{--bg-primary: #080d13;--bg-secondary: rgba(8, 16, 24, .9);--bg-board: #0d1a14;--border-color: rgba(0, 229, 204, .1);--text-primary: #c8d8e8;--text-secondary: rgba(160, 190, 210, .6);--accent-green: #00e5cc;--accent-gold: #f0c040;--accent-teal: #00e5cc;--piece-human-bg: #0a1a1a;--piece-human-text: #e0f0f0;--piece-ai-bg: #1a0a0a;--piece-ai-border: #661a1a;--highlight-move: rgba(0, 229, 204, .4);--highlight-attack: rgba(255, 68, 68, .5);--highlight-selected: rgba(240, 192, 64, .5);--glow-green: #00e5cc;--glow-red: #ff4444;--glow-yellow: #f0c040;--glow-blue: #00ccff;--camp-bg: rgba(0, 229, 204, .1);--hq-bg: rgba(240, 192, 64, .08);--glass-bg: rgba(0, 229, 204, .03);--glass-border: rgba(0, 229, 204, .08);--shadow-soft: 0 2px 12px rgba(0, 0, 0, .3);--shadow-deep: 0 8px 32px rgba(0, 0, 0, .5);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}html,body{width:100%;min-height:100%;height:100%;overflow:hidden;background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,PingFang SC,Microsoft YaHei,sans-serif}html.screen-menu,body.screen-menu{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}#app{position:relative;width:100%;height:100%;min-height:100%}body.screen-menu #app{height:auto;min-height:100vh;min-height:100dvh}.hidden{display:none!important}button{font-family:inherit;cursor:pointer;border:none;outline:none;-webkit-tap-highlight-color:transparent}.menu-screen{position:relative;width:100%;min-height:100vh;min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));overflow:visible;background:radial-gradient(circle at 16% 18%,rgba(0,229,204,.16),transparent 24%),radial-gradient(circle at 82% 14%,rgba(240,192,64,.14),transparent 22%),radial-gradient(circle at 84% 78%,rgba(255,68,68,.08),transparent 18%),linear-gradient(135deg,#061017,#09131a 38%,#090d13);z-index:100;touch-action:pan-y}.menu-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(circle at center,rgba(0,0,0,.85),transparent 88%);mask-image:radial-gradient(circle at center,rgba(0,0,0,.85),transparent 88%);opacity:.45;pointer-events:none}.menu-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.03) 48%,transparent 68%);transform:translate(-34%);animation:menu-sweep 9s linear infinite;pointer-events:none;opacity:.55}@keyframes menu-sweep{0%{transform:translate(-46%)}to{transform:translate(42%)}}.menu-shell{position:relative;z-index:1;width:min(1120px,100%);display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,420px);gap:clamp(18px,2.4vw,28px);align-items:stretch;margin:0 auto}.menu-hero-panel,.menu-command-card{position:relative;border-radius:28px;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;box-shadow:0 22px 68px #0000005c}.menu-hero-panel{display:flex;flex-direction:column;min-height:clamp(500px,62vh,640px);padding:clamp(26px,3vw,40px);background:radial-gradient(circle at top right,rgba(240,192,64,.12),transparent 28%),linear-gradient(160deg,#08151ceb,#080f15fa)}.menu-hero-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 78% 20%,rgba(0,229,204,.12),transparent 18%),linear-gradient(145deg,rgba(255,255,255,.04),transparent 40%);pointer-events:none}.menu-command-card{display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.6vw,32px);background:radial-gradient(circle at top center,rgba(0,229,204,.08),transparent 32%),linear-gradient(180deg,#091117f5,#070c12fa)}.menu-command-card:before{content:"";position:absolute;left:24px;right:24px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent)}.menu-kicker-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.menu-kicker,.menu-command-kicker,.difficulty-label,.difficulty-btn-note,.difficulty-intel-code,.menu-version{font-family:SFMono-Regular,Roboto Mono,Menlo,monospace}.menu-kicker{font-size:11px;letter-spacing:3.4px;color:#c2d7e69e}.menu-status-chip{padding:8px 12px;border-radius:999px;border:1px solid rgba(240,192,64,.2);background:#f0c04014;color:#fadc84e0;font-size:11px;font-weight:700;letter-spacing:1.4px}.menu-title{font-family:Avenir Next Condensed,Arial Narrow,PingFang SC,sans-serif;font-size:clamp(58px,7vw,92px);font-weight:900;line-height:.92;letter-spacing:7px;background:linear-gradient(135deg,#ffd54f,#f0c040,#e6a800);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 5px 14px rgba(240,192,64,.22))}.menu-subtitle{margin-top:12px;font-size:16px;color:#bed2e1c2;letter-spacing:4px}.menu-hero-copy{max-width:500px;margin-top:20px;font-size:18px;line-height:1.75;color:#e2ebf2d1}.menu-hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.menu-hero-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#d6e4eee0;font-size:12px;font-weight:700;letter-spacing:.4px}.menu-board-preview{position:relative;margin-top:auto;min-height:clamp(220px,28vh,260px);border-radius:26px;background:radial-gradient(circle at 74% 22%,rgba(255,68,68,.12),transparent 16%),linear-gradient(160deg,#081a18f0,#080f12fa);border:1px solid rgba(0,229,204,.12);overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff08}.menu-board-preview:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:20% 16.666%;opacity:.2}.menu-board-preview:after{content:"";position:absolute;left:6%;right:6%;top:50%;height:2px;background:linear-gradient(90deg,transparent,rgba(0,229,204,.75),rgba(240,192,64,.75),transparent);opacity:.5}.menu-preview-piece{position:absolute;z-index:1;min-width:82px;height:56px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;font-size:18px;font-weight:800;letter-spacing:1px;box-shadow:0 14px 24px #00000047}.menu-preview-piece-human{left:12%;bottom:18%;background:linear-gradient(160deg,#0a1818,#0d2020,#081515);border:2px solid rgba(0,229,204,.56);color:#e0f0f0}.menu-preview-piece-engineer{left:42%;bottom:34%;min-width:72px;height:50px;background:linear-gradient(160deg,#112221,#102628,#0a1618);border:2px solid rgba(0,188,212,.5);color:#c6f6f2;transform:rotate(-6deg)}.menu-preview-piece-ai{right:12%;top:18%;min-width:88px;background:linear-gradient(160deg,#1a0808,#120505,#0d0303);border:2px solid rgba(255,68,68,.36);color:#c44;font-size:24px;transform:rotate(5deg)}.menu-preview-piece-flag{right:30%;bottom:20%;min-width:74px;height:46px;background:linear-gradient(160deg,#f0c04038,#96640c57);border:1px solid rgba(240,192,64,.28);color:#f9d870;font-size:15px;transform:rotate(3deg)}.menu-preview-reticle{position:absolute;left:54%;top:36%;width:104px;height:104px;border-radius:50%;border:1px solid rgba(0,229,204,.22);box-shadow:0 0 0 14px #00e5cc0a,0 0 24px #00e5cc14}.menu-preview-reticle:before,.menu-preview-reticle:after{content:"";position:absolute;background:#00e5cc4d}.menu-preview-reticle:before{top:50%;left:-18px;right:-18px;height:1px}.menu-preview-reticle:after{left:50%;top:-18px;bottom:-18px;width:1px}.menu-preview-beam{position:absolute;inset:-10% auto -10% -32%;width:42%;background:linear-gradient(90deg,transparent,rgba(0,229,204,.14),transparent);transform:skew(-18deg);animation:preview-scan 6.5s ease-in-out infinite}@keyframes preview-scan{0%,to{transform:translate(0) skew(-18deg);opacity:0}14%{opacity:.75}50%{transform:translate(280%) skew(-18deg);opacity:.6}78%{opacity:0}}.menu-preview-callout{position:absolute;z-index:1;display:flex;flex-direction:column;gap:6px;max-width:210px;padding:12px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#070e15b8;box-shadow:0 14px 28px #0003}.menu-preview-callout-left{left:24px;top:22px}.menu-preview-callout-right{right:22px;bottom:18px}.menu-preview-callout-tag{color:#00e5cccc;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.menu-preview-callout-text{color:#e5ecf2d1;font-size:13px;line-height:1.55}.menu-command-kicker{font-size:11px;font-weight:700;letter-spacing:3.2px;color:#bed2e18f}.menu-command-title{font-size:clamp(30px,3vw,38px);font-weight:900;letter-spacing:.6px;color:#f4f7f9}.menu-command-copy{margin-top:-6px;font-size:14px;line-height:1.6;color:#bed2e1bd}.difficulty-section{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-bottom:0}.menu-config-section{width:min(540px,calc(100vw - 48px));display:flex;flex-direction:column;gap:12px;margin-bottom:32px}.menu-config-title{font-size:14px;color:var(--text-secondary);letter-spacing:3px;text-align:center}.menu-toggle-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-radius:18px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);text-align:left;transition:all .2s}.menu-toggle-btn:active{transform:scale(.985)}.menu-toggle-btn.active{background:linear-gradient(135deg,#f0c0401f,#00bcd41f);border-color:#f0c04047;box-shadow:0 8px 28px #00000038,0 0 0 1px #f0c0401a}.menu-toggle-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.menu-toggle-label{font-size:16px;font-weight:800;letter-spacing:1px;color:#f7f8f9}.menu-toggle-desc{font-size:12px;line-height:1.5;color:#ffffffa3}.menu-toggle-side{display:flex;align-items:center;gap:12px;flex-shrink:0}.menu-toggle-state{font-size:12px;font-weight:700;color:#ffffffb8;letter-spacing:1px}.menu-toggle-pill{position:relative;width:58px;height:32px;display:inline-flex;align-items:center;padding:0 4px;border-radius:999px;background:#ffffff1f;transition:background .2s}.menu-toggle-btn.active .menu-toggle-pill{background:linear-gradient(135deg,#f0c040,#00bcd4)}.menu-toggle-knob{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 4px 10px #00000047;transform:translate(0);transition:transform .2s}.menu-toggle-btn.active .menu-toggle-knob{transform:translate(26px)}.difficulty-label{font-size:11px;color:#bed2e194;letter-spacing:2.6px;text-transform:uppercase}.difficulty-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.difficulty-btn{min-height:68px;padding:12px 14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:8px;font-size:17px;font-weight:700;border-radius:18px;background:#ffffff0a;color:var(--text-primary);border:1px solid rgba(255,255,255,.08);transition:all .22s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.difficulty-btn:active{transform:scale(.96)}.difficulty-btn-name{font-size:16px;font-weight:800;line-height:1.1}.difficulty-btn-note{font-size:10px;letter-spacing:2px;color:#ffffff8a}.diff-very-easy{border-color:#64eedc38}.diff-easy{border-color:#00e5cc3d}.diff-medium{border-color:#f1c40f42}.diff-hard{border-color:#ff8c323d}.diff-very-hard{border-color:#ff44443d}.difficulty-btn.diff-very-easy.active{background:linear-gradient(135deg,#6ed,#4cb);color:#080d13;border-color:#4cb;box-shadow:0 10px 24px #00e5cc3d}.difficulty-btn.diff-easy.active{background:linear-gradient(135deg,#00e5cc,#00b8a3);color:#080d13;border-color:#00e5cc;box-shadow:0 10px 24px #00e5cc42}.difficulty-btn.diff-medium.active{background:linear-gradient(135deg,#f1c40f,#d4ac0d);color:#1a1a0a;border-color:#f1c40f;box-shadow:0 10px 24px #f1c40f3d}.difficulty-btn.diff-hard.active{background:linear-gradient(135deg,#ff8c30,#e06500);color:#fff;border-color:#ff8c30;box-shadow:0 10px 24px #ff8c303d}.difficulty-btn.diff-very-hard.active{background:linear-gradient(135deg,#f44,#c22);color:#fff;border-color:#f44;box-shadow:0 10px 24px #ff44443d}.difficulty-btn.active .difficulty-btn-note{color:#000000a3}.difficulty-btn.diff-hard.active .difficulty-btn-note,.difficulty-btn.diff-very-hard.active .difficulty-btn-note{color:#ffffffc2}.difficulty-intel{padding:16px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff0d,#ffffff08);display:flex;flex-direction:column;gap:12px;box-shadow:inset 0 1px #ffffff0a}.menu-screen[data-diff=very_easy] .difficulty-intel{border-color:#64eedc33}.menu-screen[data-diff=easy] .difficulty-intel{border-color:#00e5cc38}.menu-screen[data-diff=medium] .difficulty-intel{border-color:#f1c40f3d}.menu-screen[data-diff=hard] .difficulty-intel{border-color:#ff8c3038}.menu-screen[data-diff=very_hard] .difficulty-intel{border-color:#ff44443d}.difficulty-intel-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.difficulty-intel-code{padding:6px 10px;border-radius:999px;background:#ffffff0f;color:#00e5cccc;font-size:10px;letter-spacing:2px}.difficulty-intel-title{font-size:22px;font-weight:800;color:#f2f6f8}.difficulty-intel-desc{font-size:14px;line-height:1.62;color:#cbdbe6c2}.difficulty-intel-chips{display:flex;flex-wrap:wrap;gap:8px}.difficulty-intel-chip{padding:8px 10px;border-radius:999px;background:#ffffff0d;border:1px solid rgba(255,255,255,.07);color:#e9eff4e0;font-size:12px;font-weight:700;letter-spacing:.3px}.menu-actions{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(120px,.8fr);gap:10px;margin-top:auto}.start-btn{position:relative;width:100%;padding:18px 24px;font-size:22px;font-weight:800;border-radius:20px;background:linear-gradient(135deg,#ffd54f,#f0c040,#e6a800);color:#1a1a0a;letter-spacing:4px;box-shadow:0 12px 28px #f0c0403d,0 0 0 1px #ffffff1a,inset 0 1px #ffffff4d;transition:all .18s;overflow:hidden}.start-btn:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);animation:shimmer 2.5s ease-in-out infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.start-btn:active{transform:scale(.96) translateY(2px);box-shadow:0 2px 12px #f0c04066}.tutorial-link-btn{width:100%;padding:13px 14px;font-size:14px;font-weight:700;letter-spacing:1.2px;border-radius:16px;background:#ffffff0a;color:#d2e0eac7;border:1px solid rgba(255,255,255,.08);transition:all .2s}.tutorial-link-btn:active{background:#ffffff0f;transform:scale(.97)}.menu-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.menu-version{font-size:11px;font-weight:600;letter-spacing:2px;color:#ffffff52}.menu-footer-note{font-size:12px;color:#afc4d27a}@media (min-width: 1000px){.difficulty-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}.gameover-screen{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100}.gameover-screen.victory{background:radial-gradient(ellipse at center,#f0c04026,#080d13eb 70%)}.gameover-screen.defeat{background:radial-gradient(ellipse at center,#ff44441f,#080d13eb 70%)}.gameover-text{font-size:64px;font-weight:900;letter-spacing:14px;margin-bottom:24px}.gameover-screen.victory .gameover-text{background:linear-gradient(135deg,#ffd54f,#f0c040);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 30px rgba(241,196,15,.6)) drop-shadow(0 4px 0 rgba(0,0,0,.5))}.gameover-screen.defeat .gameover-text{color:#f44;text-shadow:0 0 30px rgba(255,68,68,.5),0 4px 0 rgba(0,0,0,.4)}.gameover-subtitle{font-size:20px;color:var(--text-secondary);margin-bottom:44px}.replay-btn{position:relative;padding:18px 56px;font-size:22px;font-weight:800;border-radius:var(--radius-lg);background:linear-gradient(135deg,#ffd54f,#f0c040,#e6a800);color:#1a1a0a;letter-spacing:3px;box-shadow:0 6px 20px #f0c04066,inset 0 1px #ffffff4d;overflow:hidden}.replay-btn:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);animation:shimmer 2.5s ease-in-out infinite}.replay-btn:active{transform:scale(.96) translateY(2px)}@media (max-width: 899px) and (min-width: 600px){.menu-screen{justify-content:flex-start;padding-bottom:max(56px,calc(env(safe-area-inset-bottom) + 32px))}.menu-shell{grid-template-columns:1fr;max-width:760px;margin:0 auto}.menu-hero-panel{min-height:unset}.menu-command-card{gap:18px}.menu-title{font-size:54px;letter-spacing:6px}.menu-subtitle{font-size:14px;letter-spacing:3px}.menu-hero-copy{font-size:15px;line-height:1.68}.menu-board-preview{min-height:208px}.menu-preview-callout{max-width:220px}.difficulty-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.difficulty-btn{min-height:68px}.start-btn{font-size:20px}.gameover-text{font-size:52px;letter-spacing:10px}}@media (max-width: 599px){.menu-screen{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(104px,calc(env(safe-area-inset-bottom) + 88px)) max(12px,env(safe-area-inset-left))}.menu-shell{grid-template-columns:1fr;gap:12px;margin:0}.menu-hero-panel,.menu-command-card{border-radius:22px;padding:16px}.menu-hero-panel{min-height:unset}.menu-kicker-row{margin-bottom:12px;flex-wrap:wrap;align-items:flex-start}.menu-kicker{font-size:10px;letter-spacing:2.2px;line-height:1.4}.menu-status-chip{padding:6px 10px;font-size:10px}.menu-title{font-size:40px;letter-spacing:2px}.menu-subtitle{font-size:12px;letter-spacing:2px;margin-top:8px}.menu-hero-copy{margin-top:12px;font-size:14px;line-height:1.58}.menu-hero-pills{margin-top:14px;gap:8px}.menu-hero-pill{min-height:30px;padding:0 11px;font-size:11px}.menu-board-preview{min-height:164px;margin-top:12px;border-radius:20px}.menu-preview-piece{min-width:54px;height:36px;padding:0 10px;border-radius:12px;font-size:12px;letter-spacing:.4px}.menu-preview-piece-human{left:8%;bottom:16%}.menu-preview-piece-engineer{left:40%;bottom:28%;min-width:50px;height:32px}.menu-preview-piece-ai{right:8%;top:16%;min-width:56px;font-size:15px}.menu-preview-piece-flag{right:26%;bottom:16%;min-width:52px;height:30px;font-size:11px}.menu-preview-reticle{width:56px;height:56px;left:55%;top:32%;box-shadow:0 0 0 8px #00e5cc0a,0 0 16px #00e5cc14}.menu-preview-reticle:before{left:-10px;right:-10px}.menu-preview-reticle:after{top:-10px;bottom:-10px}.menu-preview-beam{width:36%}.menu-preview-callout{max-width:150px;padding:8px 10px;border-radius:12px}.menu-preview-callout-left{left:10px;top:10px}.menu-preview-callout-right{right:10px;bottom:10px}.menu-preview-callout-right{display:none}.menu-preview-callout-tag{font-size:8px}.menu-preview-callout-text{font-size:11px;line-height:1.4}.difficulty-section{gap:9px}.menu-command-title{font-size:28px;line-height:1.02}.menu-command-copy{margin-top:-4px;font-size:12px;line-height:1.45}.difficulty-intel{padding:13px;gap:9px}.menu-config-section{width:calc(100vw - 28px);margin-bottom:22px;gap:10px}.menu-config-title{font-size:12px;letter-spacing:2px}.menu-toggle-btn{padding:12px;gap:10px;border-radius:14px}.menu-toggle-copy{gap:4px}.menu-toggle-label{font-size:14px}.menu-toggle-desc{font-size:11px}.menu-toggle-side{gap:8px}.menu-toggle-state{font-size:10px}.menu-toggle-pill{width:50px;height:28px}.menu-toggle-knob{width:20px;height:20px}.menu-toggle-btn.active .menu-toggle-knob{transform:translate(22px)}.difficulty-label{font-size:11px;letter-spacing:1.8px}.difficulty-buttons{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.difficulty-btn{min-height:62px;padding:11px 12px;border-radius:15px;gap:5px}.difficulty-btn-name{font-size:13px}.difficulty-btn-note{font-size:9px}.difficulty-intel-top{gap:8px}.difficulty-intel-code{padding:5px 8px;font-size:9px}.difficulty-intel-title{font-size:19px}.difficulty-intel-desc{font-size:12px;line-height:1.45}.difficulty-intel-chips{gap:6px}.difficulty-intel-chip{font-size:10px;padding:6px 8px}.start-btn{padding:14px;font-size:17px;letter-spacing:2px;border-radius:16px}.tutorial-link-btn{padding:10px 12px;font-size:12px;letter-spacing:.8px;border-radius:14px}.menu-footer{justify-content:flex-start}.menu-footer-note{display:none}.gameover-text{font-size:40px;letter-spacing:8px;margin-bottom:16px}.gameover-subtitle{font-size:16px;margin-bottom:32px}.replay-btn{padding:14px 40px;font-size:18px;letter-spacing:2px}}@media (max-height: 420px) and (orientation: landscape){.menu-screen{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(56px,calc(env(safe-area-inset-bottom) + 36px)) max(10px,env(safe-area-inset-left))}.menu-shell{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:12px}.menu-hero-panel,.menu-command-card{padding:14px;border-radius:18px}.menu-hero-panel{min-height:unset}.menu-title{font-size:42px}.menu-subtitle{font-size:13px;letter-spacing:2px}.menu-hero-copy{margin-top:12px;font-size:13px;line-height:1.55}.menu-kicker-row{margin-bottom:10px}.menu-hero-pills{margin-top:12px;gap:8px}.menu-board-preview{min-height:148px;margin-top:14px}.menu-preview-piece{min-width:58px;height:36px;font-size:12px}.menu-preview-piece-engineer,.menu-preview-piece-flag{height:32px}.menu-preview-reticle{width:56px;height:56px}.menu-preview-callout{max-width:170px;padding:8px 10px;border-radius:12px}.menu-preview-callout-left{left:12px;top:12px}.menu-preview-callout-right{display:none}.menu-preview-callout-text{font-size:11px;line-height:1.42}.menu-command-title{font-size:24px}.menu-command-copy,.difficulty-intel-desc{font-size:12px;line-height:1.45}.difficulty-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.difficulty-btn{min-height:52px;padding:8px 10px}.difficulty-btn-name{font-size:12px}.difficulty-btn-note,.difficulty-intel-code,.menu-version{font-size:9px}.difficulty-intel{padding:12px;gap:8px}.difficulty-intel-title{font-size:18px}.difficulty-intel-chip{font-size:10px;padding:5px 8px}.start-btn{padding:12px 14px;font-size:16px}.tutorial-link-btn{padding:8px 12px;font-size:12px}.menu-footer-note{font-size:10px}}.game-container{position:relative;width:100%;height:100%;display:grid;grid-template-columns:clamp(232px,23vw,316px) minmax(0,1fr) clamp(220px,21vw,292px);gap:clamp(10px,1.2vw,16px);padding:clamp(10px,1.2vw,18px);overflow:hidden;background:radial-gradient(circle at 10% 10%,rgba(240,192,64,.08),transparent 18%),radial-gradient(circle at 88% 12%,rgba(0,229,204,.12),transparent 24%),linear-gradient(180deg,#061019,#07131c 52%,#040a11)}.game-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:42px 42px;opacity:.16}.side-panel{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;gap:12px;padding:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:visible}.left-panel,.right-panel{border:none}.right-panel{justify-content:space-between}.panel-spacer{display:none}.battle-command-card,.battle-report-shell,.battle-menu-btn{position:relative;border-radius:24px;border:1px solid rgba(255,255,255,.07);background:linear-gradient(180deg,#0a131cf5,#080f18e0),linear-gradient(135deg,#f0c04014,#00e5cc0d);box-shadow:0 26px 44px #0000003d;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden}.battle-command-card:before,.battle-report-shell:before,.battle-menu-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at top right,rgba(0,229,204,.1),transparent 30%),linear-gradient(135deg,rgba(240,192,64,.06),transparent 42%);opacity:.8}.battle-command-card,.battle-report-shell{padding:16px}.battle-panel-kicker,.battle-menu-kicker{position:relative;z-index:1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;font-weight:800;letter-spacing:.28em;text-transform:uppercase;color:#aabccd9e}.battle-command-card{min-height:0;display:flex;flex-direction:column;gap:14px}.battle-command-row{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-title{font-size:clamp(13px,1.05vw,18px);font-weight:900;letter-spacing:.3em;line-height:1;background:linear-gradient(135deg,#f0c040,#f7df8b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.difficulty-display{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:#dce6f0c7;font-size:12px;font-weight:700;white-space:nowrap}.difficulty-display:empty{display:none}.battle-turn-row{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.turn-indicator{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 14px;border-radius:18px;background:linear-gradient(135deg,#00e5cc,#04a797);color:#051015;font-size:clamp(15px,1.24vw,20px);font-weight:900;letter-spacing:.12em;box-shadow:0 16px 28px #00e5cc38,inset 0 1px #ffffff29}.turn-indicator.ai-turn{background:linear-gradient(135deg,#ff6161,#bc2d2d);color:#1a0505;box-shadow:0 16px 28px #ff616133,inset 0 1px #ffffff24}.control-btn{position:relative;z-index:1;width:100%;min-height:46px;padding:0 16px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#e0e9f2e0;font-size:14px;font-weight:800;text-align:center;transition:transform .18s ease,border-color .18s ease,background .18s ease,opacity .18s ease}.control-btn:disabled{opacity:.45;cursor:not-allowed}.control-btn:active:not(:disabled){transform:scale(.98)}.assist-btn{min-width:118px;width:auto;background:linear-gradient(135deg,#f0c0402e,#00bcd424);border-color:#f0c0403d;color:#f6f0d0;box-shadow:0 10px 24px #0000002e}.assist-display{position:relative;z-index:1;min-height:88px;padding:14px 15px;border-radius:18px;background:#ffffff09;border:1px solid rgba(255,255,255,.06);color:#dde7f0c2;font-size:14px;line-height:1.65}.assist-display.active{color:#f6f3df;border-color:#f0c04033;background:linear-gradient(135deg,#f0c04014,#00bcd40f)}.assist-display.loading{border-color:#00e5cc3d;color:#b8f3ee}.battle-report-shell{display:flex;flex-direction:column;gap:12px}.battle-report-grid{position:relative;z-index:1;display:grid;gap:10px}.captured-block{display:flex;flex-direction:column;gap:10px;padding:14px 14px 13px;border-radius:18px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .18s ease,border-color .18s ease,background .18s ease}.captured-summary-btn{width:100%;border:none;text-align:left;color:inherit;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.captured-summary-btn:active{transform:scale(.985)}.captured-block-human{background:linear-gradient(180deg,#7814141f,#320a0a47);border:1px solid rgba(255,88,88,.18)}.captured-block-ai{background:linear-gradient(180deg,#0078641a,#00282447);border:1px solid rgba(0,229,204,.16)}.captured-label{font-size:13px;font-weight:800;letter-spacing:.08em;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.captured-label-human{color:#ff7676}.captured-label-ai{color:#74f1e1}.captured-count{font-size:12px;font-weight:900;min-width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ffffff1f;box-shadow:inset 0 1px #ffffff24}.captured-pieces-list,.captured-summary-preview{display:flex;flex-wrap:wrap;gap:6px;min-height:32px;align-items:center}.captured-piece-mini{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:54px;height:28px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.02em;text-shadow:0 1px 3px rgba(0,0,0,.6);box-shadow:0 2px 5px #00000059;white-space:nowrap}.captured-block-human .captured-piece-mini{background:linear-gradient(160deg,#a01e1eb3,#500a0ae6);color:#f99;border:1px solid rgba(255,68,68,.3)}.captured-block-ai .captured-piece-mini{background:linear-gradient(160deg,#00645a99,#003c32cc);color:#8ed;border:1px solid rgba(0,229,204,.3)}.captured-piece-name{line-height:1}.captured-open-hint{font-size:10px;font-weight:700;letter-spacing:.12em;color:#ffffff85;text-transform:uppercase}.captured-piece-num{min-width:20px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ffffff29;color:#fff;font-size:10px;font-weight:900;border:1px solid rgba(0,0,0,.3);box-shadow:0 1px 3px #0006}.captured-empty{font-size:12px;color:#ffffffa6;padding:3px 2px;white-space:nowrap}.captured-preview-empty{font-size:12px;color:#ffffffb8;padding:3px 1px;white-space:nowrap}.captured-preview-more{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:800;color:#ffffffd6;background:#ffffff14;border:1px solid rgba(255,255,255,.08)}.battle-menu-btn{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;min-height:104px;padding:18px 18px 20px;text-align:left;background:linear-gradient(180deg,#0b141ef5,#080e16eb),linear-gradient(135deg,#f0c04014,#00e5cc0f)}.battle-menu-label{position:relative;z-index:1;font-size:clamp(20px,1.8vw,28px);font-weight:900;color:#f6fbff;letter-spacing:.06em}.board-wrapper{position:relative;z-index:1;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;padding:clamp(14px,1.6vw,26px);overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.07);background:radial-gradient(circle at 50% 12%,rgba(0,229,204,.12),transparent 30%),radial-gradient(circle at 82% 24%,rgba(240,192,64,.08),transparent 22%),linear-gradient(180deg,#071119e6,#050a11f5);box-shadow:0 34px 56px #00000052}.board-wrapper:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:46px 46px;opacity:.18}.board-wrapper:after{content:"TACTICAL FIELD";position:absolute;top:14px;left:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;font-weight:800;letter-spacing:.28em;color:#a8bacb8a;pointer-events:none}.board{position:relative;z-index:1;background:radial-gradient(circle at 50% 18%,rgba(0,229,204,.08),transparent 26%),radial-gradient(circle at 50% 82%,rgba(240,192,64,.07),transparent 24%),linear-gradient(180deg,#0a1812,#0d2418 42%,#08140f);border:1px solid rgba(0,229,204,.12);border-radius:var(--radius-lg);box-shadow:0 0 80px #000000b3,0 0 0 1px #00e5cc0d,inset 0 0 40px #0000004d;overflow:hidden}.board:before,.board:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.board:before{background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.018) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(0,0,0,.18),transparent 62%);background-size:28px 28px,28px 28px,auto;opacity:.28}.board:after{top:10px;right:10px;bottom:10px;left:10px;border-radius:20px;border:1px solid rgba(0,229,204,.08);box-shadow:inset 0 0 0 1px #f0c0400a,inset 0 30px 40px #ffffff05}.board-lines{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.board-lines line.road{stroke:#00e5cc24;stroke-width:1.5}.board-lines line.railway-rail{stroke:#dcb95fb3;stroke-width:3;stroke-linecap:round}.board-lines line.railway-tie{stroke:#8c5f23b3;stroke-width:5;stroke-linecap:butt}.position-slot.railway-pos{background:#b9913c26;border:1px solid rgba(215,175,80,.4)}.position-slot.camp.railway-pos{background:#00e5cc1a;border:2px solid rgba(0,229,204,.4);box-shadow:inset 0 0 12px #00e5cc26,0 0 6px #00e5cc1a}.board-center-divider{position:absolute;left:3%;right:3%;top:50%;height:2px;background:linear-gradient(90deg,transparent,rgba(0,229,204,.55),rgba(240,192,64,.72),rgba(0,229,204,.55),transparent);opacity:.6;filter:drop-shadow(0 0 10px rgba(0,229,204,.2));z-index:2}.arena-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:14px;font-weight:800;background:linear-gradient(135deg,var(--accent-gold),var(--accent-teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;opacity:.42;letter-spacing:10px;z-index:2;pointer-events:none;text-shadow:0 0 18px rgba(0,229,204,.16)}.position-slot{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:7px;background:linear-gradient(180deg,#00000038,#0412102e);border:1px solid rgba(0,229,204,.07);box-shadow:inset 0 1px #ffffff05;z-index:3;transition:background .2s}.position-slot.camp{border-radius:50%;background:radial-gradient(circle at 50% 50%,#00e5cc29,#005a5829);border:2px solid rgba(0,229,204,.4);box-shadow:inset 0 0 14px #00e5cc26,0 0 10px #00e5cc14}.position-slot.hq{background:linear-gradient(180deg,#f0c0401f,#48360c29);border:2px solid rgba(240,192,64,.5);border-radius:9px;box-shadow:inset 0 0 18px #f0c04029,0 0 10px #f0c04014}.slot-label{font-size:11px;font-weight:700;color:#00e5ccb3;pointer-events:none;z-index:4}.slot-label.hq-label{color:#f0c040b3;font-size:10px}.position-slot.highlight-move{background:#00e5cc59;border:2.5px solid #00e5cc;box-shadow:0 0 14px #00e5cc99;cursor:pointer;z-index:15}.position-slot.highlight-attack{background:#ff444473;border:2.5px solid #ff4444;cursor:pointer;z-index:15;animation:pulse-attack .7s ease-in-out infinite}@keyframes pulse-attack{0%,to{box-shadow:0 0 8px #f446}50%{box-shadow:0 0 22px #ff4444e6}}.position-slot.highlight-selected{background:#f1c40f66;border:2.5px solid var(--accent-gold);box-shadow:0 0 22px #f1c40fa6;z-index:15}.position-slot.highlight-ai-from{background:#ff8c008c;border:3px solid #ff8c00;box-shadow:0 0 18px #ff8c00b3;z-index:15;animation:pulse-ai-from .7s ease-in-out infinite}@keyframes pulse-ai-from{0%,to{box-shadow:0 0 12px #ff8c0080}50%{box-shadow:0 0 28px #ff8c00e6}}.flag-banner{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);padding:16px 32px;border-radius:14px;font-size:22px;font-weight:800;letter-spacing:2px;text-align:center;z-index:150;animation:flag-banner-in .4s ease-out;pointer-events:none}.flag-banner-human{background:linear-gradient(135deg,#0a1a18,#0d3328);border:2px solid var(--accent-gold);color:var(--accent-gold);box-shadow:0 0 40px #ffd70080,0 8px 30px #0009}.flag-banner-ai{background:linear-gradient(135deg,#2a0a0a,#4a1515);border:2px solid #ff4444;color:#f99;box-shadow:0 0 40px #f446,0 8px 30px #0009}@keyframes flag-banner-in{0%{transform:translate(-50%,-50%) scale(.7);opacity:0}60%{transform:translate(-50%,-50%) scale(1.05);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.flag-banner-recovered{background:linear-gradient(135deg,#0a2030,#153848);border:2px solid #00e5cc;color:#aaf0e8;box-shadow:0 0 40px #00e5cc66,0 8px 30px #0009}.flag-banner-hide{opacity:0;transition:opacity .5s}.position-slot.highlight-ai-to{background:#ffc8004d;border:3px dashed #ffcc00;box-shadow:0 0 14px #ffc80080;z-index:15;animation:pulse-ai-to .7s ease-in-out infinite}@keyframes pulse-ai-to{0%,to{box-shadow:0 0 8px #ffc8004d}50%{box-shadow:0 0 22px #ffc800b3}}.exit-confirm-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:100;display:flex;align-items:center;justify-content:center}.exit-confirm-box{background:#080d13f7;border:1px solid rgba(0,229,204,.1);border-radius:var(--radius-lg);padding:28px 32px;min-width:280px;text-align:center;box-shadow:var(--shadow-deep);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.game-menu-box{width:min(460px,calc(100vw - 32px));text-align:left}.exit-confirm-title{font-size:20px;font-weight:800;letter-spacing:3px;background:linear-gradient(135deg,#ffd54f,#e6a800);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.exit-confirm-hint{font-size:13px;color:var(--text-secondary);letter-spacing:1px;margin-bottom:24px}.game-menu-section{margin-bottom:22px}.game-menu-box .menu-toggle-btn{cursor:pointer}.exit-confirm-actions{display:flex;gap:12px;justify-content:center}.exit-confirm-btn{padding:10px 24px;border-radius:var(--radius-sm);font-size:15px;font-weight:700;letter-spacing:1px;transition:all .15s}.exit-confirm-btn.cancel{background:linear-gradient(135deg,#00e5cc,#009e8e);color:#080d13;box-shadow:0 3px 12px #00e5cc4d,inset 0 1px #ffffff1a}.exit-confirm-btn.cancel:active{transform:scale(.96)}.exit-confirm-btn.quit{background:var(--glass-bg);color:var(--text-secondary);border:1px solid var(--glass-border)}.exit-confirm-btn.quit:active{background:#ffffff14}.captured-modal-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:110;display:flex;align-items:center;justify-content:center;padding:18px;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.captured-modal-box{width:min(760px,calc(100vw - 36px));max-height:min(84vh,620px);display:flex;flex-direction:column;gap:16px;padding:20px;border-radius:20px;background:#080d13f7;border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 80px #0000008c}.captured-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.captured-modal-eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#ffffff73;margin-bottom:4px}.captured-modal-title{font-size:clamp(18px,1.8vw,28px);font-weight:800;letter-spacing:2px;background:linear-gradient(135deg,var(--accent-gold),#f9de7a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.captured-modal-close{min-width:68px;padding:9px 12px;border-radius:999px;background:#ffffff0f;color:var(--text-secondary);border:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:700;letter-spacing:1px;-moz-appearance:none;appearance:none;-webkit-appearance:none}.captured-modal-close:active{background:#ffffff1f}.captured-modal-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.captured-modal-section{min-height:0;display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:16px;border:1px solid rgba(255,255,255,.06)}.captured-modal-section-human{background:linear-gradient(180deg,#7814142e,#280a0a61);border-color:#ff5a5a2e}.captured-modal-section-ai{background:linear-gradient(180deg,#00786429,#0028245c);border-color:#00e5cc29}.captured-modal-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.captured-modal-section-title{font-size:15px;font-weight:800;letter-spacing:1px}.captured-modal-total{min-width:28px;height:28px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ffffff1f;color:#fff;font-size:12px;font-weight:800}.captured-modal-list{flex:1;min-height:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:16px 14px;align-content:start;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:4px}.captured-modal-pile{position:relative;min-height:88px;padding:10px 12px 8px 4px}.captured-modal-pile:before,.captured-modal-pile:after{content:"";position:absolute;top:16px;right:8px;bottom:0;left:18px;border-radius:16px;pointer-events:none;transform-origin:center}.captured-modal-pile:before{opacity:.9;transform:rotate(-7deg)}.captured-modal-pile:after{opacity:.78;transform:rotate(5deg) translate(7px,4px)}.captured-modal-section-human .captured-modal-pile:before,.captured-modal-section-human .captured-modal-pile:after{background:linear-gradient(160deg,#641414eb,#340a0af5);border:1px solid rgba(255,100,100,.18);box-shadow:0 10px 18px #0000002e}.captured-modal-section-ai .captured-modal-pile:before,.captured-modal-section-ai .captured-modal-pile:after{background:linear-gradient(160deg,#0a5244eb,#062a24f5);border:1px solid rgba(0,229,204,.16);box-shadow:0 10px 18px #0000002e}.captured-modal-pile-face{position:relative;z-index:1;min-height:78px;padding:12px 12px 10px;border-radius:16px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;box-shadow:0 18px 28px #00000042;overflow:hidden}.captured-modal-pile-face:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:12px;pointer-events:none;border:1px solid rgba(255,255,255,.08)}.captured-modal-section-human .captured-modal-pile-face{background:linear-gradient(160deg,#7a1f1f,#3d1010 55%,#220909);border:1px solid rgba(255,110,110,.22)}.captured-modal-section-ai .captured-modal-pile-face{background:linear-gradient(160deg,#156757,#0b3a31 55%,#08211c);border:1px solid rgba(0,229,204,.2)}.captured-modal-pile-rank{align-self:flex-start;min-width:42px;padding:4px 8px;border-radius:999px;background:#f0c04029;color:var(--accent-gold);font-size:11px;font-weight:800;line-height:1;text-align:center}.captured-modal-pile-name{color:#f4f7f8;font-size:17px;font-weight:800;letter-spacing:.5px;line-height:1.1;text-shadow:0 1px 6px rgba(0,0,0,.28)}.captured-modal-pile-count{position:absolute;top:8px;right:8px;min-width:34px;height:34px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:linear-gradient(135deg,#ffd54f,#f0c040);color:#261700;font-size:12px;font-weight:900;box-shadow:0 6px 12px #00000047}.captured-modal-empty{grid-column:1 / -1;min-height:140px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ffffff0a;color:#ffffffad;font-size:13px;letter-spacing:1px}@media (hover: hover){.control-btn:hover:not(:disabled){transform:translateY(-1px);border-color:#ffffff24;background:#ffffff14}.assist-btn:hover:not(:disabled){border-color:#f0c04057;background:linear-gradient(135deg,#f0c04038,#00bcd42e)}.captured-summary-btn:hover{transform:translateY(-1px)}.captured-block-human:hover{border-color:#ff585847}.captured-block-ai:hover{border-color:#00e5cc3d}}@media (max-width: 1023px){.game-container{grid-template-columns:clamp(202px,24vw,248px) minmax(0,1fr) clamp(194px,22vw,236px);gap:10px;padding:10px}.battle-command-card,.battle-report-shell{padding:14px}.battle-menu-btn{min-height:92px;padding:16px}.assist-display{min-height:74px;font-size:13px}.captured-block{padding:12px}}@media (max-width: 899px) and (min-width: 600px){.panel-title{font-size:12px;letter-spacing:.24em}.difficulty-display{min-height:30px;font-size:11px}.turn-indicator{min-height:42px;font-size:14px}.control-btn{min-height:42px;font-size:13px}.assist-btn{min-width:108px}.assist-display{min-height:64px;padding:12px 13px;line-height:1.55}.captured-label{font-size:12px}.captured-piece-mini{min-width:46px;height:26px;font-size:11px;padding:0 7px}.captured-open-hint{font-size:9px}.captured-modal-box{padding:18px}.captured-modal-section{padding:12px}.captured-modal-list{grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:14px 12px}}@media (max-width: 599px){.game-container{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto;gap:3px;padding:calc(3px + env(safe-area-inset-top)) 3px calc(3px + env(safe-area-inset-bottom))}.side-panel{gap:3px}.battle-command-card{padding:6px;gap:4px;border-radius:14px}.battle-panel-kicker,.battle-menu-kicker{display:none}.battle-command-row{gap:4px}.panel-title{font-size:7px;letter-spacing:.1em}.difficulty-display{min-height:20px;padding:0 6px;font-size:8px}.battle-turn-row{gap:4px}.turn-indicator{min-height:28px;padding:0 8px;font-size:10px;letter-spacing:.03em;border-radius:9px}.control-btn{min-height:28px;padding:0 7px;font-size:9px;border-radius:9px}.assist-btn{min-width:72px}.assist-display{min-height:0;padding:4px 7px;font-size:9px;line-height:1.15;border-radius:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assist-display.active,.assist-display.loading{min-height:24px;white-space:normal}.board-wrapper{padding:1px;border-radius:14px;background:radial-gradient(circle at 50% 12%,rgba(0,229,204,.08),transparent 26%),linear-gradient(180deg,#060f16d6,#040a10f0)}.board-wrapper:after{display:none}.right-panel{display:grid;grid-template-columns:minmax(0,1fr) 62px;align-items:stretch;gap:3px}.battle-report-shell{min-width:0;padding:0;border:none;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.battle-report-shell:before{content:none}.battle-report-kicker{display:none}.battle-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.captured-block{min-width:0;min-height:44px;justify-content:center;gap:2px;padding:5px 6px;border-radius:10px}.captured-label{font-size:8px;letter-spacing:0}.captured-count{min-width:18px;height:18px;font-size:8px}.captured-summary-preview{display:none}.captured-summary-preview::-webkit-scrollbar{display:none}.captured-open-hint{display:none}.captured-preview-more{flex-shrink:0;height:22px}.battle-menu-btn{min-width:62px;min-height:44px;align-items:center;justify-content:center;gap:2px;padding:5px 4px;border-radius:10px}.battle-menu-label{font-size:12px;letter-spacing:.01em}.flag-banner{font-size:16px;padding:10px 18px;border-radius:10px}.exit-confirm-box{min-width:unset;width:calc(100vw - 32px);max-width:340px;padding:20px 18px}.game-menu-box{max-width:380px}.exit-confirm-title{font-size:17px;letter-spacing:2px}.exit-confirm-hint{font-size:12px;margin-bottom:18px}.exit-confirm-btn{font-size:13px;padding:8px 18px}.game-menu-section{margin-bottom:18px}.captured-modal-overlay{padding:8px}.captured-modal-box{width:calc(100vw - 16px);max-height:calc(100vh - 16px);padding:12px;gap:10px;border-radius:14px}.captured-modal-header{align-items:center}.captured-modal-eyebrow{font-size:8px;letter-spacing:1.2px}.captured-modal-title{font-size:16px;letter-spacing:.5px}.captured-modal-grid{grid-template-columns:1fr;gap:8px}.captured-modal-section{padding:10px;gap:8px}.captured-modal-section-title{font-size:13px}.captured-modal-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px 4px}.captured-modal-pile{min-height:50px;padding:4px 4px 2px 1px}.captured-modal-pile:before,.captured-modal-pile:after{top:8px;right:3px;bottom:0;left:8px;border-radius:9px}.captured-modal-pile-face{min-height:45px;padding:6px 6px 5px;gap:3px;border-radius:9px}.captured-modal-pile-rank{min-width:24px;padding:2px 4px;font-size:7px}.captured-modal-pile-name{font-size:10px;letter-spacing:.1px}.captured-modal-pile-count{min-width:19px;height:19px;top:4px;right:4px;padding:0 4px;font-size:8px}}@media (max-height: 520px) and (orientation: landscape){.game-container{grid-template-columns:clamp(150px,20vw,192px) minmax(0,1fr) clamp(160px,22vw,204px);grid-template-rows:1fr;gap:6px;padding:calc(6px + env(safe-area-inset-top)) 6px calc(6px + env(safe-area-inset-bottom))}.battle-command-card,.battle-report-shell{padding:10px;gap:8px;border-radius:18px}.battle-menu-btn{min-height:74px;padding:10px 12px;border-radius:18px}.battle-panel-kicker,.battle-menu-kicker,.board-wrapper:after{font-size:8px}.panel-title{font-size:10px}.difficulty-display{min-height:24px;padding:0 8px;font-size:10px}.turn-indicator{min-height:34px;font-size:12px;padding:0 8px}.control-btn{min-height:34px;padding:0 10px;font-size:11px}.assist-btn{min-width:90px}.assist-display{min-height:42px;padding:8px 9px;font-size:11px}.captured-block{padding:8px;gap:5px}.captured-label{font-size:10px}.captured-count{min-width:22px;height:22px;font-size:9px}.captured-piece-mini{min-width:36px;height:20px;font-size:9px;padding:0 5px}.captured-piece-num{min-width:14px;height:14px;font-size:8px;padding:0 3px}.captured-preview-more{height:18px;padding:0 5px;font-size:8px}.captured-open-hint{display:none}.battle-menu-label{font-size:16px}.board-wrapper{padding:14px 8px 8px;border-radius:20px}.captured-modal-overlay{padding:8px}.captured-modal-box{max-height:calc(100vh - 16px);padding:12px;gap:10px}.captured-modal-title{font-size:15px}.captured-modal-close{min-width:58px;padding:6px 8px;font-size:10px}.captured-modal-list{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:10px 8px}.captured-modal-pile{min-height:64px;padding:6px 6px 4px 1px}.captured-modal-pile:before,.captured-modal-pile:after{top:11px;right:4px;bottom:0;left:11px;border-radius:12px}.captured-modal-pile-face{min-height:58px;padding:8px 8px 7px;border-radius:12px}.captured-modal-pile-face:after{top:4px;right:4px;bottom:4px;left:4px;border-radius:9px}.captured-modal-pile-rank{min-width:30px;font-size:8px;padding:3px 5px}.captured-modal-pile-name{font-size:12px}.captured-modal-pile-count{min-width:24px;height:24px;top:6px;right:6px;font-size:9px}.game-menu-box{width:min(320px,calc(100vw - 16px))}.game-menu-section{margin-bottom:12px}}.piece{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--radius-md);font-weight:800;z-index:10;transition:left .5s ease,top .5s ease,transform .2s;cursor:pointer;perspective:200px}.piece:active{transform:scale(.93)}.piece.human{background:linear-gradient(160deg,#0a1818,#0d2020,#081515);border:2px solid rgba(0,229,204,.6);color:#e0f0f0;box-shadow:0 3px 12px #00000080,0 0 8px #00e5cc33,inset 0 1px #00e5cc1a}.piece-rank{font-size:var(--piece-font-rank, 10px);line-height:1;opacity:.65}.piece-name{font-size:var(--piece-font-name, 17px);line-height:1.1}.piece.ai{background:linear-gradient(160deg,#1a0808,#120505,#0d0303);border:2px solid rgba(255,68,68,.35);color:#a55;box-shadow:0 3px 12px #0009,inset 0 1px #ff44440d}.piece.ai .piece-name{font-size:var(--piece-font-ai-name, 20px);color:#c44;text-shadow:0 0 8px rgba(255,68,68,.4)}.piece.ai:after{content:"";position:absolute;top:3px;left:3px;right:3px;bottom:3px;border:1px solid rgba(255,68,68,.12);border-radius:5px;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,68,68,.03) 2px,rgba(255,68,68,.03) 3px)}.piece.ai.revealed{background:linear-gradient(160deg,#f44,#c22);border-color:#f55;color:#fff}.piece.ai.revealed .piece-name{color:#fff;text-shadow:none}.piece.ai.revealed:after{display:none}.piece.flag-revealed{animation:flag-blink .4s ease-in-out 4}@keyframes flag-blink{0%,to{box-shadow:0 0 5px #ffd7004d}50%{box-shadow:0 0 30px gold,0 0 50px #ffd70080}}.piece.selected{border-color:#f1c40f!important;z-index:20;animation:piece-bounce .55s ease-in-out infinite}@keyframes piece-bounce{0%,to{transform:scale(1.06) translateY(0);box-shadow:0 0 16px #f1c40fb3,0 4px 12px #0000004d}50%{transform:scale(1.06) translateY(-5px);box-shadow:0 0 28px #f1c40fe6,0 8px 16px #0003}}.piece.attackable{border-color:#f44!important;animation:pulse-attackable .7s ease-in-out infinite}@keyframes pulse-attackable{0%,to{box-shadow:0 0 10px #ff444480}50%{box-shadow:0 0 28px #ff4444e6,0 0 8px red}}.piece.flag-carrier{border-color:var(--accent-gold)!important;z-index:25;animation:carrier-pulse 1.5s ease-in-out infinite}@keyframes carrier-pulse{0%,to{box-shadow:0 0 10px 2px #ffd700b3}50%{box-shadow:0 0 24px 6px #ffd700f2,0 0 40px #ffd70059}}.carrier-badge{position:absolute;top:-7px;right:-7px;font-size:15px;z-index:30;filter:drop-shadow(0 0 4px rgba(0,0,0,.9));pointer-events:none}.piece.piece-captured{opacity:0;transform:scale(.4) rotate(15deg);transition:opacity .4s,transform .4s!important;pointer-events:none}.pk-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:200;opacity:0;pointer-events:none;transition:opacity .3s}.pk-overlay.active{opacity:1;pointer-events:auto}.pk-arena{position:relative;display:flex;align-items:center;justify-content:center;gap:32px;padding-bottom:60px}.pk-slot{display:flex;flex-direction:column;align-items:center;gap:10px}.pk-side-label{font-size:15px;font-weight:700;letter-spacing:3px;color:#c55;text-shadow:0 0 8px rgba(255,68,68,.4)}.pk-side-label-human{color:#6ed;text-shadow:0 0 8px rgba(0,229,204,.5)}.pk-piece{display:flex;flex-direction:column;align-items:center;justify-content:center;width:140px;height:170px;border-radius:14px;font-weight:800;transition:transform .3s,box-shadow .3s;position:relative;border:3px solid transparent}.pk-piece.pk-ai{background:linear-gradient(160deg,#1a0808,#120505,#0d0303);border-color:#ff444459;color:#c44;box-shadow:0 8px 28px #0009}.pk-piece.pk-human{background:linear-gradient(160deg,#0a1818,#0d2020,#081515);border-color:#00e5cc99;color:#e0f0f0;box-shadow:0 8px 28px #00000080,0 0 12px #00e5cc33}.pk-piece-rank{font-size:14px;opacity:.7;margin-bottom:4px}.pk-piece-name{font-size:32px;font-weight:900}.pk-vs{font-size:40px;font-weight:900;background:linear-gradient(135deg,#ffd54f,#e6a800);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 15px rgba(255,215,0,.5));opacity:0;z-index:5;flex-shrink:0}.pk-vs.show{opacity:1;animation:vs-impact .3s ease-out}@keyframes vs-impact{0%{transform:scale(2.2);opacity:0}60%{transform:scale(.9);opacity:1}to{transform:scale(1);opacity:1}}.pk-status{position:absolute;bottom:0;left:50%;transform:translate(-50%);font-size:24px;font-weight:800;letter-spacing:4px;white-space:nowrap;opacity:0;transition:opacity .3s;text-shadow:0 2px 8px rgba(0,0,0,.7)}.pk-status.show{opacity:1}@keyframes scan-pulse{0%,to{box-shadow:0 0 10px var(--glow-blue)}25%{box-shadow:0 0 28px #0ff}50%{box-shadow:0 0 18px #fff}75%{box-shadow:0 0 28px var(--glow-blue)}}.pk-piece.scanning{animation:scan-pulse .35s ease-in-out infinite}@keyframes flip-reveal{0%{transform:rotateY(90deg) scale(.9);opacity:.5}to{transform:rotateY(0) scale(1);opacity:1}}.pk-piece.capture-revealed{animation:flip-reveal .45s ease-out}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.pk-piece.clash{animation:shake .4s ease-in-out}@keyframes glow-green{0%{box-shadow:0 0 10px var(--glow-green)}50%{box-shadow:0 0 50px var(--glow-green),0 0 80px #0f06}to{box-shadow:0 0 25px var(--glow-green)}}.pk-piece.winner{animation:glow-green 1.2s ease-in-out;border-color:var(--glow-green)!important;transform:scale(1.07)}@keyframes glow-red{0%{box-shadow:0 0 10px var(--glow-red)}40%{box-shadow:0 0 40px var(--glow-red),0 0 60px #ff00004d}to{box-shadow:0 0 5px transparent}}.pk-piece.loser{animation:glow-red .8s ease-out forwards;border-color:var(--glow-red)!important;opacity:.45;transform:scale(.88)}.pk-piece.mutual{animation:glow-red .8s ease-out forwards;border-color:#f60!important;opacity:.5}@keyframes explode{0%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.7}to{transform:scale(0);opacity:0}}.pk-explosion{position:absolute;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(255,100,0,.9) 0%,rgba(255,0,0,.5) 50%,transparent 70%);animation:explode .5s ease-out forwards;pointer-events:none;z-index:10}.pk-carrier-badge{font-size:11px;font-weight:700;letter-spacing:1px;color:#f0c040;text-align:center;margin-top:6px;padding:2px 8px;background:#f0c0401f;border:1px solid rgba(240,192,64,.35);border-radius:4px;pointer-events:none}@keyframes flag-victory-glow{0%,to{background:#ffd70000}50%{background:#ffd7002e}}.pk-overlay.flag-capture{animation:flag-victory-glow 1.2s ease-in-out infinite}@keyframes bomb-flash{0%{background:#000000bf}15%{background:#ff50008c}35%{background:#c8280066}60%{background:#50000099}to{background:#000000bf}}.pk-overlay.bomb-blast{animation:bomb-flash .8s ease-out forwards}@keyframes mine-flash{0%{background:#000000bf}15%{background:#dc8c0080}40%{background:#a0500059}to{background:#000000bf}}.pk-overlay.mine-blast{animation:mine-flash .7s ease-out forwards}@keyframes big-explode{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}50%{transform:translate(-50%,-50%) scale(1.8);opacity:.85}to{transform:translate(-50%,-50%) scale(2.8);opacity:0}}.pk-big-explosion{position:absolute;left:50%;top:50%;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,180,1) 0%,rgba(255,140,0,.9) 30%,rgba(255,40,0,.7) 55%,rgba(100,0,0,.3) 75%,transparent 90%);animation:big-explode .8s ease-out forwards;pointer-events:none;z-index:20}@media (max-width: 599px){.pk-arena{gap:16px;padding-bottom:44px}.pk-piece{width:100px;height:130px;border-radius:10px;border-width:2px}.pk-piece-rank{font-size:11px}.pk-piece-name{font-size:22px}.pk-vs{font-size:28px}.pk-side-label{font-size:12px;letter-spacing:2px}.pk-status{font-size:16px;letter-spacing:2px}.pk-big-explosion{width:150px;height:150px}.pk-explosion{width:100px;height:100px}}@media (max-width: 369px){.pk-piece{width:85px;height:110px}.pk-piece-name{font-size:18px}.pk-arena{gap:10px}}.deployment-container{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(circle at top right,rgba(240,192,64,.1),transparent 24%),radial-gradient(circle at 18% 0%,rgba(0,229,204,.12),transparent 28%),linear-gradient(180deg,#071018,#08111b 36%,#050b12);z-index:50}.deployment-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:32px 32px;opacity:.14;pointer-events:none}.deployment-header,.deploy-mission-strip,.deploy-enemy-zone,.deploy-board-viewport,.deploy-tray-strip{position:relative;z-index:1}.deployment-header{display:flex;flex-direction:column;gap:14px;padding:calc(14px + env(safe-area-inset-top)) 14px 14px;background:linear-gradient(180deg,#070e15f5,#070e15e0);border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);flex-shrink:0}.deploy-header-main{display:flex;flex-direction:column;gap:10px}.deploy-header-eyebrow,.deploy-progress-pill,.deploy-chip-label,.deploy-tray-title,.deploy-tray-legend,.deploy-enemy-zone-label,.deploy-territory-label,.tray-piece-rank,.tray-piece-count,.layout-modal-title,.layout-item-date{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.deploy-header-eyebrow{color:#aabccdad;font-size:10px;font-weight:700;letter-spacing:.26em;text-transform:uppercase}.deploy-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.deployment-title{min-width:0;font-size:clamp(24px,6vw,34px);font-weight:900;letter-spacing:-.04em;color:#f8fbff}.deploy-progress-pill{flex-shrink:0;display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:#f0c0401f;border:1px solid rgba(240,192,64,.26);color:#f6cf60;font-size:11px;font-weight:800;letter-spacing:.1em}.deploy-status{color:#d0ddeacc;font-size:14px;line-height:1.65}.deploy-progress-track{position:relative;width:100%;height:8px;border-radius:999px;overflow:hidden;background:#ffffff14}.deploy-progress-fill{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#00e5cc,#f0c040);box-shadow:0 0 18px #00e5cc42;transition:width .22s ease}.deployment-actions{display:flex;flex-direction:column;gap:8px}.deploy-action-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.deploy-btn{min-height:42px;padding:0 12px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#e4ecf5eb;font-size:13px;font-weight:800;transition:transform .18s ease,border-color .18s ease,background .18s ease,opacity .18s ease}.deploy-btn:active:not(:disabled){transform:scale(.97)}.deploy-btn:disabled{opacity:.45;cursor:not-allowed}.deploy-btn.ghost{color:#cddce9d1}.deploy-btn.save{border-color:#f0c04047;background:#f0c0401a;color:#f6cf60}.deploy-btn.loadbtn{border-color:#00e5cc42;background:#00e5cc1a;color:#8cf6e8}.deploy-btn.random{border-color:#ffffff1f;background:#ffffff0d}.deploy-btn.clear{border-color:#ff6f6f33;background:#ff595917;color:#ffb3b3}.deploy-btn.start{border-color:#00e5cc33;background:linear-gradient(135deg,#00e5cc,#0ca392);color:#041015;box-shadow:0 14px 24px #00e5cc2e}.deploy-mission-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 14px 12px;background:linear-gradient(180deg,#070e15e0,#070e1570);border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}.deploy-chip{display:flex;flex-direction:column;gap:5px;padding:12px 12px 11px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff0d,#ffffff05);box-shadow:0 14px 22px #00000029}.deploy-chip-wide{grid-column:1 / -1}.deploy-chip-label{color:#abbdcda3;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.deploy-chip-value{color:#f5f8fb;font-size:15px;font-weight:800;line-height:1.5}.deploy-enemy-zone{flex:0 0 auto;min-height:34px;display:flex;align-items:center;justify-content:center;padding:6px 14px 7px;background:linear-gradient(180deg,#78141429,#3c0c0c0a),linear-gradient(180deg,rgba(255,255,255,.01),transparent);border-bottom:1px solid rgba(255,111,111,.1)}.deploy-enemy-zone-label{color:#ff80806b;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.deploy-board-viewport{flex:1;min-height:0;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;padding:0 6px 6px}.deploy-board-viewport .board{flex-shrink:0;transform-origin:bottom center}.deploy-territory-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;justify-content:center;padding-top:14px;pointer-events:none;z-index:15;opacity:0;background:linear-gradient(180deg,rgba(7,14,21,.68),rgba(7,14,21,.38) 36%,transparent 72%)}.deploy-territory-label{display:inline-flex;align-items:center;min-height:28px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,111,111,.26);background:#7814142e;color:#ffc2c2e6;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.deploy-tray-strip{flex-shrink:0;max-height:min(34vh,300px);padding:10px 12px calc(12px + env(safe-area-inset-bottom));overflow-y:auto;scrollbar-width:none;background:linear-gradient(180deg,#070e15eb,#070e15f7);border-top:1px solid rgba(255,255,255,.06);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.deploy-tray-strip::-webkit-scrollbar{display:none}.deploy-tray-head{position:sticky;top:-10px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:-10px -12px 10px;padding:10px 12px;background:linear-gradient(180deg,#070e15f7,#070e15e0)}.deploy-tray-title{color:#f6f8fb;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.deploy-tray-subtitle{margin-top:5px;color:#b0c2d2b8;font-size:13px;line-height:1.5}.deploy-tray-legend{flex-shrink:0;color:#88f8e5d1;font-size:10px;font-weight:700;letter-spacing:.12em;text-align:right;text-transform:uppercase}.deploy-tray-pieces{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tray-piece{position:relative;display:flex;flex-direction:column;justify-content:flex-start;gap:8px;min-height:94px;padding:10px 10px 11px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff0e,#ffffff05);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,opacity .18s ease,box-shadow .18s ease;box-shadow:0 14px 20px #0000002e}.tray-piece:active{transform:scale(.97)}.tray-piece-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.tray-piece-rank{color:#f6cf60eb;font-size:9px;font-weight:800;letter-spacing:.08em}.tray-piece-count{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:#ffffff14;color:#d0ddeac2;font-size:9px;font-weight:800;letter-spacing:.08em}.tray-piece-name{color:#f7fbff;font-size:15px;font-weight:800;line-height:1.15}.tray-piece-role{color:#a6f4e7b8;font-size:12px;line-height:1.35}.tray-piece-elite{border-color:#f0c04024;background:linear-gradient(180deg,#f0c04014,#ffffff05)}.tray-piece-tactical{border-color:#00e5cc24;background:linear-gradient(180deg,#00e5cc14,#ffffff05)}.tray-piece-fortified{border-color:#ff6f6f24;background:linear-gradient(180deg,#ff6f6f14,#ffffff05)}.tray-piece.selected{border-color:#f0c0406b;background:linear-gradient(180deg,#f0c04029,#ffffff08);box-shadow:0 0 0 1px #f0c0402e,0 16px 26px #00000038}.tray-piece.selected .tray-piece-count{background:#f0c04029;color:#f7d265}.tray-piece.placed{opacity:.38;pointer-events:none}.tray-piece.placed .tray-piece-count{background:#00e5cc1f;color:#8df5e4d1}.layout-modal-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#000000b8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:200}.layout-modal-box{width:min(100%,520px);max-height:min(78vh,680px);overflow-y:auto;padding:24px 22px;border-radius:24px;border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at top right,rgba(240,192,64,.08),transparent 26%),linear-gradient(180deg,#070e15fa,#070e15f0);box-shadow:0 26px 54px #00000061;scrollbar-width:none}.layout-modal-box::-webkit-scrollbar{display:none}.layout-modal-title{color:#f6cf60;font-size:15px;font-weight:800;letter-spacing:.18em;text-align:center;text-transform:uppercase}.layout-modal-hint{margin-top:8px;color:#b1c2d2b3;font-size:13px;line-height:1.6;text-align:center}.layout-name-input{width:100%;margin-top:16px;margin-bottom:16px;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary);font-size:15px;font-family:inherit}.layout-name-input:focus{outline:none;border-color:#f0c04061;box-shadow:0 0 0 2px #f0c0401f}.layout-overwrite-section{margin-bottom:16px}.layout-overwrite-hint{color:#ffbc8c;font-size:12px;margin-bottom:10px}.layout-overwrite-list,.layout-list{display:flex;flex-direction:column;gap:8px}.layout-overwrite-item,.layout-list-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a}.layout-overwrite-item{cursor:pointer;border:1px solid transparent}.layout-overwrite-item.selected,.layout-overwrite-item:active{border-color:#f0c0405c;background:#f0c04014}.layout-list{margin-bottom:16px;max-height:260px;overflow-y:auto;scrollbar-width:none}.layout-list::-webkit-scrollbar{display:none}.layout-list-empty{padding:28px 0;text-align:center;color:#b1c2d2ad;font-size:14px}.layout-item-info{flex:1;min-width:0}.layout-item-name{color:#f7fbff;font-size:15px;font-weight:700}.layout-item-date{margin-top:4px;color:#b1c2d294;font-size:10px;letter-spacing:.08em}.layout-item-btn{flex-shrink:0;min-height:36px;padding:0 14px;border-radius:12px;font-size:13px;font-weight:800}.layout-item-btn.load{border:1px solid rgba(0,229,204,.22);background:#00e5cc1a;color:#90f6e8}.layout-item-btn.delete{border:1px solid rgba(255,111,111,.22);background:#ff59591a;color:#ffb0b0}.layout-modal-actions{display:flex;gap:10px;justify-content:flex-end}.layout-modal-btn{min-height:42px;padding:0 20px;border-radius:14px;font-size:14px;font-weight:800}.layout-modal-btn.cancel{border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#d2dfecd6}.layout-modal-btn.confirm{border:1px solid rgba(240,192,64,.2);background:linear-gradient(135deg,#f0c040,#c69416);color:#091018}@media (hover: hover){.deploy-btn:hover:not(:disabled),.tray-piece:hover:not(.placed),.layout-item-btn:hover,.layout-modal-btn:hover{transform:translateY(-1px)}.deploy-btn.ghost:hover:not(:disabled){border-color:#ffffff2e;background:#ffffff14}.deploy-btn.save:hover:not(:disabled){border-color:#f0c0405c;background:#f0c04029}.deploy-btn.loadbtn:hover:not(:disabled){border-color:#00e5cc57;background:#00e5cc29}.deploy-btn.random:hover:not(:disabled){border-color:#ffffff2e;background:#ffffff14}.deploy-btn.clear:hover:not(:disabled){border-color:#ff6f6f47;background:#ff595924}.deploy-btn.start:hover:not(:disabled){box-shadow:0 18px 30px #00e5cc3d}.tray-piece:hover:not(.placed){border-color:#ffffff29}}@media (min-width: 720px){.deployment-header{padding-left:20px;padding-right:20px}.deployment-actions{flex-direction:row;justify-content:space-between;align-items:flex-start}.deploy-action-group{display:flex;flex-wrap:wrap}.deploy-btn{min-width:108px}.deploy-mission-strip{grid-template-columns:repeat(3,minmax(0,1fr));padding-left:20px;padding-right:20px}.deploy-chip-wide{grid-column:auto}.deploy-tray-strip{padding-left:18px;padding-right:18px;max-height:min(31vh,270px)}.deploy-tray-head{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.deploy-tray-pieces{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (min-width: 1024px){.deployment-header{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:18px}.deploy-header-main{flex:1;min-width:0}.deployment-actions{flex:0 0 auto;width:auto;min-width:420px;flex-direction:column;gap:10px}.deploy-action-group{justify-content:flex-end}.deploy-btn{min-width:118px}.deploy-tray-pieces{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width: 599px){.deployment-header{gap:8px;padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:10px;padding-left:12px;padding-right:12px}.deploy-header-eyebrow{font-size:9px;letter-spacing:.22em}.deploy-header-row{align-items:center;flex-direction:row;gap:10px}.deployment-title{font-size:22px}.deploy-progress-pill{min-height:26px;padding:0 10px;font-size:10px}.deploy-status{font-size:12px;line-height:1.45}.deploy-action-group{gap:6px}.deploy-btn{min-height:36px;padding:0 8px;font-size:11px;border-radius:12px}.deploy-mission-strip{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px 12px 9px;gap:6px}.deploy-chip{padding:8px 10px 9px;border-radius:14px}.deploy-chip-value{font-size:13px;line-height:1.35}.deploy-chip-wide{display:none}.deploy-enemy-zone{min-height:24px;padding:2px 12px 3px}.deploy-enemy-zone-label{font-size:9px;letter-spacing:.16em}.deploy-board-viewport{padding:0 4px 4px}.deploy-tray-strip{max-height:106px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));overflow-x:auto;overflow-y:hidden}.deploy-tray-head{position:static;margin:0 0 4px;padding:0;align-items:center;flex-direction:row;background:none;gap:8px}.deploy-tray-title{font-size:10px;letter-spacing:.16em}.deploy-tray-subtitle{display:none}.deploy-tray-legend{font-size:8px;text-align:right}.deploy-tray-pieces{display:flex;width:max-content;gap:5px}.tray-piece{width:70px;min-width:70px;min-height:64px;padding:7px 7px 8px;border-radius:12px;gap:4px}.tray-piece-top{gap:5px}.tray-piece-rank{font-size:8px}.tray-piece-count{min-height:18px;padding:0 6px;font-size:8px}.tray-piece-name{font-size:12px}.tray-piece-role{display:none}.layout-modal-overlay{padding:16px}.layout-modal-box{padding:20px 16px;border-radius:20px}.layout-modal-actions{justify-content:stretch}.layout-modal-btn{flex:1}}@media (max-height: 520px) and (orientation: landscape){.deployment-header{gap:8px;padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:8px}.deploy-header-main{gap:8px}.deploy-header-eyebrow,.deploy-chip-label,.deploy-tray-title{font-size:9px}.deploy-status{font-size:12px}.deploy-progress-track{height:6px}.deployment-actions{gap:6px}.deploy-btn{min-height:34px;font-size:11px;border-radius:12px}.deploy-mission-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-top:7px;padding-bottom:7px}.deploy-enemy-zone{min-height:20px;padding:1px 12px 2px}.deploy-enemy-zone-label{font-size:8px;letter-spacing:.14em}.deploy-chip{padding:8px 10px}.deploy-chip-value{font-size:12px}.deploy-tray-strip{max-height:102px;overflow-x:auto;overflow-y:hidden;padding-top:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom))}.deploy-tray-head{display:none}.deploy-tray-pieces{display:flex;width:max-content;gap:5px}.tray-piece{width:68px;min-width:68px;min-height:60px;padding:7px 7px 8px;gap:4px}.tray-piece-rank{font-size:8px}.tray-piece-count{min-height:16px;padding:0 5px;font-size:8px}.tray-piece-name{font-size:11px}.tray-piece-role{display:none}}.tutorial-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(circle at top right,rgba(240,192,64,.12),transparent 26%),radial-gradient(circle at 20% 0%,rgba(0,229,204,.12),transparent 32%),linear-gradient(180deg,#071018,#060b11 58%,#04080d);z-index:100}.tutorial-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:34px 34px;opacity:.14;pointer-events:none}.tutorial-header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:calc(12px + env(safe-area-inset-top)) 16px 12px;background:linear-gradient(180deg,#050a10f2,#050a10db);border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.tutorial-header-title{font-size:15px;font-weight:900;letter-spacing:.28em;background:linear-gradient(90deg,#f7cd58,#fdf0a8 42%,#7ff3de);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;white-space:nowrap}.tutorial-back-btn{flex-shrink:0;min-height:38px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#e1ebf5e0;font-size:12px;font-weight:800;letter-spacing:.08em;transition:transform .18s ease,background .18s ease,border-color .18s ease}.tutorial-back-btn:active{transform:scale(.96);background:#ffffff14}.tutorial-content{position:relative;z-index:1;flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:18px 0 calc(44px + env(safe-area-inset-bottom));scroll-behavior:smooth}.tutorial-overview,.tutorial-section{width:min(100%,980px);margin:0 auto;padding-left:16px;padding-right:16px}.tutorial-overview{position:relative;overflow:hidden;padding-top:28px;padding-bottom:24px;border-radius:28px;border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at 82% 14%,rgba(0,229,204,.18),transparent 24%),radial-gradient(circle at 12% 0%,rgba(240,192,64,.12),transparent 24%),linear-gradient(145deg,#09131cf5,#050a10eb);box-shadow:0 26px 60px #00000057}.tutorial-overview:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:28px;border:1px solid rgba(240,192,64,.08);pointer-events:none}.tutorial-overview-eyebrow,.tutorial-pane-title,.tutorial-callout-title,.tutorial-reminder-chip,.tutorial-header-title,.vd-label,.pk-flow-label-top,.tip-tag,.tutorial-tribute .menu-version{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.tutorial-overview-eyebrow{color:#a6b8cab3;font-size:11px;font-weight:700;letter-spacing:.34em;text-transform:uppercase}.tutorial-overview-title{margin-top:14px;font-size:clamp(32px,8vw,52px);line-height:.98;font-weight:900;color:#f6f8fb;letter-spacing:-.04em}.tutorial-overview-copy{margin-top:18px;max-width:620px;font-size:17px;line-height:1.85;color:#d1deecd6}.tutorial-overview-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:24px}.tutorial-overview-card,.piece-roster-card,.rule-card,.game-step,.pos-legend-item,.combat-rule-item,.flag-step,.tips-list li,.tutorial-pane,.goal-box,.win-box,.tutorial-callout{position:relative;overflow:hidden;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff0b,#ffffff05);box-shadow:0 18px 34px #0000002e}.tutorial-overview-card:before,.piece-roster-card:before,.rule-card:before,.game-step:before,.pos-legend-item:before,.combat-rule-item:before,.flag-step:before,.tips-list li:before,.tutorial-pane:before,.goal-box:before,.win-box:before,.tutorial-callout:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(140deg,rgba(255,255,255,.045),transparent 58%);pointer-events:none}.tutorial-overview-card{padding:18px 18px 17px}.tutorial-overview-card-num{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:28px;padding:0 10px;border-radius:999px;background:#f0c0401f;border:1px solid rgba(240,192,64,.28);color:#f4ca59;font-size:11px;font-weight:900;letter-spacing:.18em}.tutorial-overview-card-title{margin-top:14px;font-size:20px;font-weight:800;color:#f8fbff}.tutorial-overview-card-copy{margin-top:8px;font-size:14px;line-height:1.8;color:#c2d2e1c7}.tutorial-reminder-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.tutorial-reminder-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#00e5cc14;border:1px solid rgba(0,229,204,.22);color:#d5eee9e6;font-size:10px;font-weight:700;letter-spacing:.14em}.tutorial-section{margin-top:18px;padding-top:0}.tutorial-section:last-child{padding-bottom:0}.tutorial-section-title{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-size:23px;font-weight:900;letter-spacing:.04em;color:#f7ce5f}.section-num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#f0c0401f;border:1px solid rgba(240,192,64,.28);color:#f7ce5f;font-size:15px;font-weight:900;flex-shrink:0}.tutorial-section-lead,.tutorial-text{color:#cddae8cc;font-size:15px;line-height:1.95}.tutorial-section-lead{margin-bottom:16px}.tutorial-text{margin-top:14px}.tutorial-section-lead strong,.tutorial-text strong{color:#f7d266;font-weight:800}.tutorial-text em{color:#74f1df;font-style:normal}.goal-box,.win-box,.tutorial-callout{display:flex;align-items:flex-start;gap:14px;padding:18px 18px 17px}.goal-box{margin-top:12px;border-color:#f0c0403d;background:linear-gradient(135deg,#f0c0401a,#ffffff08 56%)}.goal-box-icon,.win-box-icon,.tutorial-callout-icon{flex-shrink:0;width:34px;text-align:center;font-size:24px;line-height:1.1}.goal-box-text,.win-box-text,.tutorial-callout-body{font-size:14px;line-height:1.9;color:#d6e1eed1}.goal-box-text strong,.win-box-text strong,.tutorial-callout-body strong{color:#f9d874}.callout-key{border-color:#9b59b647;background:linear-gradient(135deg,#9b59b624,#ffffff08 62%)}.callout-info{border-color:#00e5cc3d;background:linear-gradient(135deg,#00e5cc1f,#ffffff08 62%)}.callout-gold{border-color:#f0c0403d;background:linear-gradient(135deg,#f0c0401f,#ffffff08 60%)}.tutorial-callout-title{margin-bottom:8px;color:#f3f7fbf0;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.visibility-demo{display:grid;grid-template-columns:1fr;gap:14px;margin-top:16px;padding:18px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff0a,#ffffff05),#060b12cc}.vd-side{display:flex;flex-direction:column;align-items:center;gap:10px}.vd-label{color:#b4c6d894;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.vd-pieces{display:flex;gap:8px}.vd-piece{width:54px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;box-shadow:inset 0 1px #ffffff14}.vd-piece-own{background:linear-gradient(160deg,#0d201d,#081513);color:#d9f8f0;border:1px solid rgba(0,229,204,.45)}.vd-piece-unknown{background:linear-gradient(160deg,#281011,#130809);color:#ff6d6d;border:1px solid rgba(255,82,82,.28);font-size:18px}.vd-caption{color:#baccdc94;font-size:12px;line-height:1.55;text-align:center}.vd-vs{display:flex;align-items:center;justify-content:center;color:#f4cb5bb8;font-size:20px;font-weight:900}.game-steps,.combat-rules,.flag-steps,.tips-list,.pos-legend{display:flex;flex-direction:column;gap:10px}.game-step,.pos-legend-item,.combat-rule-item,.flag-step{display:flex;align-items:flex-start;gap:14px;padding:16px}.game-step-num{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#00e5cc1f;border:1px solid rgba(0,229,204,.28);color:#7cf3e0;font-size:14px;font-weight:900}.game-step-title,.pos-legend-name,.rule-card-title,.piece-roster-name{color:#f7fbff;font-size:17px;font-weight:800}.game-step-title{margin-bottom:6px;color:#f6cd5f}.game-step-text,.pos-legend-desc,.rule-card-text,.piece-roster-copy,.piece-roster-meta,.combat-rule-text,.flag-step-text,.tips-list li{color:#c1d0dfc7;font-size:14px;line-height:1.85}.piece-roster-grid{display:grid;grid-template-columns:1fr;gap:12px}.piece-roster-card{padding:16px}.piece-roster-card-key{border-color:#00e5cc47;background:linear-gradient(140deg,#00e5cc1c,#ffffff08 62%)}.piece-roster-card-special{border-color:#f0c04047;background:linear-gradient(140deg,#f0c0401c,#ffffff08 62%)}.piece-roster-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.piece-roster-rank{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.08em;white-space:nowrap}.piece-roster-meta{margin-top:9px;font-size:12px;color:#adc0d094}.piece-roster-copy{margin-top:8px}.rank-high{background:#f0c04024;border:1px solid rgba(240,192,64,.3);color:#f5cf68}.rank-mid{background:#00e5cc1f;border:1px solid rgba(0,229,204,.26);color:#85f6e6}.rank-low{background:#74b9ff24;border:1px solid rgba(116,185,255,.24);color:#9fd0ff}.rank-special{background:#d67e4629;border:1px solid rgba(214,126,70,.28);color:#ffc59d}.tutorial-dual-grid{display:grid;grid-template-columns:1fr;gap:12px}.tutorial-pane{padding:18px}.tutorial-pane-title{margin-bottom:14px;color:#f7ce61;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.pos-legend-dot{flex-shrink:0;width:34px;height:34px;margin-top:2px;border-radius:10px}.dot-hq{background:#f0c04024;border:2px solid rgba(240,192,64,.56);box-shadow:0 0 18px #f0c0401f}.dot-camp{border-radius:50%;background:#00e5cc24;border:2px solid rgba(0,229,204,.5);box-shadow:0 0 18px #00e5cc1f}.dot-railway{background:#f0c04029;border:2px solid rgba(240,192,64,.36)}.dot-normal{background:#ffffff0d;border:1px solid rgba(255,255,255,.14)}.pos-tag{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:#ffffff0f;color:#b4c6d69e;font-size:10px;font-weight:700;letter-spacing:.08em}.pos-legend-name{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:5px}.pos-legend-desc strong{color:#f8d262}.rule-cards{display:grid;grid-template-columns:1fr;gap:10px}.rule-card{padding:16px}.rule-card-icon{font-size:24px;margin-bottom:10px}.rule-card-title{margin-bottom:6px;color:#f6cd5f}.rule-card-text strong,.combat-rule-text strong,.flag-step-text strong{color:#f8d262}.pk-flow-label-top{margin-bottom:10px;color:#b0c1d2a8;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.pk-flow{display:flex;align-items:center;gap:10px;padding:18px 16px;overflow-x:auto;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff0a,#ffffff05),#060b12d9;scrollbar-width:none}.pk-flow::-webkit-scrollbar{display:none}.pk-flow-step{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px}.pk-flow-icon{width:58px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900}.pk-icon-own{background:linear-gradient(160deg,#0d201d,#081513);color:#d5faf1;border:1px solid rgba(0,229,204,.46)}.pk-icon-enemy{background:linear-gradient(160deg,#281011,#130809);color:#ff6d6d;border:1px solid rgba(255,82,82,.28);font-size:21px}.pk-icon-result{background:#ffffff14;border:1px solid rgba(255,255,255,.14);color:#f6f8fb;font-size:21px}.pk-icon-reveal{background:linear-gradient(140deg,#f0c0402e,#00e5cc1f);border:1px solid rgba(240,192,64,.26);color:#ffe084;font-size:21px}.pk-flow-caption{color:#bccddd9e;font-size:11px;line-height:1.5;text-align:center}.pk-sub{color:#9eb1c273;font-size:10px}.pk-flow-arrow{flex-shrink:0;color:#f4cb5bb3;font-size:16px;font-weight:900}.combat-rule-item{align-items:center}.combat-rule-icon{flex-shrink:0;width:28px;text-align:center;font-size:16px}.cr-win{color:#76f5e2}.cr-draw{color:#f7ce61}.cr-special,.cr-flag{color:#ffb98e}.flag-step{align-items:center}.flag-step-win{border-color:#00e5cc47;background:linear-gradient(135deg,#00e5cc1f,#ffffff08 62%)}.flag-step-icon{flex-shrink:0;width:28px;text-align:center;font-size:20px}.flag-step-arrow{align-self:center;color:#f4cb5b85;font-size:16px;line-height:1}.win-box{margin-top:12px}.win-box-victory{border-color:#00e5cc47;background:linear-gradient(135deg,#00e5cc1f,#ffffff08 62%)}.win-box-defeat{border-color:#ff59593d;background:linear-gradient(135deg,#ff59591f,#ffffff08 62%)}.tips-list{list-style:none}.tips-list li{display:flex;align-items:flex-start;gap:12px;padding:16px}.tip-tag{flex-shrink:0;display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;background:#00e5cc1f;border:1px solid rgba(0,229,204,.24);color:#82f3e3;font-size:10px;font-weight:800;letter-spacing:.12em}.tutorial-tribute{padding-bottom:8px}.tutorial-tribute .tutorial-callout{border-color:#f0c0403d}.tutorial-tribute .menu-version{margin-top:16px;color:#adbccd75;font-size:11px;letter-spacing:.18em;text-align:center}@media (hover: hover){.tutorial-back-btn:hover{transform:translateY(-1px);background:#ffffff12;border-color:#ffffff2e}.tutorial-overview-card:hover,.piece-roster-card:hover,.rule-card:hover,.game-step:hover,.pos-legend-item:hover,.combat-rule-item:hover,.flag-step:hover,.tips-list li:hover,.tutorial-pane:hover{transform:translateY(-2px);border-color:#ffffff24}}@media (min-width: 720px){.tutorial-header{padding-left:26px;padding-right:26px}.tutorial-header-title{font-size:18px;letter-spacing:.38em}.tutorial-content{padding-top:24px}.tutorial-overview,.tutorial-section{padding-left:24px;padding-right:24px}.tutorial-overview{padding-top:34px;padding-bottom:30px}.tutorial-overview-grid,.piece-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tutorial-dual-grid{gap:14px}.visibility-demo{grid-template-columns:1fr auto 1fr;align-items:center;padding:20px 22px}.vd-vs{font-size:22px}.rule-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.tutorial-section-title{font-size:28px}.tutorial-section-lead,.tutorial-text,.goal-box-text,.win-box-text,.tutorial-callout-body{font-size:15px}}@media (min-width: 960px){.tutorial-overview,.tutorial-section{padding-left:32px;padding-right:32px}.tutorial-overview-grid,.piece-roster-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tutorial-dual-grid{grid-template-columns:1.12fr .88fr}}
