.dial[data-v-db0df46e]{width:100%;height:auto;display:block}.dial-num[data-v-db0df46e]{font-family:var(--font-mono);fill:#1f3a2c;font-size:8px;font-weight:700}.needle[data-v-db0df46e]{transition:transform .55s cubic-bezier(.34,1.3,.5,1)}.gauge[data-v-5a9172b1]{width:100%;height:auto;display:block}.gauge-num[data-v-5a9172b1]{font-family:var(--font-mono);fill:#1f3a2c;font-size:9px;font-weight:700}.needle[data-v-5a9172b1]{transition:transform .55s cubic-bezier(.34,1.3,.5,1)}.shell-ico[data-v-7bc64697]{flex:none;width:14px;height:14px}.calc[data-v-66936715]{flex-direction:column;gap:.75rem;padding:1rem .9rem .9rem;display:flex}.field[data-v-66936715]{flex-direction:column;gap:.4rem;display:flex}.field-row[data-v-66936715]{align-items:center;gap:.7rem;display:flex}.input-wrap[data-v-66936715]{flex:1;min-width:0;position:relative}.num-input[data-v-66936715]{width:100%;color:var(--brass-soft);font-family:var(--font-mono);letter-spacing:.12em;text-align:right;background:linear-gradient(#14120d,#201c14);border:2px solid #3c382b;border-radius:6px;outline:none;padding:.35rem 2.2rem .35rem .6rem;font-size:1.9rem;font-weight:700;transition:border-color .2s;box-shadow:inset 0 3px 8px #000000b3,0 1px #ffffff1a}.num-input[data-v-66936715]:focus{border-color:var(--brass)}.num-input[data-v-66936715]::placeholder{color:#4d4732}.unit[data-v-66936715]{color:var(--cream-dim);font-size:.95rem;font-weight:700;position:absolute;top:50%;right:.55rem;transform:translateY(-50%)}.dial-box[data-v-66936715]{filter:drop-shadow(0 3px 5px #00000073);flex:none;width:92px}.meters-hint[data-v-66936715]{letter-spacing:.08em;min-height:1rem;color:var(--cream-dim);text-align:right;font-size:.78rem}.hint-bad[data-v-66936715]{color:var(--red-bright);font-weight:700}.charge-row[data-v-66936715]{border-radius:8px;outline:none;align-items:center;gap:.4rem;display:flex}.charge-row[data-v-66936715]:focus{outline:2px solid var(--brass);outline-offset:4px}.charge-btn[data-v-66936715]{min-width:0;color:var(--cream);font-family:var(--font-mono);background:linear-gradient(#2a2620,#1b1813);border:1.5px solid #45402f;border-radius:6px;flex:1;padding:.42rem 0;font-size:1.05rem;font-weight:700;transition:transform .12s,border-color .2s,color .2s,box-shadow .2s}.charge-btn[data-v-66936715]:hover:not(:disabled){border-color:var(--brass)}.charge-btn[data-v-66936715]:active:not(:disabled){transform:translateY(1px)}.charge-btn.active[data-v-66936715]{border-color:var(--brass);color:var(--brass-soft);box-shadow:0 0 0 1px #c9a43766,0 0 12px #c9a43740}.charge-btn.invalid[data-v-66936715]{color:#57503c;cursor:not-allowed;border-color:#2e2a20;text-decoration:line-through}.auto-badge[data-v-66936715]{background:var(--brass);color:var(--bg);letter-spacing:.14em;border-radius:3px;flex:none;padding:.2rem .35rem;font-size:.6rem;font-weight:700}.type-row[data-v-66936715]{gap:.4rem;display:flex}.type-btn[data-v-66936715]{min-width:0;font-family:var(--font-mono);letter-spacing:.06em;color:#efe8d2;opacity:.5;border:1.5px solid #0000;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:.28rem;padding:.4rem 0;font-size:.78rem;font-weight:700;transition:opacity .2s,transform .12s,box-shadow .2s;display:inline-flex}.type-btn[data-v-66936715]:active{transform:translateY(1px)}.type-btn.active[data-v-66936715]{opacity:1;box-shadow:0 0 0 1.5px #ffffff59}.type-he[data-v-66936715]{background:#a3701c;border-color:#d8a53c}.type-ap[data-v-66936715]{background:#8c3222;border-color:#c25a42}.type-dril[data-v-66936715]{background:#21405f;border-color:#4a749e}.type-star[data-v-66936715]{background:#33608f;border-color:#6b9cc9}.type-empt[data-v-66936715]{background:#4d4a40;border-color:#7d786a}.readout[data-v-66936715]{background:#0000002e;border:1px solid #00000040;border-radius:8px;align-items:center;gap:.8rem;padding:.55rem .7rem;display:flex}.gauge-box[data-v-66936715]{filter:drop-shadow(0 3px 5px #00000073);flex:none;width:118px}.readout-text[data-v-66936715]{flex-direction:column;flex:1;align-items:flex-start;gap:.3rem;min-width:0;display:flex}.elev-value[data-v-66936715]{font-family:var(--font-mono);color:var(--red-bright);text-shadow:0 0 14px #d4553d73;letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:2.3rem;font-weight:700;transition:color .3s}.elev-empty[data-v-66936715]{color:#6b6350;text-shadow:none}.fire-btn[data-v-66936715]{border:2px solid var(--brass);color:var(--brass-soft);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;background:linear-gradient(#35301f,#241f13);border-radius:8px;padding:.7rem .5rem;font-size:1.02rem;font-weight:700;transition:transform .12s,box-shadow .25s,background .25s}.fire-btn[data-v-66936715]:hover{box-shadow:0 0 18px #c9a4374d}.fire-btn[data-v-66936715]:active{transform:translateY(1px)}.fire-flash[data-v-66936715]{background:var(--brass);color:var(--bg);box-shadow:0 0 26px #e2c46399}.key-hint[data-v-66936715]{opacity:.6;font-size:.85em}.pop-enter-active[data-v-66936715],.pop-leave-active[data-v-66936715]{transition:opacity .2s,transform .2s}.pop-enter-from[data-v-66936715],.pop-leave-to[data-v-66936715]{opacity:0;transform:scale(.6)}.card[data-v-a1bc383b]{background:linear-gradient(115deg, #ffffff38 0%, #fff0 45%), linear-gradient(180deg, var(--paper) 0%, var(--paper-shade) 100%);border:1px solid var(--paper-edge);color:var(--ink);transform:rotate(var(--tilt));cursor:grab;-webkit-user-select:none;user-select:none;border-radius:4px;padding:.5rem .6rem .4rem;box-shadow:inset 0 1px #ffffff59,0 4px 10px #00000073}.card[data-v-a1bc383b]:active{cursor:grabbing}.card-top[data-v-a1bc383b]{align-items:center;gap:.5rem;display:flex}.reticle[data-v-a1bc383b]{flex:none;width:22px;height:22px}.shell[data-v-a1bc383b]{flex:1;min-width:0;height:26px}.shell-type[data-v-a1bc383b]{font-family:var(--font-mono);letter-spacing:.08em;fill:#22201c;font-size:12px;font-weight:700}.shell-charge[data-v-a1bc383b]{font-family:var(--font-mono);fill:#22201c;font-size:15px;font-weight:700}.card-marks[data-v-a1bc383b]{flex-direction:column;flex:none;align-items:center;gap:2px;display:flex}.card-x[data-v-a1bc383b]{background:0 0;border:none;border-radius:3px;padding:2px;line-height:0}.card-x[data-v-a1bc383b]:hover{background:#b5432f2e}.card-x svg[data-v-a1bc383b]{width:13px;height:13px}.card-check[data-v-a1bc383b]{width:12px;height:12px}.card-values[data-v-a1bc383b]{justify-content:space-between;gap:.5rem;margin-top:.35rem;display:flex}.value-block[data-v-a1bc383b]{text-align:center;flex:1;min-width:0}.value-icon[data-v-a1bc383b]{width:64px;height:34px}.value-num[data-v-a1bc383b]{font-family:var(--font-mono);letter-spacing:.02em;white-space:nowrap;font-size:1.28rem;font-weight:700}.card-foot[data-v-a1bc383b]{letter-spacing:.06em;color:var(--ink-soft);text-align:center;text-transform:uppercase;border-top:1px dashed #22201c4d;margin-top:.3rem;padding-top:.25rem;font-size:.66rem}.cannon[data-v-e4876ad2]{outline-offset:3px;outline:2px solid #0000;flex-direction:column;min-height:260px;padding:.65rem .7rem .8rem;transition:outline-color .25s,box-shadow .25s;display:flex}.cannon.is-next[data-v-e4876ad2]{outline-color:#c9a4378c}.cannon.drag-over[data-v-e4876ad2]{outline-color:var(--brass-soft);box-shadow:inset 0 1px #ffffff24,inset 0 -2px 6px #00000040,0 0 0 3px #c9a43740,0 8px 22px #00000073}.cannon-head[data-v-e4876ad2]{border-bottom:1px solid #00000040;align-items:center;gap:.5rem;margin-bottom:.55rem;padding:0 .15rem .5rem;display:flex}.cannon-icon[data-v-e4876ad2]{flex:none;width:44px;height:26px}.next-badge[data-v-e4876ad2]{letter-spacing:.12em;text-transform:uppercase;color:var(--brass-soft);text-shadow:0 1px 2px #0009;font-size:.62rem;font-weight:700}.count[data-v-e4876ad2]{color:var(--cream);background:#0000004d;border:1px solid #00000059;border-radius:4px;margin-left:auto;padding:.12rem .4rem;font-size:.78rem;font-weight:700}.count-full[data-v-e4876ad2]{color:var(--red-bright)}.cannon-body[data-v-e4876ad2]{flex-direction:column;flex:1;gap:.55rem;display:flex;position:relative}.empty-slot[data-v-e4876ad2]{color:#14190f8c;letter-spacing:.14em;text-transform:uppercase;border:2px dashed #00000047;border-radius:6px;flex:1;justify-content:center;align-items:center;min-height:90px;font-size:.72rem;display:flex}.cardfx-enter-active[data-v-e4876ad2]{transition:transform .5s cubic-bezier(.22,1.4,.36,1),opacity .35s}.cardfx-leave-active[data-v-e4876ad2]{width:100%;transition:transform .3s,opacity .25s;position:absolute}.cardfx-enter-from[data-v-e4876ad2]{opacity:0;transform:translateY(-30px)rotate(-5deg)scale(.85)}.cardfx-leave-to[data-v-e4876ad2]{opacity:0;transform:translateY(12px)scale(.9)}.cardfx-move[data-v-e4876ad2]{transition:transform .4s cubic-bezier(.22,1.2,.36,1)}.fade-enter-active[data-v-e4876ad2],.fade-leave-active[data-v-e4876ad2]{transition:opacity .25s}.fade-enter-from[data-v-e4876ad2],.fade-leave-to[data-v-e4876ad2]{opacity:0}.history[data-v-1c800c08]{overflow:hidden}.history-head[data-v-1c800c08]{width:100%;color:var(--cream);text-align:left;background:0 0;border:none;align-items:center;gap:.7rem;padding:.6rem .8rem;display:flex}.history-meta[data-v-1c800c08]{letter-spacing:.1em;text-transform:uppercase;color:var(--cream-dim);margin-left:auto;font-size:.72rem}.chevron[data-v-1c800c08]{color:var(--cream-dim);transition:transform .25s}.chevron-open[data-v-1c800c08]{transform:rotate(180deg)}.history-body[data-v-1c800c08]{flex-direction:column;gap:.6rem;max-height:320px;padding:0 .8rem .8rem;display:flex;overflow-y:auto}.history-actions[data-v-1c800c08]{gap:.5rem;display:flex}.ghost-btn[data-v-1c800c08]{color:var(--cream);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:#00000040;border:1px solid #00000059;border-radius:5px;padding:.3rem .6rem;font-size:.68rem;font-weight:700;transition:border-color .2s}.ghost-btn[data-v-1c800c08]:hover{border-color:var(--brass)}.ghost-btn.danger[data-v-1c800c08]:hover{border-color:var(--red-bright);color:var(--red-bright)}.history-empty[data-v-1c800c08]{color:var(--cream-dim);margin:0;font-size:.78rem}.match[data-v-1c800c08]{background:#0000002e;border:1px solid #00000040;border-radius:6px;padding:.5rem .6rem}.match-head[data-v-1c800c08]{align-items:baseline;gap:.6rem;margin-bottom:.35rem;font-size:.8rem;display:flex}.live-tag[data-v-1c800c08]{color:var(--brass-soft);font-size:.7rem;font-weight:400}.match-date[data-v-1c800c08]{color:var(--cream-dim);margin-left:auto;font-size:.68rem}.volley[data-v-1c800c08]{border-top:1px dashed #ffffff1f;padding:.3rem 0}.volley-head[data-v-1c800c08]{letter-spacing:.08em;text-transform:uppercase;color:var(--brass-soft);margin-bottom:.25rem;font-size:.7rem}.volley-shots[data-v-1c800c08]{flex-wrap:wrap;gap:.3rem;display:flex}.shot-chip[data-v-1c800c08]{color:var(--cream);white-space:nowrap;background:#ece3cb1a;border:1px solid #ece3cb26;border-radius:4px;padding:.15rem .4rem;font-size:.66rem}.unfold-enter-active[data-v-1c800c08],.unfold-leave-active[data-v-1c800c08]{max-height:340px;transition:max-height .3s,opacity .3s}.unfold-enter-from[data-v-1c800c08],.unfold-leave-to[data-v-1c800c08]{opacity:0;max-height:0}.shell-layout[data-v-d359725d]{flex-direction:column;gap:1rem;max-width:1180px;min-height:100vh;margin:0 auto;padding:1rem 1rem 1.5rem;display:flex}.top[data-v-d359725d]{text-align:center}.tagline[data-v-d359725d]{letter-spacing:.38em;text-transform:uppercase;color:var(--red-bright);margin:.2rem 0 .55rem;font-size:.66rem}.title-row[data-v-d359725d]{justify-content:center;align-items:center;display:flex;position:relative}.title[data-v-d359725d]{margin:0;font-weight:400}.title-banner[data-v-d359725d]{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--banner-ink);background:radial-gradient(120% 160% at 50% 115%, #f4593f 0%, transparent 55%), linear-gradient(180deg, var(--banner-red), var(--banner-red-deep));text-shadow:0 1px #ffffff1f;border-radius:6px;padding:.14em .5em .16em;font-size:clamp(2.1rem,5.5vw,3rem);line-height:1;display:inline-block;box-shadow:inset 0 1px #ffffff38,inset 0 -2px 5px #00000040,0 4px 14px #00000073}.header-links[data-v-d359725d]{align-items:center;gap:.4rem;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.gh-btn[data-v-d359725d]{width:30px;height:30px;color:var(--cream);background:#0000004d;border:1px solid #c9a43766;border-radius:5px;justify-content:center;align-items:center;transition:border-color .2s,color .2s;display:inline-flex}.gh-btn[data-v-d359725d]:hover{border-color:var(--brass);color:var(--brass-soft)}.gh-btn svg[data-v-d359725d]{width:17px;height:17px}.lang-btn[data-v-d359725d]{color:var(--cream);font-family:var(--font-mono);letter-spacing:.08em;background:#0000004d;border:1px solid #c9a43766;border-radius:5px;padding:.3rem .55rem;font-size:.7rem;font-weight:700;transition:border-color .2s}.lang-btn[data-v-d359725d]:hover{border-color:var(--brass)}.subtitle[data-v-d359725d]{letter-spacing:.28em;text-transform:uppercase;color:var(--cream-dim);text-shadow:none;margin-top:.65rem;margin-bottom:.2rem;font-size:.82rem;font-weight:400;display:block}.board[data-v-d359725d]{grid-template-columns:minmax(300px,380px) 1fr;align-items:start;gap:1rem;display:grid}.guns-zone[data-v-d359725d]{flex-direction:column;gap:.8rem;min-width:0;display:flex}.guns-bar[data-v-d359725d]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.mode-chips[data-v-d359725d]{align-items:center;gap:.35rem;display:flex}.mode-chip[data-v-d359725d]{color:var(--cream-dim);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#0000004d;border:1.5px solid #ffffff1f;border-radius:6px;padding:.35rem .6rem;font-size:.7rem;font-weight:700;transition:color .2s,border-color .2s}.mode-chip.active[data-v-d359725d]{color:var(--brass-soft);border-color:var(--brass)}.reset-btn[data-v-d359725d]{border:1.5px solid var(--red);color:#e8b0a2;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(#3a2018,#2a150f);border-radius:6px;padding:.38rem .7rem;font-size:.74rem;font-weight:700;transition:box-shadow .2s,transform .12s}.reset-btn[data-v-d359725d]:hover{box-shadow:0 0 14px #b5432f59}.reset-btn[data-v-d359725d]:active{transform:translateY(1px)}.key-tag[data-v-d359725d]{color:var(--cream);background:#ffffff1f;border:1px solid #fff3;border-radius:3px;margin-left:.15rem;padding:.05rem .3rem;font-size:.62rem;display:inline-block}.guns-grid[data-v-d359725d]{grid-template-columns:1fr 1fr;align-items:stretch;gap:.8rem;display:grid}.foot[data-v-d359725d]{text-align:center;margin-top:auto}.hints[data-v-d359725d]{letter-spacing:.06em;color:var(--cream-dim);margin:0;font-size:.7rem}.about[data-v-d359725d]{text-align:left;max-width:640px;margin:1rem auto 0}.intro[data-v-d359725d]{color:var(--cream-dim);text-align:center;margin:0;font-size:.72rem;line-height:1.55}.faq[data-v-d359725d]{color:var(--cream-dim);margin-top:.7rem;font-size:.72rem}.faq summary[data-v-d359725d]{cursor:pointer;text-align:center;letter-spacing:.14em;text-transform:uppercase;color:var(--cream);font-size:.66rem}.faq summary[data-v-d359725d]:hover{color:var(--brass-soft)}.faq dl[data-v-d359725d]{margin:.6rem 0 0}.faq dt[data-v-d359725d]{color:var(--cream);margin-top:.55rem;font-weight:700}.faq dd[data-v-d359725d]{margin:.2rem 0 0;line-height:1.5}.ext-links[data-v-d359725d]{flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem;margin-top:.8rem;font-size:.68rem;display:flex}.ext-links a[data-v-d359725d]{color:var(--cream-dim);text-underline-offset:3px;text-decoration-color:#c9a43773;transition:color .2s}.ext-links a[data-v-d359725d]:hover{color:var(--brass-soft)}.disclaimer[data-v-d359725d]{color:#7d745c;margin:.8rem 0 0;font-size:.64rem}@media (width<=860px){.board[data-v-d359725d]{grid-template-columns:1fr}}@media (width<=560px){.guns-grid[data-v-d359725d]{grid-template-columns:1fr}}@font-face{font-family:Courier Prime;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/courier-prime-400.woff2)format("woff2")}@font-face{font-family:Courier Prime;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/courier-prime-700.woff2)format("woff2")}@font-face{font-family:Squada One;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/squada-one-400.woff2)format("woff2")}:root{--bg:#221c15;--bg-deep:#191410;--panel:#6e7f64;--panel-dark:#55644c;--panel-edge:#47543f;--plate:#d8d2bd;--plate-ink:#2b2a24;--brass:#c9a437;--brass-soft:#e2c463;--brass-dark:#8a6d1f;--red:#b5432f;--red-bright:#d4553d;--paper:#ece3cb;--paper-shade:#d9cda9;--paper-edge:#b5a67f;--ink:#22201c;--ink-soft:#4a453a;--mint:#bfe8d0;--mint-deep:#83c9a4;--cream:#e8ddc2;--cream-dim:#b3a686;--ok:#4d7d43;--font-mono:"Courier Prime", "Courier New", Courier, monospace;--font-display:"Squada One", "Arial Narrow", "Trebuchet MS", sans-serif;--banner-red:#e03a26;--banner-red-deep:#b8271a;--banner-ink:#191b24}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(1200px 700px at 50% -10%, #322a1f 0%, var(--bg) 55%, var(--bg-deep) 100%);color:var(--cream);font-family:var(--font-mono);min-height:100vh}button{cursor:pointer;font-family:inherit}input{font-family:inherit}::selection{background:var(--brass);color:var(--bg)}.plate-label{color:var(--plate-ink);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;background:linear-gradient(#e3ddc8,#c9c2ab);border:1px solid #9a927a;border-radius:3px;padding:.22rem .55rem;font-size:.68rem;font-weight:700;display:inline-block;box-shadow:inset 0 1px #f4efdd,0 1px 2px #00000073}.metal-panel{background:linear-gradient(160deg, #79896e 0%, var(--panel) 40%, var(--panel-dark) 100%);border:1px solid var(--panel-edge);border-radius:12px;position:relative;box-shadow:inset 0 1px #ffffff24,inset 0 -2px 6px #00000040,0 8px 22px #00000073}.rivets:before,.rivets:after{content:"";background:radial-gradient(circle at 35% 30%,#d9d4c2,#6e6a58 65%,#3c392e);border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 1px 2px #0000008c}.rivets:before{top:8px;left:8px}.rivets:after{top:8px;right:8px}.rivets-bottom:before,.rivets-bottom:after{content:"";background:radial-gradient(circle at 35% 30%,#d9d4c2,#6e6a58 65%,#3c392e);border-radius:50%;width:7px;height:7px;position:absolute;bottom:8px;box-shadow:0 1px 2px #0000008c}.rivets-bottom:before{left:8px}.rivets-bottom:after{right:8px}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.shake{animation:.35s shake}
