@font-face{font-family:Geist Pixel Square;src:url(/fonts/GeistPixel-Square.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f7f3e8;font-synthesis:none;text-rendering:optimizelegibility;--ink:#1e2633;--ink-deep:#101722;--frame:#515966;--frame-light:#8f98a6;--paper:#f2f2f2;--paper-dim:#d8dee6;--paper-shadow:#9aa3b1;--gold:#e6b84f;--green:#56c7a8;--blue:#6fb6d9;--pink:#c777b8;--red:#d65f5f;background:#1e2633;font-family:Geist Pixel Square,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--paper);background:linear-gradient(45deg,#ffffff09 25%,#0000 25%) 0 0/16px 16px,linear-gradient(45deg,#0000 75%,#00000038 75%) 0 0/16px 16px,linear-gradient(#2f3846 0%,#1e2633 58%,#141b25 100%);margin:0}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.62;transform:none}.app{width:min(1560px,100%);margin:0 auto;padding:18px 18px 96px}.layout{border:4px solid var(--ink);background:var(--frame);box-shadow:inset 0 0 0 3px var(--frame-light), 6px 6px 0 #0000006b}.topBar{justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:0 2px;display:flex}.panelHeader h2,.draftHeader h2{letter-spacing:0;margin:0}.emptyText,.anomalyCard p{color:#374151;margin:6px 0 0}.primaryButton,.ghostButton,select{border:3px solid var(--ink);background:var(--paper-dim);min-height:38px;box-shadow:inset 3px 3px 0 #ffffffd1, inset -3px -3px 0 var(--paper-shadow), 3px 3px 0 #0000006b;color:var(--ink);letter-spacing:0;text-transform:uppercase;border-radius:0;padding:0 13px;font-weight:900}.coinBadge{align-items:center;gap:7px;min-width:86px;display:inline-flex}.coinBadge strong{color:var(--paper);text-shadow:2px 0 0 var(--ink-deep), 0 2px 0 var(--ink-deep), 2px 2px 0 var(--ink-deep);font-size:clamp(1.25rem,4vw,1.8rem);line-height:1;transition:color .14s ease-out,text-shadow .14s ease-out}.coinBadge-earned strong{color:#a8f0c6;text-shadow:2px 0 #24543a,0 2px #24543a,2px 2px #24543a}.coinBadge-spent strong{color:#ff9ca3;text-shadow:2px 0 #682534,0 2px #682534,2px 2px #682534}.coinBadge img{width:42px;height:42px;image-rendering:pixelated;filter:drop-shadow(3px 3px #0000005c)}.coinValueWrap{place-items:center;min-width:1.4ch;display:inline-grid;position:relative}.coinDelta{z-index:2;pointer-events:none;color:var(--paper);text-shadow:2px 0 0 var(--ink-deep), 0 2px 0 var(--ink-deep), 2px 2px 0 var(--ink-deep);transform-origin:bottom;white-space:nowrap;font-size:.82rem;font-weight:900;line-height:1;position:absolute;bottom:calc(100% - 3px);left:50%;translate:-50%}.coinDelta-earned{color:#a8f0c6}.coinDelta-spent{color:#ff9ca3}.coinFlightLayer{z-index:18;pointer-events:none;position:fixed;inset:0;overflow:hidden}.coinFlightSprite{width:28px;height:28px;image-rendering:pixelated;filter:drop-shadow(2px 2px #00000052);will-change:transform, opacity;position:fixed;top:0;left:0}.hudIconButton,.floatingNewGameButton{border:3px solid var(--ink);background:var(--paper-dim);box-shadow:inset 3px 3px 0 #ffffffd1, inset -3px -3px 0 var(--paper-shadow), 3px 3px 0 #0000006b;border-radius:0;place-items:center;display:inline-grid}.hudIconButton{width:52px;height:52px;padding:5px}.hudIconButton img,.floatingNewGameButton img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated}.iconOnlyButton{width:48px;height:48px;box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;padding:7px;display:inline-grid}.iconOnlyButton img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated}.floatingNewGameButton{right:calc(18px + env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:10;width:64px;height:64px;padding:7px;position:fixed}.primaryButton{background:var(--gold);box-shadow:inset 3px 3px #ffe8a3,inset -3px -3px #9c7430,3px 3px #0000006b}.layout{border-radius:0;grid-template-columns:minmax(260px,.8fr) repeat(2,minmax(240px,1fr));gap:16px;margin-top:0;padding:16px;display:grid}.layout.panelsOnly{grid-template-columns:repeat(2,minmax(240px,1fr))}.centerStack{align-content:start;gap:14px;display:grid}.sidePanel,.draftModal,.shopModal,.difficultyModal,.abilityDetailsModal,.moveTray{border:4px solid var(--ink);background:var(--paper-dim);box-shadow:inset 0 0 0 3px var(--paper-shadow), 4px 4px 0 #00000057;color:var(--ink);border-radius:0}.sidePanel{min-width:0;padding:14px}.sidePanel.activeTurn{box-shadow:inset 0 0 0 3px var(--paper-shadow), 0 0 0 4px var(--gold), 4px 4px 0 #00000057}.panelHeader{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:12px;display:flex}.eyeline{color:var(--paper);background:var(--ink);border:2px solid var(--ink-deep);text-transform:uppercase;letter-spacing:0;margin:0 0 4px;padding:3px 5px;font-size:.68rem;font-weight:800;box-shadow:2px 2px #00000047}.anomalyCard{border:3px solid var(--ink);background:var(--paper);border-radius:0;grid-template-columns:42px 1fr auto;align-items:start;gap:10px;padding:12px;display:grid;box-shadow:inset 2px 2px #fff,inset -2px -2px #b9c0cb}button.anomalyCard{width:100%;color:var(--ink);font:inherit;text-align:left}button.anomalyCard:disabled{cursor:default;filter:none;opacity:1}.anomalyAction.readyAction{cursor:pointer;box-shadow:inset 2px 2px 0 #fff, inset -2px -2px 0 #b9c0cb, 0 0 0 3px var(--green), 4px 4px 0 #00000052}.anomalyAction.armedAction{box-shadow:inset 2px 2px 0 #fff, inset -2px -2px 0 #b9c0cb, 0 0 0 3px var(--gold), 4px 4px 0 #00000052;background:#f6e9bf}.anomalyIcon{border:3px solid var(--ink);background:var(--frame);width:34px;height:42px;color:var(--gold);box-shadow:inset -2px -2px 0 var(--ink);border-radius:0;place-items:center;font-weight:900;display:grid}.anomalyBody{display:block}.anomalyCard strong,.modifierRow strong,.draftCard strong,.shopCard strong{line-height:1.16;display:block}.anomalyCard small,.modifierRow small,.draftCard small,.tier{color:var(--ink);text-transform:uppercase;letter-spacing:0;font-size:.66rem;font-weight:800}.modifierList,.abilityIconGrid{gap:9px;margin-top:12px;display:grid}.abilityIconGrid{flex-wrap:wrap;align-items:start;gap:10px;display:flex}.abilityIconButton{border:3px solid var(--ink);background:var(--paper-dim);width:64px;height:64px;box-shadow:inset 3px 3px 0 #ffffffd1, inset -3px -3px 0 var(--paper-shadow), 4px 4px 0 #00000057;color:var(--ink);border-radius:0;place-items:center;padding:7px;display:grid;position:relative}.abilityIconButton img{object-fit:contain;width:48px;height:48px;image-rendering:pixelated;pointer-events:none}.abilityIconButton.pending,.abilityIconButton.lost{opacity:.58;filter:grayscale(.45)}.abilityIconButton.readyAction{box-shadow:inset 3px 3px 0 #ffffffd1, inset -3px -3px 0 var(--paper-shadow), 0 0 0 3px var(--green), 4px 4px 0 #00000057}.abilityIconButton.armedAction{box-shadow:inset 3px 3px 0 #fff3c4, inset -3px -3px 0 #d4a84a, 0 0 0 3px var(--gold), 4px 4px 0 #00000057;background:#f6e9bf}.abilityIconBadge{border:2px solid var(--ink);background:var(--frame);max-width:calc(100% + 6px);color:var(--paper);text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;padding:3px 5px;font-size:.55rem;font-weight:900;line-height:1;position:absolute;bottom:-5px;right:-5px;overflow:hidden}.abilityIconBadge:empty{display:none}.modifierRow{border:3px solid var(--ink);background:var(--paper);border-radius:0;grid-template-columns:1fr auto;gap:8px;padding:10px;display:grid;box-shadow:inset -2px -2px #b9c0cb}button.modifierRow{width:100%;color:var(--ink);font:inherit;text-align:left}.upgradeCard.pending,.upgradeCard.lost{opacity:.62}.upgradeCard.readyAction{cursor:pointer;box-shadow:inset 5px 0 0 var(--green), inset -2px -2px 0 #b9c0cb, 3px 3px 0 #00000038}.upgradeCard.armedAction{box-shadow:inset 5px 0 0 var(--gold), inset -2px -2px 0 #b9c0cb, 3px 3px 0 #00000038;background:#f6e9bf}.modifierRow span,.draftCard span:not(.tier),.shopCard span:not(.tier){color:#374151;margin-top:4px;font-size:.84rem;line-height:1.35;display:block}.modifierRow.rare,.draftCard.rare,.shopCard.rare{box-shadow:inset 5px 0 0 var(--blue), inset -2px -2px 0 #b9c0cb}.modifierRow.epic,.draftCard.epic,.shopCard.epic{box-shadow:inset 5px 0 0 var(--pink), inset -2px -2px 0 #b9c0cb}.modifierRow.legendary,.draftCard.legendary,.shopCard.legendary{box-shadow:inset 5px 0 0 var(--gold), inset -2px -2px 0 #b9c0cb}.statusStrip{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px;display:grid}.statusStrip span{border:2px solid var(--ink);background:var(--frame);color:var(--paper);text-align:center;border-radius:0;padding:7px 6px;font-size:.74rem;font-weight:900}.boardStage{justify-items:center;margin:14px 0 16px;display:grid}.boardShell{justify-self:center;width:min(100%,76vh,720px)}.board{aspect-ratio:1;box-shadow:0 0 0 4px var(--ink), 6px 6px 0 #0000006b;image-rendering:pixelated;background:#8b96a4 url(/pieces/pixel/board_empty.png) 50%/100% 100% no-repeat;border:0;border-radius:0;grid-template-rows:repeat(8,minmax(0,1fr));grid-template-columns:repeat(8,minmax(0,1fr));padding:3.125%;display:grid;position:relative;overflow:hidden}.board.disabled .square{cursor:default;pointer-events:none}.square{min-width:0;min-height:0;color:inherit;background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.square.light,.square.dark{background:0 0}.square.last{box-shadow:inset 0 0 0 999px #e6b84f47}.square.selected{box-shadow:inset 0 0 0 3px var(--green), inset 0 0 0 5px #1e26336b}.square.inCheck{background-image:linear-gradient(#f8717161,#f8717161)}.square.legal .moveDot{z-index:4;aspect-ratio:1;pointer-events:none;background:#56c7a8b8;border-radius:999px;width:22%;position:absolute;box-shadow:0 0 0 3px #1e263329,0 0 0 7px #56c7a81f}.square.captureTarget .moveDot{z-index:5}.square.chaosMove .moveDot{background:#c777b8db;box-shadow:0 0 0 3px #1e263329,0 0 0 7px #c777b829}.piece{z-index:2;aspect-ratio:1;background-image:var(--piece-sheet);background-repeat:no-repeat;background-position:var(--piece-position) 0;width:78%;image-rendering:pixelated;pointer-events:none;will-change:transform;background-size:600% 100%;position:relative}.pieceShadow{z-index:1;aspect-ratio:1;width:78%;image-rendering:pixelated;pointer-events:none;will-change:transform, opacity;background:url(/pieces/pixel/shadow.png) 50%/contain no-repeat;position:absolute}.checkmateOverlay{z-index:8;pointer-events:all;background:#101722a3;place-items:center;display:grid;position:absolute;inset:0}.checkmateOverlay strong{border:4px solid var(--ink);background:var(--red);color:var(--paper);letter-spacing:0;text-shadow:3px 3px 0 var(--ink);border-radius:0;padding:14px 22px;font-size:clamp(2.2rem,8vw,5.4rem);line-height:1;box-shadow:inset 3px 3px #ffffff42,inset -3px -3px #00000047,6px 6px #0000006b}.statusMark{z-index:6;border:2px solid var(--ink);color:#07111d;border-radius:0;place-items:center;width:18px;height:18px;font-size:.65rem;font-weight:900;display:grid;position:absolute;top:4px;right:4px}.statusMark.immune{background:#a7f3d0}.statusMark.frozen{background:#bfdbfe}.statusMarkImage{object-fit:contain;width:32%;min-width:18px;max-width:28px;height:32%;min-height:18px;max-height:28px;image-rendering:pixelated;pointer-events:none;background:0 0;border:0}.statusMarkImage.immune,.statusMarkImage.frozen{background:0 0}.statusMarkImage.immune{z-index:1;object-fit:fill;width:44%;min-width:24px;max-width:42px;height:36%;min-height:20px;max-height:34px;filter:drop-shadow(1px 0 0 var(--ink)) drop-shadow(-1px 0 0 var(--ink)) drop-shadow(0 1px 0 var(--ink)) drop-shadow(0 -1px 0 var(--ink));top:8%;right:3%}.statusMark.assigned{background:#fef3c7;top:auto;bottom:4px}.moveTray{grid-template-columns:1fr;align-items:center;gap:12px;padding:12px;display:grid}.moveTray span{color:var(--ink);font-size:.9rem}.gameStatus{color:var(--red);font-weight:900}.modalBackdrop{z-index:20;background:linear-gradient(45deg,#ffffff09 25%,#0000 25%) 0 0/16px 16px,#101722e0;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.drawerBackdrop{justify-content:flex-end;align-items:stretch;padding:0;display:flex;overflow:hidden}.draftModal,.shopModal,.difficultyModal,.abilityDetailsModal{background:var(--paper-dim);width:min(960px,100%);padding:18px}.difficultyModal,.abilityDetailsModal{width:min(480px,100%);color:var(--ink)}.abilityDetailsModal{box-shadow:inset 0 0 0 3px var(--paper-shadow), 5px 5px 0 #00000061;position:relative}.abilityDetailsTop{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.abilityDetailsArt{border:3px solid var(--ink);background:var(--paper);place-items:center;width:86px;height:86px;display:grid;box-shadow:inset -2px -2px #b9c0cb}.abilityDetailsArt img{object-fit:contain;width:72px;height:72px;image-rendering:pixelated}.abilityDetailsClose{width:34px;height:34px;padding:5px}.abilityDetailsBody{gap:10px;display:grid}.abilityDetailsBody h2{letter-spacing:0;margin:0;line-height:1.1}.abilityDetailsBody p{color:#374151;margin:0;font-size:.98rem;line-height:1.38}.abilityDetailsBody small{border:2px solid var(--ink);background:var(--frame);color:var(--paper);text-transform:uppercase;justify-self:start;padding:4px 6px;font-size:.68rem;font-weight:900}.shopDrawer{overscroll-behavior:contain;touch-action:pan-y;width:min(460px,92vw);height:100dvh;max-height:100dvh;box-shadow:inset 0 0 0 3px var(--paper-shadow), -6px 0 0 #00000057;will-change:transform;border-top:0;border-bottom:0;border-right:0;overflow-y:auto}.draftHeader{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.shopHud{justify-content:space-between;align-items:center;gap:12px;min-height:52px;margin-bottom:14px;display:flex}.shopHeaderActions{flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}.shopCloseButton img{width:22px;height:22px}.shopCloseButton{width:auto;height:auto;padding:0;line-height:0}.draftGrid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.shopGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.difficultyGrid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.draftCard,.shopCard,.difficultyCard{border:3px solid var(--ink);background:var(--paper);min-height:190px;color:var(--ink);text-align:left;border-radius:0;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;display:flex;position:relative;box-shadow:inset -2px -2px #b9c0cb}.shopCard{min-height:0;padding:12px}.shopCardHeader{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.shopCardHeader .tier{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.difficultyCard{background:var(--paper);justify-content:center;align-items:center;min-height:96px}.difficultyCard.selected{box-shadow:inset 0 0 0 4px var(--gold), inset -2px -2px 0 #b9c0cb;background:#f6e9bf}.difficultyCard small{border:2px solid var(--ink);background:var(--frame);color:var(--paper);text-transform:uppercase;margin-top:6px;padding:4px 6px;font-size:.7rem;font-weight:900}.modalActions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.shopPrice{color:var(--ink);flex:none;align-items:center;gap:3px;font-size:.88rem;font-weight:900;line-height:1;display:inline-flex}.shopPrice img{width:18px;height:18px;image-rendering:pixelated}.shopArtFrame{pointer-events:none;align-self:center;place-items:center;width:64px;height:64px;margin:0 auto 2px;display:grid}.shopArtFrame img{max-width:64px;max-height:64px;image-rendering:pixelated}.shopRerollButton{justify-content:center;align-items:center;width:100%;min-height:48px;margin-top:14px;font-weight:950;display:flex;position:relative}.shopRerollContent{justify-content:center;align-items:center;gap:8px;display:inline-flex}.shopRerollContent img{width:22px;height:22px;image-rendering:pixelated}.shopRerollCost{pointer-events:none;align-items:center;width:36px;height:24px;display:inline-flex;position:absolute;top:-12px;right:-4px}.shopRerollCost img{width:23px;height:23px;image-rendering:pixelated;position:absolute}.shopRerollCost img:first-child{right:13px}.shopRerollCost img:nth-child(2){right:0}.shopCard:disabled{filter:grayscale(.45);opacity:.58}.draftCard:hover,.shopCard:not(:disabled):hover,.difficultyCard:hover,.anomalyAction.readyAction:hover,.upgradeCard.readyAction:hover,.abilityIconButton:hover,.ghostButton:hover,.primaryButton:hover,.hudIconButton:hover,.floatingNewGameButton:hover,.iconOnlyButton:hover{transform:translateY(-1px)}.draftCard:active,.shopCard:not(:disabled):active,.difficultyCard:active,.anomalyAction.readyAction:active,.upgradeCard.readyAction:active,.abilityIconButton:active,.ghostButton:active,.primaryButton:active,.hudIconButton:active,.floatingNewGameButton:active{box-shadow:inset -3px -3px 0 #ffffffa3, inset 3px 3px 0 var(--paper-shadow);transform:translate(2px,2px)}.iconOnlyButton:active{transform:translate(2px,2px)}@media (width<=1160px){.layout,.layout.panelsOnly{grid-template-columns:1fr}.sidePanel{order:2}.centerStack{order:1}.boardShell{width:min(100%,720px)}}@media (width<=720px){.app{padding:10px 10px 84px}.topBar{min-height:50px}.layout{padding:12px}.coinBadge{min-width:74px}.coinBadge img{width:36px;height:36px}.hudIconButton{width:46px;height:46px}.floatingNewGameButton{right:calc(12px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));width:58px;height:58px}.boardStage{margin:12px 0 14px}.moveTray,.shopGrid,.draftGrid,.difficultyGrid{grid-template-columns:1fr}.modalActions{grid-template-columns:1fr 1fr;display:grid}.shopDrawer{width:min(440px,94vw)}}
