@font-face{font-family:Special Elite;font-style:normal;font-weight:400;font-display:swap;src:url(./special-elite-YjDd9tmf.woff2) format("woff2")}@font-face{font-family:Courier Prime;font-style:normal;font-weight:400;font-display:swap;src:url(./courier-prime-BbyBr73r.woff2) format("woff2")}@font-face{font-family:Courier Prime;font-style:normal;font-weight:700;font-display:swap;src:url(./courier-prime-bold-D1YCjmaD.woff2) format("woff2")}:root{--paper: #e9dcbc;--paper-deep: #cfb98d;--panel: #efe4c9;--ink: #2a2318;--ink-faint: #7a6c52;--rule: #b7a67e;--player: #274b8f;--enemy: #241e13;--red: #b0271c;--gold: #8f6f14;--ledger-line: rgba(42, 35, 24, .07);--margin-line: rgba(176, 39, 28, .18)}@media(prefers-color-scheme:dark){:root{--paper: #1b1712;--paper-deep: #2c2517;--panel: #211c15;--ink: #e2d5b6;--ink-faint: #97896c;--rule: #4a3f2c;--player: #8aa7e8;--enemy: #ded1b1;--red: #e05a4a;--gold: #d3a83c;--ledger-line: rgba(226, 213, 182, .05);--margin-line: rgba(224, 90, 74, .16)}}*{margin:0;padding:0;box-sizing:border-box}html{height:100%}body{min-height:100%;background:linear-gradient(90deg,transparent 22px,var(--margin-line) 22px 23px,transparent 23px),repeating-linear-gradient(to bottom,transparent 0 27px,var(--ledger-line) 27px 28px),var(--paper);color:var(--ink);font-family:Courier Prime,Courier New,monospace;display:flex;justify-content:center;-webkit-tap-highlight-color:transparent}#app{width:min(100vw,60vh);padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);display:flex;flex-direction:column;gap:12px}.status{min-height:44px;display:flex;align-items:center;justify-content:center;font-family:Special Elite,American Typewriter,Courier New,monospace;font-size:19px}.board{display:grid;width:100%;aspect-ratio:1;-webkit-user-select:none;user-select:none;border:2px solid var(--ink);position:relative;overflow:hidden}.cell{position:relative;border:0;padding:0;font:inherit;aspect-ratio:1;display:flex;align-items:center;justify-content:center;cursor:pointer}.cell.light{background:var(--panel)}.cell.dark{background:repeating-linear-gradient(45deg,transparent 0 3px,var(--ledger-line) 3px 4px),var(--paper-deep)}.cell.selected:after{content:"";position:absolute;top:5%;right:5%;bottom:5%;left:5%;border:2.5px dashed var(--player);border-radius:50%;transform:rotate(-5deg)}.cell.target-move:after{content:"";position:absolute;width:24%;height:24%;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--ink-faint),transparent 72%);opacity:.85}.cell.target-attack:after{content:"";position:absolute;top:4%;right:4%;bottom:4%;left:4%;border:2.5px dashed var(--red);border-radius:50%;transform:rotate(7deg)}.cell.eligible:after{content:"";position:absolute;top:5%;right:5%;bottom:5%;left:5%;border:2.5px dashed var(--gold);border-radius:50%}.piece-wrap{width:78%;height:78%;display:flex;align-items:center;justify-content:center}.piece-wrap.sliding{transition:transform .3s cubic-bezier(.2,.8,.2,1)}.piece-wrap.hit .piece{animation:hit-flash .45s steps(2,jump-none)}@keyframes hit-flash{50%{opacity:.35;filter:drop-shadow(0 0 2px var(--red))}}.piece{display:block;width:100%;height:100%}.piece.player{fill:var(--player)}.piece.enemy{fill:var(--enemy);transform:rotate(-3deg)}.hp{position:absolute;right:3%;bottom:3%;font-family:Courier Prime,Courier New,monospace;font-variant-numeric:tabular-nums;font-size:min(3.4vw,2vh);font-weight:700;color:var(--ink);background:var(--panel);border:1px solid var(--rule);min-width:1.5em;text-align:center;padding:1px 2px}.seal-row{position:absolute;left:4%;top:4%;right:4%;display:flex;overflow:hidden;pointer-events:none;z-index:1}.seal{flex:none;width:24%;aspect-ratio:1;border-radius:50%;border:2px solid;background:var(--panel);box-shadow:0 0 0 2px var(--panel);display:flex;align-items:center;justify-content:center}.seal+.seal{margin-left:-6%}.seal:after{content:"";width:55%;height:55%;border-radius:50%;background:currentColor}.check-stamp{position:absolute;pointer-events:none;z-index:3;font-family:Special Elite,American Typewriter,Courier New,monospace;font-size:min(11vw,6.6vh);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;color:var(--red);border:4px double var(--red);padding:0 14px 2px;transform:translate(-50%,-50%) rotate(-11deg);opacity:.28;filter:url(#inkbleed)}.check-stamp.slam{opacity:0;animation:stamp-slam .45s cubic-bezier(.55,0,.65,.2) forwards,stamp-settle .5s ease 1.3s forwards}@keyframes stamp-slam{0%{opacity:0;transform:translate(-50%,-50%) rotate(-4deg) scale(2.4)}62%{opacity:1;transform:translate(-50%,-50%) rotate(-11deg) scale(.95)}80%{transform:translate(-50%,-50%) rotate(-11deg) scale(1.03)}to{opacity:1;transform:translate(-50%,-50%) rotate(-11deg) scale(1)}}@keyframes stamp-settle{to{opacity:.28}}.check-stamp.mate{font-size:min(13vw,7.8vh);letter-spacing:.16em;border-width:5px;padding:0 16px 3px;opacity:.34}.check-stamp.mate.slam{opacity:0;animation:stamp-slam-mate .6s cubic-bezier(.55,0,.65,.2) forwards,stamp-settle-mate .5s ease 1.6s forwards}@keyframes stamp-slam-mate{0%{opacity:0;transform:translate(-50%,-50%) rotate(-2deg) scale(3)}55%{opacity:1;transform:translate(-50%,-50%) rotate(-11deg) scale(.92)}70%{transform:translate(-50%,-50%) rotate(-11deg) scale(1.06)}84%{transform:translate(-50%,-50%) rotate(-11deg) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) rotate(-11deg) scale(1)}}@keyframes stamp-settle-mate{to{opacity:.34}}.board.mate-window{border-color:var(--red);box-shadow:inset 0 0 0 2px var(--red),0 0 14px color-mix(in srgb,var(--red) 30%,transparent)}.dmg-float{position:absolute;left:50%;top:8%;transform:translate(-50%);font-family:Courier Prime,Courier New,monospace;font-weight:700;font-size:min(4.5vw,2.7vh);color:var(--red);pointer-events:none;z-index:2;animation:float-up .9s ease-out forwards}@keyframes float-up{0%{opacity:0}15%{opacity:1}to{opacity:0;transform:translate(-50%,-130%)}}.ghost{position:absolute;top:11%;right:11%;bottom:11%;left:11%;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:1;animation:cross-off .8s ease forwards}.ghost:after{content:"";position:absolute;left:2%;right:2%;top:48%;height:3px;background:var(--red);transform:rotate(-16deg)}@keyframes cross-off{0%,55%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.piece-wrap.sliding{transition:none}.piece-wrap.hit .piece{animation:none}.dmg-float,.ghost{display:none}.check-stamp.slam{animation:none;opacity:.28}.check-stamp.mate.slam{animation:none;opacity:.34}}.footer{display:flex;justify-content:center;gap:12px;padding-bottom:12px}.btn{min-height:44px;min-width:44px;padding:0 24px;font-family:Special Elite,American Typewriter,Courier New,monospace;font-size:15px;letter-spacing:.06em;color:var(--ink);background:var(--panel);border:1px solid var(--ink);border-radius:0;cursor:pointer}.log{margin:0 12px 16px;border:1px solid var(--rule);background:var(--panel);border-radius:0;padding:8px 12px}.log summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-family:Special Elite,American Typewriter,Courier New,monospace;font-size:13px;letter-spacing:.1em;text-transform:uppercase}.log pre{font-family:Courier Prime,Courier New,monospace;font-size:12.5px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:40vh;overflow-y:auto;color:var(--ink-faint)}.promotion{display:flex;justify-content:center;gap:12px}.btn.promo{padding:8px 16px}.btn.promo .piece{width:30px;height:30px}.cards{display:flex;flex-direction:column;gap:16px;padding:0 12px}.card{position:relative;min-height:44px;padding:12px 14px;text-align:left;font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--ink);border-top-style:dashed;border-radius:0;cursor:pointer}.card-body{display:flex;flex-direction:column;gap:6px}.card-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding-right:96px}.card-name{font-family:Special Elite,American Typewriter,Courier New,monospace;font-weight:400;font-size:17px}.card-rarity{position:absolute;right:10px;top:10px;font-family:Special Elite,American Typewriter,Courier New,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;border:2.5px double;padding:2px 8px;transform:rotate(4deg);opacity:.9}.rarity-common{color:var(--ink-faint);border-color:var(--ink-faint)}.rarity-rare{color:var(--player);border-color:var(--player)}.rarity-legendary{color:var(--gold);border-color:var(--gold)}.card-text{font-size:14px;line-height:1.45}.card-attach{font-size:12.5px;color:var(--ink-faint)}.run-position{min-height:20px;display:flex;align-items:center;justify-content:center;font-family:Special Elite,American Typewriter,Courier New,monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);padding-top:8px}
