@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(./lilita-one-latin-400-normal-87r-Z-Re.woff2) format("woff2"),url(./lilita-one-latin-400-normal-DXkechA3.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-400-normal-r8SDr6Up.woff2) format("woff2"),url(./nunito-latin-400-normal-DKg4f3fz.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2) format("woff2"),url(./nunito-latin-700-normal-OcDqTBcA.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2) format("woff2"),url(./nunito-latin-800-normal-D-J0wlBY.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(./nunito-latin-900-normal-BVB1fGs6.woff2) format("woff2"),url(./nunito-latin-900-normal-CVn49sIn.woff) format("woff")}:root{--ink: #1E1B16;--cream: #F4ECDA;--sky: #9ED8F2;--yellow: #F2B42E;--red: #E0483B;--muted: #4A4338;--display: "Lilita One", Nunito, system-ui, sans-serif;--body: Nunito, system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--sky);font-family:var(--body);color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}#game{position:fixed;inset:0;touch-action:none}#game canvas{display:block}#ui{position:fixed;inset:0;pointer-events:none;font-weight:800}#ui button{pointer-events:auto;font-family:var(--body)}.hidden{display:none!important}.hud{position:absolute;inset:0}.hud-box{position:absolute;top:max(14px,env(safe-area-inset-top));background:var(--ink);color:var(--cream);border-radius:12px;padding:7px 14px;font-weight:900;font-size:15px;line-height:1.25}.hud-round{left:max(14px,env(safe-area-inset-left))}.hud-round span{color:var(--yellow);font-size:12px}.hud-wind{right:max(14px,env(safe-area-inset-right));display:flex;align-items:center;gap:10px;font-size:14px}.wind-track{position:relative;width:120px;height:10px;border-radius:5px;background:var(--muted);overflow:hidden}.wind-mid{position:absolute;left:calc(50% - 1px);top:0;width:2px;height:100%;background:var(--cream);z-index:1}.wind-fill{position:absolute;top:0;height:100%;background:var(--sky);border-radius:0 5px 5px 0}.wind-fill.left{border-radius:5px 0 0 5px}.hud-timer{position:absolute;top:max(10px,env(safe-area-inset-top));left:50%;transform:translate(-50%);width:64px;height:64px;border-radius:50%;background:var(--yellow);border:4px solid var(--ink);box-shadow:inset 0 0 0 4px var(--team, var(--yellow));display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:30px}.hud-timer.retreat{background:var(--cream)}.hud-timer.low{background:var(--red);color:#fff;animation:pulse 1s infinite}@keyframes pulse{50%{transform:translate(-50%) scale(1.08)}}.hud-teams{position:absolute;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(380px,92vw);background:var(--ink);border-radius:14px;padding:9px 14px;display:flex;flex-direction:column;gap:5px}.team-row{display:flex;align-items:center;gap:10px;color:var(--cream);font-size:13px;opacity:.75}.team-row.active{opacity:1}.team-row.active .team-name:before{content:"▶ ";color:var(--yellow)}.team-name{flex:0 0 112px;white-space:nowrap}.team-bar{flex:1 1 auto;height:12px;border-radius:6px;background:var(--muted);overflow:hidden}.team-bar div{height:100%;transition:width .6s ease}.team-hp{flex:0 0 30px;text-align:right}.team-alive{flex:0 0 26px;text-align:right;color:#c9c3a8;font-size:12px}.hud-weapons{position:absolute;left:50%;bottom:calc(max(12px,env(safe-area-inset-bottom)) + 74px);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;max-width:96vw}.weapon-row{display:flex;gap:6px;background:var(--ink);padding:6px;border-radius:14px}.weapon{position:relative;width:48px;height:48px;border-radius:50%;border:none;background:var(--cream);padding:6px;cursor:pointer}.weapon svg{width:100%;height:100%;display:block}.weapon.selected{box-shadow:0 0 0 4px var(--yellow)}.weapon.empty{opacity:.35;cursor:default}.weapon:focus-visible{outline:3px solid #fff;outline-offset:2px}.weapon .ammo{position:absolute;right:-4px;bottom:-4px;min-width:20px;height:20px;padding:0 4px;border-radius:10px;background:var(--ink);color:var(--cream);font-size:12px;font-weight:900;line-height:20px;border:2px solid var(--cream)}.weapon-info{display:flex;align-items:center;gap:10px;background:#f4ecdaf0;border:3px solid var(--ink);border-radius:12px;padding:4px 12px;font-size:13px;font-weight:700;max-width:96vw}.weapon-info strong{font-weight:900;white-space:nowrap}.weapon-info span{color:var(--muted)}.fuse{border:2px solid var(--ink);background:var(--yellow);border-radius:999px;padding:2px 10px;font-weight:900;font-size:12px;cursor:pointer;white-space:nowrap;min-height:28px}.banner{position:absolute;top:96px;left:50%;transform:translate(-50%,-10px);opacity:0;transition:opacity .25s,transform .25s;font-family:var(--display);font-size:clamp(26px,4.5vw,44px);color:var(--team, var(--yellow));-webkit-text-stroke:6px var(--ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--ink);white-space:nowrap}.banner.show{opacity:1;transform:translate(-50%)}.touch{position:absolute;inset:0}.touch button{border:4px solid var(--ink);background:#f4ecdaeb;color:var(--ink);border-radius:50%;width:64px;height:64px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;touch-action:none}.touch button svg{width:28px;height:28px}.touch button.down{background:var(--yellow);transform:scale(.94)}.touch-left,.touch-right{position:absolute;bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:flex-end;gap:12px}.touch-left{left:max(16px,env(safe-area-inset-left))}.touch-right{right:max(16px,env(safe-area-inset-right))}.touch-aim{display:flex;flex-direction:column;gap:10px}.touch-aim button{width:52px;height:52px}.touch .btn-fire{width:84px;height:84px;background:var(--red);color:#fff;font-family:var(--display);font-size:20px}.touch .btn-fire.down{background:var(--yellow);color:var(--ink)}.touch .btn-jump{font-size:13px}body.is-touch .hud-teams{top:calc(max(14px,env(safe-area-inset-top)) + 100px);bottom:auto;left:max(14px,env(safe-area-inset-left));transform:none;width:250px;padding:6px 10px}body.is-touch .team-name{flex-basis:86px;font-size:11px}body.is-touch .team-alive{display:none}body.is-touch .hud-weapons{bottom:max(12px,env(safe-area-inset-bottom))}body.is-touch .weapon{width:44px;height:44px;padding:5px}body.is-touch .weapon-info span{display:none}@media(max-width:760px){.hud-wind span{display:none}.wind-track{width:80px}.weapon-info span{display:none}.banner{top:84px}}@media(max-height:460px){.hud-timer{width:52px;height:52px;font-size:24px}.banner{top:70px}}.overlay{position:absolute;inset:0;display:none;align-items:center;justify-content:center;padding:16px;background:#1e1b1673;pointer-events:auto;overflow-y:auto}.overlay.show{display:flex}.card{background:var(--cream);border:5px solid var(--ink);border-radius:22px;padding:26px 30px;max-width:880px;width:100%;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:8px 8px 0 var(--ink);margin:auto}.logo{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(54px,12vw,120px);line-height:.95;letter-spacing:.02em;color:var(--team, var(--yellow));-webkit-text-stroke:7px var(--ink);paint-order:stroke fill;text-shadow:6px 6px 0 var(--ink);text-align:center}.tag{margin:0;font-size:17px;font-weight:800;text-align:center}.small{margin:0;font-size:13px;color:var(--muted);font-weight:700;text-align:center}.controls-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}.controls-grid>div{background:#fff;border:3px solid var(--ink);border-radius:14px;padding:10px 14px}.controls-grid h2{margin:0 0 6px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#8a4a1f;font-weight:900}.controls-grid dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:3px 10px;font-size:13px}.controls-grid dt{font-weight:900;white-space:nowrap}.controls-grid dd{margin:0;font-weight:700;color:var(--muted)}.row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.card button{border:4px solid var(--ink);background:#fff;border-radius:999px;padding:10px 22px;font-weight:900;font-size:17px;cursor:pointer;min-height:48px}.card button.primary{background:var(--yellow);box-shadow:4px 4px 0 var(--ink)}.card button:focus-visible{outline:3px solid var(--ink);outline-offset:3px}@media(max-width:760px),(max-height:520px){.controls-grid{grid-template-columns:1fr}.card{padding:18px;gap:10px}}body.is-touch .help-keys,body.is-touch .help-pad{display:none}body.is-touch .controls-grid{grid-template-columns:1fr;max-width:420px}.hud-round{pointer-events:auto;display:flex;flex-direction:column;gap:6px}.map-tools{display:flex;gap:6px}.map-tools button{border:2px solid var(--cream);background:transparent;color:var(--cream);border-radius:999px;min-height:30px;min-width:30px;padding:0 10px;font-weight:900;font-size:12px;cursor:pointer}.map-tools #map-save{font-size:16px;padding:0 6px}.map-tools #map-save.on{color:var(--yellow);border-color:var(--yellow)}.map-tools button:hover{background:#f4ecda26}.toast{position:absolute;left:50%;top:150px;transform:translate(-50%,8px);background:var(--ink);color:var(--cream);border-radius:12px;padding:10px 16px;font-weight:800;font-size:14px;max-width:min(560px,92vw);text-align:center;word-break:break-all;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;z-index:5}.toast.show{opacity:1;transform:translate(-50%);pointer-events:auto;-webkit-user-select:text;user-select:text}.overlay.light{background:#1e1b162e}.start-card{max-width:920px;gap:12px}.logo-small{font-size:clamp(44px,8vw,84px);-webkit-text-stroke-width:6px;text-shadow:5px 5px 0 var(--ink)}.picker{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;width:100%}.picker-map{display:flex;flex-direction:column;gap:10px;align-items:stretch}.picker-map canvas{width:100%;aspect-ratio:480 / 220;border:4px solid var(--ink);border-radius:14px;background:var(--sky);display:block}.picker-code{display:flex;align-items:baseline;gap:10px;justify-content:center}.picker-code span{font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#8a4a1f}.picker-code strong{font-family:var(--display);font-weight:400;font-size:30px;letter-spacing:.04em;-webkit-user-select:text;user-select:text}.picker-map .row button{flex:1 1 auto}.picker-side{display:flex;flex-direction:column;gap:10px;min-width:0}.field{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:900}.field-row{display:flex;gap:6px}.field input{flex:1 1 auto;min-width:0;border:3px solid var(--ink);border-radius:12px;padding:8px 10px;font:800 15px var(--body);background:#fff;color:var(--ink);-webkit-user-select:text;user-select:text}.field input:focus-visible{outline:3px solid var(--yellow);outline-offset:1px}.card .field-row button{padding:6px 14px;font-size:15px;min-height:44px;white-space:nowrap}.favs{background:#fff;border:3px solid var(--ink);border-radius:14px;padding:8px 10px;min-height:0}.favs h2{margin:0 0 6px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#8a4a1f;font-weight:900}.favs ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:150px;overflow-y:auto}.favs li{display:flex;gap:4px;align-items:stretch}.card .favs .fav-load{flex:1 1 auto;min-width:0;display:flex;justify-content:space-between;gap:8px;border:2px solid var(--ink);border-radius:10px;padding:6px 10px;min-height:40px;font-size:14px;text-align:left;background:var(--cream)}.card .favs .fav-load.current{background:var(--yellow)}.fav-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fav-code{color:var(--muted);font-size:12px;white-space:nowrap;align-self:center}.card .favs .fav-del{border:2px solid var(--ink);border-radius:10px;min-height:40px;min-width:40px;padding:0;font-size:18px}.fav-empty{font-size:13px;font-weight:700;color:var(--muted)}.help{width:100%}.help summary{cursor:pointer;font-weight:900;font-size:14px;text-align:center;padding:4px}.help summary:focus-visible{outline:3px solid var(--ink);border-radius:8px}.help .controls-grid{margin-top:8px}@media(max-width:760px),(max-height:520px){.picker{grid-template-columns:1fr}.favs ul{max-height:120px}}@media(max-height:520px)and (min-width:700px){.picker{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.logo-small{font-size:40px}.picker-code strong{font-size:22px}}.opponent{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center}.opponent>span{font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#8a4a1f;margin-right:4px}.card .opponent .opp{padding:6px 14px;font-size:14px;min-height:40px;border-width:3px}.card .opponent .opp.on{background:var(--ink);color:var(--cream)}.cpu-status{position:absolute;left:50%;bottom:calc(max(12px,env(safe-area-inset-bottom)) + 82px);transform:translate(-50%);background:var(--ink);color:var(--cream);border-radius:999px;padding:8px 16px;font-weight:900;font-size:14px;white-space:nowrap}body.is-touch .cpu-status{bottom:max(16px,env(safe-area-inset-bottom))}.touch.cpu-turn{opacity:.35;pointer-events:none}.touch.cpu-turn button{pointer-events:none}.hud-weapons{width:max-content}.weapon-row{flex-wrap:wrap;justify-content:center;max-width:96vw}.weapon{width:44px;height:44px;padding:5px}@media(max-width:900px){.weapon-row{max-width:380px}}body.is-touch .weapon-row{max-width:352px;gap:4px;padding:5px}body.is-touch .weapon{width:42px;height:42px;padding:4px}body.is-touch .weapon .ammo{min-width:18px;height:18px;line-height:18px;font-size:11px}.weapon .hotkey{position:absolute;left:-3px;top:-3px;min-width:16px;height:16px;border-radius:8px;background:var(--yellow);color:var(--ink);border:2px solid var(--ink);font-size:10px;font-weight:900;line-height:12px}body.is-touch .weapon .hotkey{display:none}.end-turn{position:absolute;top:calc(max(14px,env(safe-area-inset-top)) + 72px);left:50%;transform:translate(-50%);border:3px solid var(--ink);background:var(--cream);color:var(--ink);border-radius:999px;padding:5px 14px;font-weight:900;font-size:14px;min-height:36px;cursor:pointer;box-shadow:3px 3px 0 var(--ink);white-space:nowrap}.end-turn:hover{background:var(--yellow)}.end-turn kbd{font-family:var(--body);font-size:11px;border:2px solid var(--ink);border-radius:5px;padding:0 4px;margin-left:4px}body.is-touch .end-turn kbd{display:none}body.is-touch .end-turn{min-height:44px;font-size:15px}.hud-round .sd{color:#fff;background:var(--red);border-radius:6px;padding:0 6px;font-size:12px;animation:pulse 1s infinite}.hud-round .sd-soon{font-style:normal;color:#c9c3a8;font-size:11px}.setup{display:flex;flex-direction:column;gap:8px;width:100%;background:#fff;border:3px solid var(--ink);border-radius:14px;padding:10px 14px}.setup-teams,.setup-rules{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;font-size:14px}.setup-rules span{color:var(--muted);font-weight:800}.team-chip{background:var(--team);color:#fff;border:3px solid var(--ink);border-radius:999px;padding:3px 12px;font-weight:900;text-shadow:1px 1px 0 var(--ink)}.vs{font-family:var(--display);font-size:18px}.card .setup button{padding:4px 14px;font-size:14px;min-height:38px;border-width:3px}.designer{max-width:1180px}.d-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.card .d-tab{border-color:var(--ink);background:#fff;border-bottom:6px solid var(--team)}.card .d-tab.on{background:var(--team);color:#fff;text-shadow:1px 1px 0 var(--ink)}.d-tab small{font-weight:700;font-size:11px;opacity:.85}.d-team{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-end;justify-content:center;width:100%}.d-team .field input{min-width:220px}.d-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;width:100%}.d-grunt{background:#fff;border:3px solid var(--ink);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:8px}.d-grunt.reserve{opacity:.6;border-style:dashed}.d-top{display:flex;gap:8px;align-items:flex-start}.d-prev{width:70px;height:90px;object-fit:contain;flex:0 0 auto;background:var(--sky);border-radius:10px;border:2px solid var(--ink)}.d-names{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 auto}.d-names input{font:inherit;font-weight:800;font-size:14px;border:2px solid var(--ink);border-radius:8px;padding:4px 8px;min-width:0;width:100%;background:var(--cream)}.d-names input:focus-visible{outline:3px solid var(--yellow)}.d-slot{font-size:11px;color:var(--muted)}.card .d-dice{padding:0;width:40px;height:40px;min-height:40px;font-size:20px;border-width:3px;flex:0 0 auto}.d-sels{display:grid;grid-template-columns:1fr 1fr;gap:6px}.d-sel{display:flex;flex-direction:column;font-size:11px;font-weight:900;color:#8a4a1f;text-transform:uppercase;letter-spacing:.08em}.d-sel select{font:inherit;font-size:14px;font-weight:800;color:var(--ink);text-transform:none;letter-spacing:0;border:2px solid var(--ink);border-radius:8px;padding:4px 6px;background:var(--cream);min-height:34px}.sw-row{display:flex;flex-wrap:wrap;gap:5px}.card .sw{width:26px;height:26px;min-height:26px;padding:0;border:3px solid var(--ink);border-radius:50%;background:var(--c)}.card .sw.big{width:34px;height:34px;min-height:34px}.card .sw.on{box-shadow:0 0 0 3px var(--cream),0 0 0 6px var(--ink)}.card .sw:disabled{opacity:.25;cursor:not-allowed}.rules-card{max-width:760px}.rules{display:flex;flex-direction:column;gap:10px;width:100%}.rule{display:flex;flex-direction:column;gap:5px;background:#fff;border:3px solid var(--ink);border-radius:14px;padding:8px 12px}.rule-title{font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#8a4a1f}.seg{display:flex;flex-wrap:wrap;gap:6px}.card .seg .opp{padding:5px 12px;font-size:14px;min-height:38px;border-width:3px}.card .seg .opp.on{background:var(--ink);color:var(--cream)}.rule-note{font-size:12px;color:var(--muted);font-weight:700}.touch-jumps{display:flex;flex-direction:column;gap:10px;align-items:center}.touch .btn-flip{width:52px;height:52px;font-size:12px}.picker-code em{font-style:normal;font-size:13px;font-weight:900;color:var(--muted)}.overlay.menu{padding:0;background:#2a1a22;display:none;align-items:flex-start;justify-content:flex-start}.overlay.menu.show{display:block}.mm-viewport{min-height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.mm-stage{width:1600px;height:900px;position:relative;overflow:hidden;background:#fdb46a;transform-origin:top left;flex:0 0 auto;color:var(--ink);font-family:var(--body)}@media(min-aspect-ratio:1/1){.mm-viewport{min-height:100vh}}.mm-abs{position:absolute}.mm-ol{stroke:var(--ink);stroke-width:4;stroke-linejoin:round;stroke-linecap:round}#mm button{font-family:var(--body);color:var(--ink)}.mm-logo{left:70px;top:34px;display:flex;flex-direction:column;gap:4px;transform:rotate(-3deg);transform-origin:left center}.mm-logo h1{margin:0;font-family:var(--display);font-weight:400;font-size:156px;line-height:.9;letter-spacing:.02em;color:var(--yellow);-webkit-text-stroke:8px var(--ink);paint-order:stroke fill;text-shadow:9px 9px 0 #B8322A,15px 15px 0 var(--ink)}.mm-tagline{align-self:flex-start;margin-left:10px;background:var(--ink);color:var(--cream);font-weight:900;font-size:18px;letter-spacing:.18em;padding:6px 14px;border-radius:6px}.mm-teams{left:64px;top:268px;width:860px;display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);align-items:center}.mm-team{background:var(--cream);border:5px solid var(--ink);border-radius:22px;box-shadow:8px 8px 0 var(--ink);overflow:hidden}.mm-team-head{color:#fff;border-bottom:5px solid var(--ink);padding:8px 12px 8px 16px;display:flex;justify-content:space-between;align-items:center;gap:8px}.mm-team-head span{font-family:var(--display);font-size:28px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:2px 2px 0 var(--ink)}.mm-team-head small{font-family:var(--body);font-weight:900;font-size:13px;background:var(--ink);border-radius:6px;padding:2px 6px;vertical-align:middle;text-shadow:none}.mm-yard{height:150px;background:var(--sky);position:relative;display:flex;justify-content:center;align-items:flex-end;gap:2px;padding:0 8px 22px}.mm-yard:before{content:"";position:absolute;left:0;right:0;bottom:0;height:30px;background:#b07a4a;border-top:8px solid #5DAA3E}.mm-grunt{position:relative;width:var(--gw, 66px);aspect-ratio:128 / 164}.mm-grunt svg{display:block;width:100%;height:100%;overflow:visible}.mm-vs{position:relative;height:140px;display:flex;align-items:center;justify-content:center}.mm-vs svg{position:absolute;left:-10px;top:0;animation:mm-spin 8s linear infinite}.mm-vs b{position:relative;font-family:var(--display);font-weight:400;font-size:52px;color:#fff;-webkit-text-stroke:6px var(--ink);paint-order:stroke fill;transform:rotate(-8deg)}#mm .mm-btn{border:3px solid var(--ink);border-radius:14px;padding:10px 14px;font-weight:900;font-size:16px;cursor:pointer;background:var(--cream)}#mm .mm-btn:hover{filter:brightness(1.06)}#mm .mm-btn.small{border-radius:10px;padding:4px 12px;font-size:14px;flex:0 0 auto}#mm .mm-btn.dark{background:var(--ink);color:var(--cream)}#mm .mm-btn.yellow{background:var(--yellow)}.mm-enemy{left:64px;top:526px;width:860px;display:flex;flex-direction:column;gap:10px}.mm-label{font-weight:900;font-size:14px;letter-spacing:.18em}.mm-enemy-row{display:flex;gap:14px;align-items:stretch}.mm-seg{flex:0 0 480px;display:grid;grid-template-columns:1fr 1fr;border:4px solid var(--ink);border-radius:16px;overflow:hidden;background:var(--cream);box-shadow:5px 5px 0 var(--ink)}#mm .mm-seg button{background:var(--cream);border:0;padding:10px 8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px}#mm .mm-seg button:first-child{border-right:3px solid var(--ink)}#mm .mm-seg button[aria-pressed=true]{background:var(--ink);color:var(--yellow)}.mm-seg .big{font-family:var(--display);font-size:26px;line-height:1.05}.mm-seg .sub{font-size:12px;font-weight:800;letter-spacing:.12em;opacity:.85}#mm .mm-rules{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:18px;box-shadow:5px 5px 0 var(--ink)}#mm .mm-rules small{font-size:12px;font-weight:800;color:var(--muted);line-height:1.25}.mm-diffrow{height:44px;display:flex;align-items:center;gap:10px}#mm .mm-pill{border:3px solid var(--ink);border-radius:999px;padding:6px 16px;font-weight:900;font-size:15px;cursor:pointer;background:var(--cream);white-space:nowrap}#mm .mm-pill[aria-pressed=true]{background:var(--yellow)}.mm-pill span{opacity:.8;letter-spacing:.08em}.mm-hint{font-weight:800;font-size:16px}.mm-startrow{left:64px;top:712px;display:flex;align-items:center;gap:26px}#mm .mm-go{width:470px;height:104px;background:var(--yellow);border:6px solid var(--ink);border-radius:24px;box-shadow:10px 10px 0 var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:16px;transition:transform .08s,box-shadow .08s}#mm .mm-go:hover{transform:translate(-3px,-3px);box-shadow:13px 13px 0 var(--ink)}#mm .mm-go:active{transform:translate(6px,6px);box-shadow:4px 4px 0 var(--ink)}#mm .mm-go:focus-visible{outline:5px solid #fff;outline-offset:4px}.mm-go span{display:inline-block;font-family:var(--display);font-size:54px;line-height:1;white-space:nowrap;animation:mm-pulse 1.4s ease-in-out infinite}.mm-taunt{color:var(--yellow);background:var(--ink);border-radius:16px;padding:12px 16px;font-family:var(--display);font-size:22px;line-height:1.3;max-width:320px}.mm-panel{left:990px;top:40px;width:548px;height:820px;background:var(--cream);border:5px solid var(--ink);border-radius:26px;box-shadow:10px 10px 0 var(--ink);padding:22px 24px;display:flex;flex-direction:column;gap:14px;transform:rotate(1deg)}.mm-panel-tab{position:absolute;top:-20px;left:28px;background:var(--ink);color:var(--yellow);font-weight:900;font-size:15px;letter-spacing:.2em;padding:6px 14px;border-radius:8px}.mm-preview{position:relative;border:4px solid var(--ink);border-radius:16px;overflow:hidden;height:250px;background:var(--sky);flex:0 0 auto}.mm-preview canvas{display:block;width:100%;height:100%;object-fit:cover;image-rendering:auto}.mm-stamp{position:absolute;right:12px;bottom:34px;transform:rotate(-6deg);border:4px solid #B8322A;color:#b8322a;border-radius:8px;padding:2px 10px;font-family:var(--display);font-size:26px;background:#f4ecdacc}.mm-style{position:absolute;left:10px;top:10px;background:var(--ink);color:var(--cream);font-weight:900;font-size:13px;letter-spacing:.1em;padding:3px 10px;border-radius:6px;text-transform:uppercase}.mm-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}#mm .mm-grid2 .mm-btn{padding:12px;font-size:17px;display:flex;align-items:center;justify-content:center;gap:10px}.mm-field{display:flex;flex-direction:column;gap:6px}.mm-field label{font-weight:900;font-size:13px;letter-spacing:.14em;color:#5a5245}.mm-field div{display:flex;gap:10px}.mm-field input{flex:1 1 auto;min-width:0;background:#fff;border:3px solid var(--ink);border-radius:12px;padding:10px 14px;font:inherit;font-size:17px;font-weight:800;color:var(--ink)}.mm-field input:focus-visible{outline:3px solid var(--yellow);outline-offset:1px}#mm .mm-field .mm-btn{padding:0 20px;border-radius:12px}.mm-saved{flex:1 1 auto;min-height:0;border:3px dashed var(--ink);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;overflow:auto}.mm-saved h3{margin:0;font-weight:900;font-size:13px;letter-spacing:.14em;color:#8a4a1f}.mm-saved p{margin:0;font-size:15px;color:var(--muted);line-height:1.4}.mm-saved-list{display:flex;flex-direction:column;gap:8px}.mm-saved-row{display:flex;gap:6px}#mm .mm-fav{flex:1 1 auto;display:flex;justify-content:space-between;align-items:center;background:#fff;border:3px solid var(--ink);border-radius:12px;padding:8px 12px;cursor:pointer;font-size:15px;font-weight:900;text-align:left;min-width:0}#mm .mm-fav.current{background:var(--yellow)}.mm-fav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-fav em{font-style:normal;color:#8a4a1f;letter-spacing:.06em;margin-left:8px;flex:0 0 auto}#mm .mm-del{width:40px;flex:0 0 auto;background:#fff;border:3px solid var(--ink);border-radius:12px;font-size:20px;font-weight:900;cursor:pointer}.mm-help{font-size:14px;color:var(--muted)}.mm-help summary{font-weight:900;cursor:pointer;color:var(--ink)}.mm-help div{padding-top:6px;line-height:1.5}.mm-help b{color:var(--ink)}@keyframes mm-pulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.025)}}@keyframes mm-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes mm-spin{to{transform:rotate(360deg)}}.mm-bob{animation:mm-bob 2.6s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.mm-bob,.mm-vs svg,.mm-go span{animation:none}}.card .d-dice{width:auto;padding:0 10px;font-size:13px;white-space:nowrap}.card .d-random-team{min-height:44px;padding:6px 16px;font-size:15px;align-self:flex-end}.d-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}@media(min-width:1100px){.d-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.d-left{display:flex;flex-direction:column;gap:6px;align-items:stretch;flex:0 0 auto}.card .d-left .d-dice{width:100%;height:32px;min-height:32px;padding:0 6px;font-size:12px;border-width:2px;border-radius:999px}#mm .mm-mute{left:900px;top:40px;width:56px;height:56px;border:4px solid var(--ink);border-radius:50%;background:var(--cream);font-size:24px;cursor:pointer;box-shadow:4px 4px 0 var(--ink)}.map-tools #mute{font-size:14px;padding:0 6px}.mm-seg.three{grid-template-columns:1fr 1fr 1fr}#mm .mm-seg.three button:nth-child(2){border-right:3px solid var(--ink)}.mm-seg.three .sub{font-size:11px;letter-spacing:.08em}.lobby-card{max-width:760px}.lb-seats{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;width:100%}.lb-seat{background:#fff;border:3px solid var(--ink);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;align-items:flex-start;min-height:96px}.lb-seat.me{box-shadow:0 0 0 3px var(--yellow)}.lb-seat.empty{border-style:dashed;color:var(--muted)}.lb-role{font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#8a4a1f}.lb-seat strong{font-size:18px}.lb-flags{display:flex;gap:6px;font-size:12px}.lb-flags b{border:2px solid var(--ink);border-radius:999px;padding:0 8px;background:var(--cream)}.lb-flags .lb-ready{background:#7ce07c}.lb-flags .lb-off{background:var(--red);color:#fff}.lb-team{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;font-weight:900}.card .lb-team .opp{padding:4px 10px;min-height:40px;border-width:3px}.card .lb-team .opp.on{background:var(--ink)}.card .lb-team button#lb-design{padding:4px 14px;min-height:40px;font-size:14px;border-width:3px}.lb-map{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;width:100%;align-items:center}.lb-map canvas{width:100%;aspect-ratio:480 / 220;border:4px solid var(--ink);border-radius:14px;background:var(--sky);display:block}.lb-map-side{display:flex;flex-direction:column;gap:8px}.lb-map-side input{font:inherit;font-weight:800;border:3px solid var(--ink);border-radius:12px;padding:6px 10px;min-width:0;flex:1 1 auto}.card button:disabled{opacity:.55;cursor:default}@media(max-width:640px){.lb-seats,.lb-map{grid-template-columns:1fr}}.wpick,.rotate{display:none}body.is-touch .hud-box{padding:4px 10px;font-size:13px;border-radius:10px;top:max(8px,env(safe-area-inset-top))}body.is-touch .hud-round{flex-direction:row;align-items:center;gap:8px;left:max(10px,env(safe-area-inset-left))}body.is-touch #round br,body.is-touch #round>span,body.is-touch #map-save,body.is-touch #map-copy{display:none}body.is-touch .map-tools button{min-height:28px;min-width:28px;padding:0 6px}body.is-touch .hud-round .sd-soon{display:none}body.is-touch .hud-teams{top:calc(max(8px,env(safe-area-inset-top)) + 44px);left:max(10px,env(safe-area-inset-left));width:190px;padding:4px 8px;gap:3px;border-radius:10px}body.is-touch .team-row{gap:6px;font-size:11px}body.is-touch .team-name{flex:0 0 74px;overflow:hidden;text-overflow:ellipsis;font-size:11px}body.is-touch .team-row.active .team-name:before{content:""}body.is-touch .team-row.active .team-name{color:var(--yellow)}body.is-touch .team-bar{height:7px}body.is-touch .team-hp{flex-basis:26px}body.is-touch .hud-timer{top:max(6px,env(safe-area-inset-top));width:46px;height:46px;font-size:21px;border-width:3px;box-shadow:inset 0 0 0 3px var(--team, var(--yellow))}body.is-touch .hud-wind{right:max(10px,env(safe-area-inset-right));gap:6px}body.is-touch .hud-wind span{font-size:10px;letter-spacing:.08em}body.is-touch .wind-track{width:84px;height:8px}body.is-touch .end-turn{top:calc(max(8px,env(safe-area-inset-top)) + 34px);right:max(10px,env(safe-area-inset-right));left:auto;transform:none;min-height:36px;font-size:13px;padding:4px 12px;box-shadow:2px 2px 0 var(--ink)}body.is-touch .banner{top:62px;font-size:clamp(20px,4vw,32px);-webkit-text-stroke-width:5px}body.is-touch .cpu-status{top:62px;bottom:auto;font-size:13px;padding:5px 12px}body.is-touch .hud-weapons{bottom:max(10px,env(safe-area-inset-bottom));z-index:5;gap:8px}body.is-touch .weapon-row{display:none;max-width:min(392px,92vw);gap:6px;padding:8px;box-shadow:0 6px #1e1b1659}body.is-touch .hud-weapons.open .weapon-row{display:flex}body.is-touch .weapon{width:46px;height:46px;padding:5px}body.is-touch .weapon-info{padding:3px 10px 3px 4px;gap:8px;border-radius:999px;max-width:38vw;font-size:12px}body.is-touch .weapon-info strong{overflow:hidden;text-overflow:ellipsis}body.is-touch .wpick{display:block;position:relative;flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:3px solid var(--ink);background:var(--yellow);padding:4px;cursor:pointer}body.is-touch .wpick svg{width:100%;height:100%;display:block}body.is-touch .wpick .ammo{position:absolute;right:-6px;bottom:-6px;min-width:18px;height:18px;padding:0 3px;border-radius:9px;background:var(--ink);color:var(--cream);font-size:10px;line-height:15px;border:2px solid var(--cream)}body.is-touch .hud-weapons.open .wpick{background:var(--cream)}body.is-touch .touch button{width:56px;height:56px;border-width:3px;font-size:13px;background:#f4ecdad1}body.is-touch .touch-left,body.is-touch .touch-right{bottom:max(10px,env(safe-area-inset-bottom));gap:8px}body.is-touch .touch-left{left:max(10px,env(safe-area-inset-left))}body.is-touch .touch-right{right:max(10px,env(safe-area-inset-right))}body.is-touch .touch-aim,body.is-touch .touch-jumps{gap:8px}body.is-touch .touch-aim button,body.is-touch .touch .btn-flip{width:46px;height:46px}body.is-touch .touch .btn-flip{font-size:11px}body.is-touch .touch .btn-fire{width:76px;height:76px;font-size:18px;background:var(--red)}@media(max-height:430px){body.is-touch .touch button{width:52px;height:52px}body.is-touch .touch-aim button,body.is-touch .touch .btn-flip{width:42px;height:42px}body.is-touch .touch .btn-fire{width:70px;height:70px}}@media(orientation:portrait){body.is-touch .rotate{display:flex;position:fixed;inset:0;z-index:50;pointer-events:auto;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--ink);color:var(--cream);text-align:center;padding:24px}body.is-touch .rotate svg{width:96px;height:96px;color:var(--yellow);animation:tilt 2.4s ease-in-out infinite}body.is-touch .rotate strong{font-family:var(--display);font-size:28px;color:var(--yellow)}body.is-touch .rotate span{font-size:15px;font-weight:700}}@keyframes tilt{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media(prefers-reduced-motion:reduce){.rotate svg{animation:none!important}}body.is-touch .toast{top:calc(max(8px,env(safe-area-inset-top)) + 58px);font-size:13px;padding:7px 14px;max-width:min(460px,70vw)}kbd.k-pad,body.dev-gamepad kbd.k-key{display:none}body.dev-gamepad kbd.k-pad{display:inline}body.dev-gamepad .weapon .hotkey,body.dev-touch kbd.k-key,body.dev-touch kbd.k-pad,body.is-touch kbd.k-key,body.is-touch kbd.k-pad{display:none}.card button kbd{font-family:var(--body);font-size:11px;border:2px solid currentColor;border-radius:5px;padding:0 4px;margin-left:6px;opacity:.8}
