:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f6f1dc;background:#111415;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{width:100%;overflow-x:hidden;background:#0d0f10}body{margin:0;width:100%;max-width:100vw;min-width:320px;min-height:100vh;overflow-x:hidden;overscroll-behavior-x:none;background:radial-gradient(circle at 50% 0%,rgba(103,127,116,.18),transparent 42%),linear-gradient(180deg,#161b1a,#0d0f10)}#root{width:100%;max-width:100vw;overflow-x:hidden}button{font:inherit}.app{width:100%;overflow-x:clip;min-height:100vh;display:grid;place-items:center;padding:18px}.app--stageSelect{padding:0;background:radial-gradient(circle at 50% 20%,rgba(95,173,86,.22),transparent 46%),#12371f}.stageSelect{position:relative;width:min(100vw,150vh,1536px);height:min(100vh,66.67vw,1024px);aspect-ratio:3 / 2;background:url(../stage-select/stage-select-world.png) center / contain no-repeat}.stageSelectMobileHeader,.stageHotspotMobileCopy{display:none}.stageMedalBalance{position:absolute;top:1.5%;left:1.5%;z-index:3;min-width:112px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border:2px solid rgba(255,224,112,.9);border-radius:999px;background:linear-gradient(180deg,#4e3a10f0,#1a1408f5);color:#fff1a8;box-shadow:0 4px #2b19039e;font-size:12px;font-weight:900}.stageMedalBalance strong{font-size:18px;line-height:1}.stageHotspot{position:absolute;display:grid;place-items:end center;border:0;border-radius:18px;padding:0 0 10px;background:#0000;color:transparent}.stageHotspot span{opacity:0;border:2px solid rgba(255,236,156,.92);border-radius:999px;padding:5px 13px;background:linear-gradient(180deg,#fff4a8,#c57916);color:#3d2107;font-size:13px;font-weight:900;text-shadow:0 1px 0 rgba(255,255,255,.45);box-shadow:0 3px #3619039e}@media(max-width:560px)and (orientation:portrait){.app--stageSelect{min-height:100dvh;display:block;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));overflow-y:auto;background:radial-gradient(circle at 50% 12%,rgba(224,193,83,.24),transparent 34%),linear-gradient(180deg,#244f32,#0d2619 72%)}.stageSelect{width:100%;height:calc(100dvh - max(20px,env(safe-area-inset-top)) - max(20px,env(safe-area-inset-bottom)));min-height:620px;aspect-ratio:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:68px repeat(5,minmax(72px,1fr)) 58px 48px;gap:7px;padding:8px;border:3px solid #d5b75c;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#072018d1,#071611f0),url(../stage-select/stage-select-world.png) center / cover no-repeat;box-shadow:inset 0 0 0 3px #fff1a975,0 10px 28px #0000006b}.stageSelectMobileHeader{grid-column:1 / -1;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:7px 118px 7px 12px;border:2px solid rgba(247,218,124,.76);border-radius:12px;background:linear-gradient(135deg,#105642f5,#072e27f7);color:#fff4bf;box-shadow:inset 0 0 14px #70eeb11f}.stageSelectMobileHeader span{color:#8fe7c4;font-size:9px;font-weight:900;letter-spacing:.14em}.stageSelectMobileHeader h1{margin:1px 0 0;font-size:clamp(22px,7vw,29px);line-height:1;letter-spacing:.04em;text-shadow:0 2px 0 rgba(0,0,0,.52)}.stageMedalBalance{top:44px;right:20px;left:auto;min-width:96px;max-width:108px;gap:6px;padding:7px 9px;font-size:9px}.stageMedalBalance strong{min-width:0;overflow:hidden;font-size:16px;text-overflow:ellipsis}.stageHotspot{position:relative;inset:auto!important;width:auto!important;height:auto!important;min-width:0;display:block;padding:0;overflow:hidden;border:2px solid rgba(226,201,112,.74);border-radius:12px;background:radial-gradient(circle at 92% 10%,rgba(255,222,90,.2),transparent 32%),linear-gradient(145deg,#16654bf7,#07302bfa);color:#fff9d8;box-shadow:inset 0 0 0 2px #ffffff0f,0 3px #0000006b;text-align:left;touch-action:manipulation}.stageHotspot:nth-of-type(3n+1){background:radial-gradient(circle at 92% 10%,rgba(112,211,255,.2),transparent 32%),linear-gradient(145deg,#185b5df7,#072d30fa)}.stageHotspot:active{transform:translateY(2px);box-shadow:inset 0 0 0 2px #ffffff0f}.stageHotspotStatus{display:none}.stageHotspotMobileCopy{height:100%;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;align-items:center;column-gap:8px;padding:8px 9px}.stageHotspotMobileCopy b{grid-row:1 / 3;display:grid;place-items:center;width:43px;height:43px;border:2px solid rgba(255,232,144,.68);border-radius:50%;background:#04181485;color:#ffe99d;font-size:10px;line-height:1;text-align:center}.stageHotspotMobileCopy strong{align-self:end;min-width:0;overflow:hidden;color:#fff8d6;font-size:clamp(15px,4.6vw,19px);line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.stageHotspotMobileCopy small{align-self:start;margin-top:3px;color:#a9dfc9;font-size:9px;font-weight:800}.stageSelect .stageHotspot:disabled{border-color:#a4a8977a;background:linear-gradient(145deg,#36423df5,#171d1bfa);-webkit-backdrop-filter:none;backdrop-filter:none;opacity:.78}.stageSelect .stageHotspot:disabled .stageHotspotMobileCopy strong,.stageSelect .stageHotspot:disabled .stageHotspotMobileCopy small,.stageSelect .stageHotspot:disabled .stageHotspotMobileCopy b{color:#c7cbc5}.stageSelect .stageWorldButton,.stageSelect .stageItemButton{position:relative;inset:auto;width:auto;height:auto;min-width:0;border:2px solid rgba(255,226,130,.74);border-radius:12px;background:linear-gradient(180deg,#6c4914fa,#362108fa);color:#fff1b1;font-size:16px;font-weight:900;box-shadow:0 3px #0000006b;text-shadow:0 2px 0 rgba(0,0,0,.45);touch-action:manipulation}.stageSelect .stageItemButton{padding-right:42px}.stageSelect .stageItemButton small{right:7px;bottom:auto;padding:3px 6px;font-size:9px}.stageSelect .debugUnlockPanel{position:relative;inset:auto;grid-column:1 / -1;width:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 7px;border-width:1px;box-shadow:none}.stageSelect .debugUnlockPanel input{height:34px;padding:5px 8px}.stageSelect .debugUnlockPanel span{min-width:50px;font-size:9px}}.stageHotspot--unlocked{cursor:pointer}.stageHotspot--unlocked:hover,.stageHotspot--unlocked:focus-visible{outline:4px solid rgba(255,230,78,.95);outline-offset:-4px;background:#ffe45c1f}.stageHotspot--unlocked:hover span,.stageHotspot--unlocked:focus-visible span{opacity:1}.stageHotspot--settings span{border-color:#9de7ffeb;background:linear-gradient(180deg,#c5f5ff,#2b8ec6);color:#08263a}.stageHotspot:disabled{cursor:not-allowed;background:#090f0e8a;-webkit-backdrop-filter:grayscale(1) brightness(.48);backdrop-filter:grayscale(1) brightness(.48)}.stageHotspot:disabled span{opacity:1;border-color:#cdd5cfc7;background:linear-gradient(180deg,#747c78,#343a37);color:#f1f3f2;box-shadow:0 3px #0b0f0dad}.stageWorldButton,.stageItemButton{position:absolute;top:86.3%;height:9.7%;display:grid;place-items:center;border:0;border-radius:18px;background:#ffdd7114;color:transparent;cursor:pointer}.stageWorldButton{left:19.5%;width:25.9%}.stageItemButton{left:45.7%;width:31.4%}.stageWorldButton:hover,.stageWorldButton:focus-visible,.stageItemButton:hover,.stageItemButton:focus-visible{outline:4px solid rgba(255,230,78,.95);outline-offset:-4px;background:#ffe45c29}.stageItemButton small{position:absolute;right:12%;bottom:10%;border:2px solid rgba(255,236,156,.92);border-radius:999px;padding:4px 10px;background:linear-gradient(180deg,#fff4a8,#c57916);color:#3d2107;font-size:12px;font-weight:900;box-shadow:0 3px #3619039e}.app--worldMap{padding:0;background:#07131b}.worldMap{position:relative;width:min(100vw,calc(100vh * 1.3333),1448px);height:min(100vh,75vw,1086px);aspect-ratio:4 / 3;overflow:hidden;background:#07131b}.worldMapViewport,.worldMapCanvas{position:absolute;inset:0}.worldMapMobileStageList{display:none}.worldMapImage{display:block;width:100%;height:100%;object-fit:contain}.worldMapStageColors{position:absolute;z-index:1;inset:0;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.worldMapStageColors--completedShrines{filter:hue-rotate(165deg) saturate(1.35) brightness(1.02)}.worldMapStageColors--lockedCastles{filter:grayscale(1) saturate(0) contrast(1.04)}.worldStageHotspot{position:absolute;z-index:2;transform:translate(-50%,-50%);border:0;border-radius:50%;padding:0;background:transparent;color:transparent;cursor:pointer;transition:filter .16s ease,background .16s ease,box-shadow .16s ease}.worldStageHotspot--castle{width:12%;height:15%}.worldStageHotspot--shrine{width:6.2%;height:9.4%}.worldStageHotspot span{position:absolute;left:50%;bottom:-7px;transform:translate(-50%,100%);min-width:max-content;border:1px solid rgba(255,238,170,.95);border-radius:999px;padding:3px 7px;background:#131b22f0;color:#fff2b8;font-size:clamp(9px,1vw,14px);font-weight:900;opacity:0;pointer-events:none}.worldStageHotspot i{position:absolute;left:50%;top:42%;width:18%;aspect-ratio:1;transform:translate(-50%,-50%) rotate(45deg);border:2px solid rgba(255,255,224,.96);border-radius:22% 48%;background:linear-gradient(135deg,#fffbd0,#ffe437 38%,#f39b00);box-shadow:0 0 8px #fff7a4,0 0 18px #ffc400;opacity:0;pointer-events:none}.worldStageHotspot--castle.worldStageHotspot--unlocked i{opacity:1}.worldStageHotspot--unlocked{background:transparent}.worldStageHotspot--castle.worldStageHotspot--unlocked{background:radial-gradient(ellipse,rgba(255,226,56,.16),transparent 68%);box-shadow:0 0 13px #ffcd2375}.worldStageHotspot--completed,.worldStageHotspot--base.worldStageHotspot--completed{background:transparent}.worldStageHotspot--locked{cursor:default}.worldStageHotspot--base.worldStageHotspot--completed span{opacity:1}.worldStageHotspot:hover,.worldStageHotspot:focus-visible{outline:3px solid rgba(80,210,255,.96);outline-offset:2px;filter:brightness(1.18)}.worldStageHotspot--locked:hover{outline:none;background:transparent}.worldStageHotspot--debug-access{cursor:pointer}.worldStageHotspot--locked.worldStageHotspot--debug-access:hover,.worldStageHotspot--locked.worldStageHotspot--debug-access:focus-visible{outline:3px solid rgba(105,235,130,.96);outline-offset:2px;filter:brightness(1.14)}.worldStageHotspot--settings:hover,.worldStageHotspot--settings:focus-visible{outline-color:#ffd84bfa}.worldStageHotspot:hover span,.worldStageHotspot:focus-visible span{opacity:1}.worldCompleteBanner{position:absolute;z-index:4;left:50%;top:5%;transform:translate(-50%);display:grid;justify-items:center;min-width:min(62%,560px);border:3px solid #ffe982;border-radius:18px;padding:10px 24px;background:linear-gradient(180deg,#1869bef7,#052c70fa);color:#fff8ce;box-shadow:0 0 24px #3ed0ffe0,0 5px #041843bf;text-align:center;pointer-events:none}.worldCompleteBanner strong{font-size:clamp(20px,3vw,42px);letter-spacing:.08em}.worldCompleteBanner span{font-size:clamp(10px,1.2vw,16px);font-weight:800}.worldMapBackButton{position:absolute;left:2.2%;top:2.2%;min-height:42px;border:2px solid rgba(255,228,139,.9);border-radius:12px;padding:9px 16px;background:linear-gradient(180deg,#513a15f5,#221608fa);color:#fff0b2;box-shadow:0 4px #190e03b3;cursor:pointer;font-weight:900}.worldMapBackButton:hover,.worldMapBackButton:focus-visible{outline:3px solid rgba(104,209,255,.95);outline-offset:2px;filter:brightness(1.15)}@media(max-width:720px)and (orientation:portrait){.app--worldMap{min-height:100dvh;align-items:start;overflow:hidden}.worldMap{width:100vw;height:100dvh;aspect-ratio:auto;display:grid;grid-template-rows:minmax(300px,58dvh) minmax(0,1fr);overflow:hidden}.worldMapViewport{position:relative;inset:auto;width:100%;height:100%;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;scrollbar-width:none}.worldMapViewport::-webkit-scrollbar{display:none}.worldMapCanvas{position:relative;inset:auto;width:max(176vw,720px);height:auto;aspect-ratio:4 / 3}.worldMapImage,.worldMapStageColors{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.worldStageHotspot:not(:disabled) span,.worldStageHotspot--base.worldStageHotspot--completed span{opacity:1;bottom:-3px;padding:2px 5px;font-size:10px}.worldMapMobileStageList{position:relative;z-index:5;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:7px;padding:10px 10px max(12px,env(safe-area-inset-bottom));border-top:2px solid rgba(255,228,139,.75);background:linear-gradient(180deg,#14231f,#071310);overflow:hidden}.worldMapMobileStageList h2{margin:0;padding-left:136px;color:#fff1bd;font-size:15px}.worldMapMobileStageList>div{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;align-content:start;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scroll-padding-bottom:max(16px,env(safe-area-inset-bottom));padding-bottom:max(16px,env(safe-area-inset-bottom))}.worldMapMobileStageButton{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:6px;border:2px solid #8b774c;border-radius:9px;padding:7px 9px;background:linear-gradient(180deg,#33423a,#17241f);color:#fff4ce;text-align:left;touch-action:manipulation}.worldMapMobileStageButton strong{font-size:14px}.worldMapMobileStageButton span{color:#c7d3c6;font-size:9px;white-space:nowrap}.worldMapMobileStageButton--completed{border-color:#d8bd62;background:linear-gradient(180deg,#4b4b2c,#242815)}.worldMapBackButton{z-index:8;left:10px;top:calc(58dvh + 8px);min-height:40px;padding:7px 10px;font-size:10px}.worldMap .worldDebugUnlockPanel{display:none}}@media(max-width:560px)and (orientation:portrait){body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary{display:block}body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .statusEffects{display:none}body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .equipmentSlots{position:fixed;z-index:101;top:max(6px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));width:auto;max-width:calc(100vw - 112px - env(safe-area-inset-left) - env(safe-area-inset-right));height:42px;display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:5px;overflow-x:auto;overflow-y:visible;scrollbar-width:none}body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .equipmentSlots::-webkit-scrollbar{display:none}body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .equipmentSlot,body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .equipmentSlot summary{flex:0 0 42px;width:42px;height:42px}body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .equipmentSlot summary{padding:2px;border:2px solid #d5bd76;border-radius:9px;background:linear-gradient(180deg,#315248,#17342e);touch-action:manipulation}body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .equipmentSlotIcon{width:38px;height:38px}body:has(.gameShell:not(.gameShell--replay)) .headerAuxiliary .equipmentSlotTooltip{display:none}body:has(.gameShell:not(.gameShell--replay)) .equipmentExpandedOverlay{position:fixed;z-index:130;inset:0;width:100vw;height:100dvh;display:grid;place-items:center;padding:max(64px,calc(env(safe-area-inset-top) + 56px)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));border:0;background:#030807d1;color:#fff4ca;cursor:pointer;touch-action:manipulation}body:has(.gameShell:not(.gameShell--replay)) .equipmentExpandedPanel{width:min(88vw,350px);max-height:calc(100dvh - 100px);display:grid;justify-items:center;gap:8px;overflow:hidden;padding:12px;border:3px solid #d5bd76;border-radius:14px;background:linear-gradient(180deg,#26332e,#101715);box-shadow:0 18px 48px #000000ad;text-align:center}body:has(.gameShell:not(.gameShell--replay)) .equipmentExpandedPanel img{width:auto;max-width:100%;height:min(46dvh,390px);min-height:0;object-fit:contain;border-radius:7px;image-rendering:pixelated}body:has(.gameShell:not(.gameShell--replay)) .equipmentExpandedPanel .equipmentSlotLabel{padding:3px 10px;border-radius:999px;background:#174d43;color:#9de7ff;font-size:12px}body:has(.gameShell:not(.gameShell--replay)) .equipmentExpandedPanel strong{color:#fff4ca;font-size:18px}body:has(.gameShell:not(.gameShell--replay)) .equipmentExpandedPanel small{color:#d8deca;font-size:13px;line-height:1.45}body:has(.gameShell:not(.gameShell--replay)) .equipmentExpandedPanel em{color:#ffe28e;font-size:11px;font-style:normal}}@media(max-width:560px)and (orientation:portrait){body:has(.gameShell:not(.gameShell--replay)) #root{--mobile-play-header-height: calc(max(6px, env(safe-area-inset-top)) + 50px) }body:has(.gameShell:not(.gameShell--replay)) #root:before{content:"";position:fixed;z-index:90;top:0;right:0;left:0;height:var(--mobile-play-header-height);border-bottom:2px solid rgba(213,183,92,.72);background:linear-gradient(180deg,#101f1bfa,#071411f5);box-shadow:0 4px 12px #00000061;pointer-events:none}body:has(.gameShell:not(.gameShell--replay)) .app:has(.gameShell:not(.gameShell--replay)){height:auto;min-height:100dvh;padding-top:var(--mobile-play-header-height);overflow-y:auto}body:has(.gameShell:not(.gameShell--replay)) .gameShell:not(.gameShell--replay){height:auto;min-height:calc(100dvh - var(--mobile-play-header-height) - 2px)}body:has(.gameShell:not(.gameShell--replay)) .topPanel>.audioSettingsControl{position:fixed;z-index:100;top:max(6px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right))}body:has(.gameShell:not(.gameShell--replay)) .topPanel>.audioSettingsControl>summary{min-width:86px;min-height:42px;display:grid;place-items:center;padding:6px 10px;border:2px solid #d5bd76;border-radius:12px;background:linear-gradient(180deg,#225f58,#0c403f);color:#fff1bd;font-size:15px;line-height:1}}@media(max-width:560px)and (orientation:portrait){body:has(.app--stageSelect) #root,body:has(.app--worldMap) #root{--mobile-common-header-height: calc(max(8px, env(safe-area-inset-top)) + 52px) }body:has(.app--stageSelect) #root:before,body:has(.app--worldMap) #root:before{content:"";position:fixed;z-index:90;top:0;right:0;left:0;height:var(--mobile-common-header-height);border-bottom:2px solid rgba(213,183,92,.72);background:linear-gradient(180deg,#101f1bfa,#071411f5);box-shadow:0 4px 12px #00000061;pointer-events:none}body:has(.app--stageSelect)>#root>.audioSettingsControl,body:has(.app--worldMap)>#root>.audioSettingsControl{position:fixed;z-index:100;top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right))}body:has(.app--stageSelect)>#root>.audioSettingsControl>summary,body:has(.app--worldMap)>#root>.audioSettingsControl>summary{min-width:86px;min-height:44px;display:grid;place-items:center;padding:6px 10px;border:2px solid #d5bd76;border-radius:12px;background:linear-gradient(180deg,#225f58,#0c403f);color:#fff1bd;font-size:15px;line-height:1}body:has(.app--stageSelect) .app--stageSelect,body:has(.app--worldMap) .app--worldMap{padding-top:var(--mobile-common-header-height)}body:has(.app--worldMap) .worldMap{height:calc(100dvh - var(--mobile-common-header-height))}body:has(.app--stageSelect) .stageDetailOverlay,body:has(.app--stageSelect) .casinoOverlay,body:has(.app--stageSelect) .collectionOverlay{padding-top:calc(var(--mobile-common-header-height) + 8px)}}.debugUnlockPanel{position:absolute;right:1.4%;bottom:1.4%;width:min(22%,260px);display:grid;gap:5px;padding:8px;border:2px solid rgba(255,231,150,.58);border-radius:9px;background:linear-gradient(180deg,#2a1f0cd1,#0d110fe0),#141817;box-shadow:0 6px #230f0280,inset 0 0 0 2px #ffffff14}.stageDebugDetails{display:contents}.stageDebugDetails>summary{display:none}.stageDebugDetails:not([open])>.debugUnlockPanel{display:grid}.debugUnlockPanel input{min-width:0;border:1px solid rgba(255,236,184,.48);border-radius:5px;padding:6px 8px;background:#050808db;color:#fff4ca;font-size:12px;font-weight:800}.debugUnlockPanel span{color:#d8deca;font-size:11px;font-weight:900;text-align:center}.debugUnlockPanel--active{border-color:#5cdc72eb;box-shadow:0 6px #0c310f8a,0 0 18px #5cdc723d,inset 0 0 0 2px #ffffff1a}.debugUnlockPanel--active span{color:#9dff9f}.worldDebugUnlockPanel{z-index:5;right:auto;left:1.4%}.carryInPanel{position:absolute;left:1.4%;bottom:1.4%;width:min(48%,470px);display:grid;gap:6px;padding:9px;border:2px solid rgba(255,231,150,.86);border-radius:10px;background:linear-gradient(180deg,#3a250ce0,#1d1208e6),#2a1a08;box-shadow:0 7px #230f029e,inset 0 0 0 2px #ffffff1f}.carryInHeader{display:flex;justify-content:space-between;gap:8px;color:#fff2bf;font-size:12px;font-weight:900;text-shadow:0 2px 0 #2a1204}.carryInSlots,.collectionCarrySlots{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}.carryInSlot{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1;border:1px solid rgba(255,236,184,.42);border-radius:5px;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 44%),#070d0cd6;overflow:hidden;cursor:pointer}.carryInSlot--filled{border-color:#97d568eb;background:#142212e6}.carryInSlot span{position:absolute;left:1px;top:1px;z-index:1;display:grid;place-items:center;width:14px;height:14px;border-radius:3px;background:#040707d1;color:#f7edbe;font-size:9px;font-weight:900}.carryInSlot img{width:132%;height:132%;max-width:none;object-fit:contain;image-rendering:pixelated}.stageCarryInArtwork{position:relative;display:block;aspect-ratio:var(--art-crop-ratio, 1);overflow:hidden;pointer-events:none;transform:scale(var(--art-display-scale, 1))}.stageCarryInArtwork.inventorySlotArtwork--portrait{width:auto;height:100%}.stageCarryInArtwork.inventorySlotArtwork--landscape{width:100%;height:auto}.carryInSlot .stageCarryInArtwork img{position:absolute;left:var(--art-image-left, -4%);top:var(--art-image-top, -30%);width:var(--art-image-width, 185%);height:auto;max-width:none;object-fit:contain}.carryInClearButton{justify-self:end;border:1px solid rgba(255,236,184,.48);border-radius:5px;padding:4px 8px;background:#0c100f9e;color:#f8edbd;cursor:pointer;font-size:11px;font-weight:900}.collectionOverlay{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:18px;background:#050807b8}.casinoOverlay{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:#030408d6}.casinoPanel{width:min(97vw,1080px);max-height:min(96vh,940px);overflow:auto;display:grid;gap:10px;padding:14px;border:2px solid #ffd75e;border-radius:14px;background:radial-gradient(circle at 50% 0%,rgba(97,63,174,.42),transparent 42%),linear-gradient(180deg,#25203d,#100d1d 62%,#090811);color:#f8f0d0;box-shadow:0 24px 70px #000000b8,inset 0 0 28px #ffd3521a}.casinoHeader{display:flex;align-items:start;justify-content:space-between;gap:16px}.casinoHeader div{min-width:0}.casinoHeader span{color:#d2b3ff;font-size:10px;font-weight:900;letter-spacing:.16em}.casinoHeader h2{margin:2px 0 4px;color:#ffe27c;font-size:clamp(22px,4vw,34px);line-height:1;text-shadow:0 3px 0 #4b2e08,0 0 16px rgba(255,216,82,.34)}.casinoHeader p,.casinoResults p{margin:0;color:#cec7dc;font-size:12px}.casinoHeader button,.casinoConfirm button{flex:0 0 auto;border:1px solid #a58bc9;border-radius:7px;padding:8px 12px;background:linear-gradient(180deg,#4a3b65,#241c35);color:#fff5d1;cursor:pointer;font-weight:900}.casinoHeader button:disabled{opacity:.45;cursor:wait}.casinoBalance{display:flex;align-items:baseline;gap:10px;padding:10px 14px;border:1px solid rgba(255,218,98,.42);border-radius:9px;background:#06050db3}.casinoBalance span,.casinoBalance small{color:#c6bdd5;font-size:11px;font-weight:900}.casinoBalance strong{color:#ffe16d;font-size:24px;font-variant-numeric:tabular-nums;min-width:5ch;transition:color .12s ease,text-shadow .12s ease,transform .12s ease}.casinoBalance strong.is-counting-up{color:#8dff9d;text-shadow:0 0 12px rgba(87,255,111,.8);transform:scale(1.08)}.casinoBalance strong.is-counting-down{color:#ffb0a0;text-shadow:0 0 10px rgba(255,89,63,.72);transform:scale(.96)}.casinoBalance small{margin-left:auto}.casinoControlBar{display:grid;grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr);align-items:stretch;gap:10px}.casinoControlBar .casinoBalance{min-width:0}.casinoLocked{margin:0;padding:18px;border:1px solid rgba(255,215,94,.36);border-radius:9px;background:#1e1628c7;color:#ffe7a0;text-align:center;font-weight:900}.casinoBetControls{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(150px,.7fr);align-items:stretch;gap:9px}.casinoBetControls>span{align-self:center;color:#ffe16d;font-size:17px;font-weight:1000}.casinoBetControls>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.casinoBetControls button{border:2px solid #74638b;border-radius:8px;background:linear-gradient(180deg,#352b47,#1d1728);color:#e7dff2;cursor:pointer;font-weight:1000}.casinoBetControls .casinoBetButton--selected{border-color:#ffe06a;background:linear-gradient(180deg,#886021,#3c270a);color:#fff2a9;box-shadow:0 0 12px #ffd74c57,inset 0 0 9px #ffefa029}.casinoBetControls button:disabled{opacity:.45;cursor:wait}.casinoSpinButton{display:grid;place-content:center;gap:2px;min-height:56px;border-color:#ffca3d!important;background:linear-gradient(180deg,#b7342a,#5d130f)!important;color:#fff2a9!important;box-shadow:0 0 14px #ff642d47,inset 0 0 12px #ffe78526}.casinoSpinButton strong{font-size:14px}.casinoSpinButton span{font-size:10px}.casinoConfirm{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px;border:1px solid #ffd75e;border-radius:8px;background:#402a08c7}.casinoConfirm span{margin-right:auto;font-size:12px;font-weight:900}.casinoExchangePanel{border:1px solid rgba(114,226,175,.5);border-radius:10px;background:#081c18c2;overflow:hidden}.casinoExchangePanel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;color:#baffd8;cursor:pointer;font-weight:1000;list-style:none}.casinoExchangePanel>summary::-webkit-details-marker{display:none}.casinoExchangePanel>summary strong{padding:4px 10px;border:1px solid rgba(116,255,185,.48);border-radius:999px;background:#1f64486b;color:#ecff9f;font-variant-numeric:tabular-nums}.casinoExchangeLead,.casinoExchangeRates,.casinoExchangeMessage{margin:0 12px 10px;color:#c9ddd1;font-size:11px}.casinoExchangeBody{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.8fr);gap:10px;padding:0 12px 10px}.casinoRecycleSection,.casinoExchangeOffers{min-width:0;padding:11px;border:1px solid rgba(179,239,209,.23);border-radius:8px;background:#050e0e94}.casinoRecycleSection{display:grid;align-content:start;gap:9px}.casinoRecycleSection header,.casinoExchangeOffers>header{display:flex;align-items:center;justify-content:space-between;gap:9px}.casinoRecycleSection h3,.casinoExchangeOffers h3{margin:0;color:#eaffbf;font-size:15px}.casinoRecycleSection header span,.casinoExchangeOffers header span{color:#9eb9aa;font-size:9px}.casinoRecycleSection label{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:7px;color:#dce9df;font-size:11px;font-weight:900}.casinoRecycleSection select,.casinoRecycleSection input{min-width:0;width:100%;padding:7px;border:1px solid #567366;border-radius:5px;background:#101c19;color:#f5f2d6;font-weight:800}.casinoRecycleSummary{display:flex;align-items:center;justify-content:space-between;padding:8px;border-radius:6px;background:#63d0971f;font-size:11px}.casinoRecycleSummary strong{color:#9dff9f;font-size:17px}.casinoRecycleSection button,.casinoExchangeOffers button{border:1px solid #668a77;border-radius:6px;padding:7px 9px;background:linear-gradient(180deg,#315744,#183125);color:#efffd7;cursor:pointer;font-size:10px;font-weight:900}.casinoRecycleSection button:disabled,.casinoExchangeOffers button:disabled{opacity:.4;cursor:not-allowed}.casinoRecycleConfirm{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:6px;padding:7px;border:1px solid rgba(255,211,100,.5);border-radius:6px;background:#50360a66;font-size:10px}.casinoExchangeOffers{display:grid;gap:9px}.casinoExchangeOffers>header>div{min-width:0}.casinoExchangeOfferGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.casinoExchangeOffer{display:grid;align-content:start;gap:4px;min-width:0;padding:7px;border:1px solid #5d6570;border-radius:7px;background:#0e1018d1;text-align:center}.casinoExchangeOffer--rare{border-color:#4c9ed6}.casinoExchangeOffer--equipment{border-color:#a36bd7}.casinoExchangeOffer--special{border-color:#d8b745}.casinoExchangeOffer.is-locked{box-shadow:inset 0 0 0 2px #75ffae,0 0 12px #53ff9638}.casinoExchangeOffer.is-sold-out{border-color:#696969;background:#181818eb}.casinoExchangeOffer.is-sold-out img{filter:grayscale(1) brightness(.48)}.casinoExchangeOffer.is-sold-out>span,.casinoExchangeOffer.is-sold-out b{color:#ff8c8c}.casinoExchangeOffer>span{overflow:hidden;color:#b8c1cf;font-size:8px;font-weight:1000;text-overflow:ellipsis;white-space:nowrap}.casinoExchangeOffer img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:4px;background:#080b0b}.casinoExchangeOffer strong{min-height:2.5em;overflow:hidden;color:#f4efd3;font-size:9px;line-height:1.25}.casinoExchangeOffer small{color:#aaa8b6;font-size:8px}.casinoExchangeOffer b{color:#eaff85;font-size:12px}.casinoExchangeOffer>div{display:grid;grid-template-columns:1fr 1fr;gap:4px}.casinoExchangeOffer button.is-locked{border-color:#6cff9d;background:#285c3e}.casinoExchangeEmpty{margin:0;padding:12px;color:#aabbb1;font-size:11px;text-align:center}.casinoExchangeMessage{padding:7px 10px;border-radius:6px;background:#70e6a324;color:#c7ffd6;font-weight:900}.casinoMachine{--casino-win-color: #b9b3c6;position:relative;display:grid;gap:10px;width:min(100%,820px);margin:0 auto;padding:15px 18px;overflow:hidden;border:4px solid #d8a93c;border-radius:18px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent),linear-gradient(180deg,#79261f,#37100f 48%,#19090d);box-shadow:0 8px #170708,0 0 24px color-mix(in srgb,var(--casino-win-color) 35%,transparent),inset 0 0 22px #ffd55433}.casinoMachine:before,.casinoMachine:after{content:"";position:absolute;inset:5px;pointer-events:none;border:2px dotted rgba(255,225,126,.65);border-radius:12px}.casinoMachine--rare{--casino-win-color: #63bfff}.casinoMachine--equipment{--casino-win-color: #ce7cff}.casinoMachine--special{--casino-win-color: #ffd845}.casinoMachine--won{animation:casinoMachineWin .62s ease-out both}.casinoMachine--special.casinoMachine--won{animation:casinoMachineJackpot .85s ease-out both}.casinoMachineTop{z-index:1;display:flex;align-items:center;justify-content:center;gap:12px;color:#ffe68b;font-size:10px;font-weight:1000;letter-spacing:.12em;text-shadow:0 2px 0 #431607}.casinoMachineTop strong{font-size:27px;letter-spacing:.08em}.casinoReelArea{z-index:1;display:grid;grid-template-columns:24px minmax(0,1fr) 24px;align-items:stretch;gap:5px}.casinoLineNumbers{display:grid;grid-template-rows:repeat(5,minmax(0,1fr));align-items:center;gap:2px}.casinoLineNumbers span{display:grid;place-items:center;aspect-ratio:1;border:1px solid #756781;border-radius:50%;background:#19121f;color:#afa4bc;font-size:9px;font-weight:1000}.casinoLineNumbers span.is-winning{border-color:#ffe05f;background:#a52e1b;color:#fff4ad;box-shadow:0 0 9px #ffb02d}.casinoReels{z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:10px;border:3px solid #d4a64b;border-radius:11px;background:#09070c;box-shadow:inset 0 0 16px #000}.casinoReel{position:relative;height:276px;overflow:hidden;border:3px solid #4f435a;border-radius:10px;background:linear-gradient(180deg,#ded8e6,#fff 48%,#c2bacb);color:#2d1739;box-shadow:inset 0 10px 14px #0003,inset 0 -10px 14px #0003}.casinoReel--stopped{border-color:var(--casino-win-color);box-shadow:0 0 16px color-mix(in srgb,var(--casino-win-color) 70%,transparent),inset 0 0 20px #ffffffe6;animation:casinoReelSettle .18s ease-out}.casinoReel--spinning{border-color:#776783;box-shadow:inset 0 0 22px #00000085}.casinoReel--spinning .casinoReelColumn{filter:blur(1.15px) saturate(1.16);will-change:filter}.casinoReelColumn{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));height:100%}.casinoReelColumn span{display:grid;place-items:center;height:90px;font-size:54px;line-height:1}.casinoReelColumn span+span{border-top:1px solid rgba(64,45,72,.28)}.casinoSlotSymbol--bubble{color:#4e9ee8}.casinoSlotSymbol--potion{color:#55bd5f}.casinoSlotSymbol--sword{color:#dc6c38}.casinoSlotSymbol--shield{color:#4f72b6}.casinoSlotSymbol--gem{color:#b64ae3}.casinoSlotSymbol--seven{color:#d91e25;font-family:Georgia,serif;font-weight:1000}.casinoSlotSymbol--card{background:transparent}.casinoSlotSymbol img{width:64px;height:82px;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(0,0,0,.48));image-rendering:auto}.casinoSlotSymbol:not(.casinoSlotSymbol--card) img{width:82px;height:82px}.casinoMachineMessage{z-index:1;min-height:25px;color:var(--casino-win-color);font-size:22px;font-weight:1000;letter-spacing:.06em;text-align:center;text-shadow:0 2px 0 #17050b,0 0 12px currentColor}.casinoPaylines{z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.casinoPaylines span{padding:4px 2px;border:1px solid #5e506a;border-radius:5px;background:#07050cb8;color:#a69cad;font-size:8px;font-weight:900;text-align:center}.casinoPaylines span.is-winning{border-color:#ffce47;background:#8f2618;color:#fff4a8;box-shadow:0 0 8px #ffbe2d94}.casinoWinOverlay{position:absolute;inset:46px 26px 30px;z-index:8;display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-content:stretch;gap:12px;padding:18px;overflow:hidden;border:3px solid #ffe067;border-radius:14px;background:radial-gradient(circle at 50% 0%,rgba(129,70,197,.62),transparent 48%),#090611f5;box-shadow:0 0 28px #ffce3fb8,inset 0 0 24px #ffdf6b1f;animation:casinoCardReveal .42s cubic-bezier(.2,1.4,.4,1) both}.casinoWinOverlayHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.casinoWinOverlayHeader span{color:#e5c4ff;font-size:9px;font-weight:1000;letter-spacing:.14em}.casinoWinOverlayHeader h3{margin:0;color:#ffe376;font-size:28px;text-shadow:0 2px 0 #5f2d08,0 0 12px rgba(255,213,70,.72)}.casinoWinOverlayHeader button{border:1px solid #b392cf;border-radius:6px;padding:6px 9px;background:#302140;color:#fff1c2;cursor:pointer;font-size:10px;font-weight:900}.casinoWinOverlayHeader button:disabled{opacity:.42;cursor:wait}.casinoWinCards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:10px;max-width:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.casinoWinOverlay .casinoResult img{max-height:170px}.casinoResult--rolling{border-color:#9b72c3;box-shadow:inset 0 0 18px #a065dd38}.casinoResult--rolling img{filter:blur(1.1px) brightness(1.2);animation:casinoCardRoulette .13s linear infinite}.casinoResult--revealed{animation:casinoCardStop .28s ease-out both}.casinoWinOverlay>p{margin:0;color:#d7ccdf;font-size:10px;text-align:center}@keyframes casinoCardReveal{0%{opacity:0;transform:scale(.78) translateY(12px);filter:brightness(2)}to{opacity:1;transform:scale(1) translateY(0);filter:brightness(1)}}@keyframes casinoReelSettle{0%{filter:blur(1px) brightness(1.16)}to{filter:blur(0) brightness(1)}}@keyframes casinoCardRoulette{0%{opacity:.72;transform:scale(.96)}to{opacity:1;transform:scale(1.02)}}@keyframes casinoCardStop{0%{opacity:.7;transform:scale(.86);filter:brightness(1.8)}to{opacity:1;transform:scale(1);filter:brightness(1)}}@keyframes casinoMachineWin{0%{transform:scale(.98);filter:brightness(.8)}48%{transform:scale(1.025);filter:brightness(1.55)}to{transform:scale(1);filter:brightness(1)}}@keyframes casinoMachineJackpot{0%{transform:scale(.96);filter:brightness(.7)}35%{transform:scale(1.04);filter:brightness(2)}58%{transform:scale(.99) rotate(-.4deg)}76%{transform:scale(1.015) rotate(.4deg)}to{transform:scale(1) rotate(0);filter:brightness(1.08)}}.casinoResults{display:grid;gap:10px;padding:12px;border:1px solid rgba(255,216,92,.54);border-radius:10px;background:#080610bd}.casinoResults h3{margin:0;color:#ffe27c}.casinoResults>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.casinoResult{position:relative;min-width:0;display:grid;gap:5px;padding:7px;border:1px solid #726985;border-radius:7px;background:#151221;text-align:center}.casinoResult--rare{border-color:#68bfff;box-shadow:inset 0 0 14px #3fa2ff26}.casinoResult--equipment{border-color:#c89cff;box-shadow:inset 0 0 14px #b570ff2e}.casinoResult--special{border-color:#ffdb54;box-shadow:0 0 12px #ffd2423d,inset 0 0 14px #ffc73033}.casinoResult span{color:#cabde0;font-size:9px;font-weight:900}.casinoResult img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:4px;background:#08070d}.casinoResult strong{min-width:0;overflow:hidden;color:#fff3c4;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.casinoPrizeList{border-top:1px solid rgba(203,179,239,.2);padding-top:10px;color:#c8bdd8;font-size:11px}.casinoPrizeList summary{cursor:pointer;color:#e2d5f3;font-weight:900}.casinoPrizeList p{margin:8px 0 0;line-height:1.5}.casinoPrizeList strong{display:inline-block;min-width:72px;color:#ffe079}.casinoProbabilitySettings{padding:9px 11px;border:1px solid rgba(255,218,98,.5);border-radius:9px;background:#080610d6;color:#ded6e9}.casinoProbabilitySettings summary{cursor:pointer;color:#ffe079;font-size:13px;font-weight:1000}.casinoPayoutRateSetting{display:grid;grid-template-columns:minmax(190px,1fr) minmax(220px,.85fr) auto;align-items:center;gap:8px;margin-top:9px;padding:9px;border:1px solid rgba(255,218,98,.38);border-radius:7px;background:#402a0861}.casinoPayoutRateSetting>strong{color:#eee4fa;font-size:11px}.casinoPayoutRateSetting>strong b{color:#ffe079;font-size:16px}.casinoPayoutRateSetting>small{grid-column:1 / -1;color:#bfb3cf;font-size:9px}.casinoProbabilitySettingsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:9px}.casinoProbabilitySettings fieldset{min-width:0;display:grid;gap:5px;margin:0;padding:9px;border:1px solid rgba(180,151,226,.32);border-radius:7px}.casinoProbabilitySettings legend{padding:0 5px;color:#f4e7ff;font-size:11px;font-weight:900}.casinoProbabilitySettings label{display:grid;grid-template-columns:minmax(0,1fr) 86px 16px;align-items:center;gap:5px;font-size:11px}.casinoProbabilitySettings label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.casinoProbabilitySettings input{min-width:0;width:100%;border:1px solid #756687;border-radius:5px;padding:5px 6px;background:#151020;color:#fff3bf;text-align:right}.casinoProbabilitySettings label b{color:#bfb3cf;font-size:10px}.casinoProbabilitySettings fieldset p{margin:3px 0 0;color:#b8e7ba;font-size:10px;text-align:right}.casinoProbabilitySettings fieldset p.is-invalid{color:#ff8d86}.casinoIndividualCardWeights{margin-top:10px;padding:9px;border:1px solid rgba(180,151,226,.32);border-radius:7px}.casinoIndividualCardWeights>header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:7px}.casinoIndividualCardWeights>header strong{color:#f4e7ff;font-size:11px}.casinoIndividualCardWeights>header span{color:#bfb3cf;font-size:9px}.casinoIndividualCardWeights>div{max-height:320px;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-right:4px}.casinoIndividualCardWeights>div>section{align-content:start;display:grid;gap:4px;padding:7px;border-radius:6px;background:#1e172bb8}.casinoIndividualCardWeights h4{margin:0 0 2px;color:#ffe079;font-size:10px}.casinoIndividualCardWeights label{grid-template-columns:28px minmax(0,1fr) 64px;min-height:34px;padding:2px 3px;border-bottom:1px solid rgba(180,151,226,.13)}.casinoIndividualCardWeights label img{width:24px;height:30px;object-fit:contain}.casinoIndividualCardWeights label input{padding:4px 5px}.casinoIndividualCardWeights>p{margin:7px 0 0;color:#ff8d86;font-size:10px}.casinoProbabilitySettings footer{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:9px}.casinoProbabilitySettings footer span{margin-right:auto;color:#b8e7ba;font-size:11px;font-weight:900}.casinoProbabilitySettings button{border:1px solid #9d83bd;border-radius:6px;padding:6px 9px;background:linear-gradient(180deg,#47375d,#241a31);color:#fff1bd;cursor:pointer;font-size:10px;font-weight:900}.casinoProbabilitySettings button:disabled{opacity:.42;cursor:not-allowed}.casinoPayoutList{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.casinoPayoutList span{display:flex;align-items:center;justify-content:center;gap:4px;padding:5px;border:1px solid rgba(203,179,239,.2);border-radius:5px;background:#07050c8c;color:#eee4fa;text-align:center}.casinoPayoutList img{width:20px;height:26px;object-fit:contain}.stageDetailOverlay{position:fixed;inset:0;z-index:21;display:grid;place-items:center;padding:18px;background:#050807c2}.stageDetailPanel{width:min(96vw,1120px);max-height:min(92vh,900px);display:grid;gap:12px;padding:16px;border:2px solid rgba(255,231,150,.9);border-radius:10px;background:linear-gradient(180deg,rgba(74,52,18,.24),transparent 28%),linear-gradient(180deg,#26352f,#121817),#151c1a;box-shadow:0 18px 52px #0000009e,inset 0 0 0 2px #ffffff14;overflow:auto}.stageDetailHeader{display:flex;align-items:center;justify-content:space-between;gap:14px}.stageDetailHeader span{color:#9de7ff;font-size:12px;font-weight:900}.stageDetailHeader h2{margin:0;color:#fff4ca;font-size:30px;line-height:1.05;text-shadow:0 2px 0 #0a0d0d}.stageDetailHeader button,.stageDetailActions button,.stageCarryCard button{border:1px solid #7a876d;border-radius:5px;padding:7px 10px;background:linear-gradient(180deg,#354333,#1d2923);color:#f4edc6;cursor:pointer;font-size:12px;font-weight:900}.stageDetailActions button:last-child{border-color:#ffe796db;background:linear-gradient(180deg,#85631f,#3d260a);color:#fff3bd}.stageCarryCard button:disabled{opacity:.42;cursor:not-allowed}.stageDetailGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}.stageDetailStat{display:grid;gap:4px;padding:8px;border:1px solid rgba(255,236,184,.26);border-radius:6px;background:#080d0c7a}.stageDetailStat span{color:#cdd6bf;font-size:11px;font-weight:900}.stageDetailStat strong{color:#fff4ca;font-size:16px;line-height:1.1}.stageDetailComment{margin:0;padding:10px;border:1px solid rgba(157,231,255,.22);border-radius:7px;background:#080d0c6b;color:#e6edd7;font-size:14px;font-weight:800;line-height:1.45}.stagePlayRecord{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(126,218,255,.3);border-radius:7px;background:#0712148f;color:#dce9dd;font-size:12px;font-weight:800}.stagePlayRecord strong{margin-right:3px;color:#9de7ff}.stagePlayRecord span{padding:3px 7px;border-radius:999px;background:#ffffff12;white-space:nowrap}.audioSettingsControl{position:fixed;top:10px;right:10px;z-index:60;color:#fff4ca;font-size:12px;font-weight:900}.audioSettingsControl>summary{min-width:62px;list-style:none;padding:7px 10px;border:1px solid rgba(255,236,184,.62);border-radius:7px;background:linear-gradient(180deg,#354333f5,#18221cfa);box-shadow:0 3px 10px #00000057;cursor:pointer;text-align:center}.audioSettingsControl>summary::-webkit-details-marker{display:none}.audioSettingsPopover{position:absolute;top:calc(100% + 6px);right:0;width:210px;display:grid;gap:9px;padding:10px;border:1px solid #68766d;border-radius:8px;background:linear-gradient(180deg,#29332f,#151b19);box-shadow:0 10px 28px #0000007a}.audioSettingsPopover label{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}.audioSettingsPopover input{grid-column:1 / -1;width:100%;accent-color:#9de7ff}.audioSettingsPopover select{grid-column:1 / -1;width:100%;min-height:38px;border:1px solid #6f7d72;border-radius:6px;padding:6px 8px;background:#17231f;color:#eef4dc;font-size:12px;font-weight:800}.audioSettingsPopover .controlLayoutSetting{padding-top:8px;border-top:1px solid rgba(238,244,220,.18)}.audioSettingsPopover .cardPickupPreviewSetting{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding-bottom:8px;border-bottom:1px solid rgba(238,244,220,.18)}.audioSettingsPopover .cardPickupPreviewSetting button{min-width:58px;border-color:#a16b51;background:#46271f}.audioSettingsPopover .cardPickupPreviewSetting .cardPickupPreviewSetting--active{border-color:#8fd6a4;background:#174f37;color:#dfffe9}.audioSettingsPopover button{padding:7px;border:1px solid #6f7d72;border-radius:6px;background:#243029;color:#eef4dc;cursor:pointer;font-weight:900}.audioSettingsPopover .audioSettingsMute--active{border-color:#ff8b72;background:#51271f}.stageCarryInPanel{display:grid;gap:7px;padding:10px;border:2px solid rgba(255,231,150,.7);border-radius:8px;background:linear-gradient(180deg,#3a250c99,#121614c7),#161c19}.stageCarryCardGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px;max-height:330px;overflow:auto;padding-right:3px}.cardListFilters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,220px) auto auto auto;gap:8px;align-items:end;padding:9px;border:1px solid rgba(255,231,150,.38);border-radius:8px;background:#081412b8}.cardListSearch,.cardListCategory{min-width:0;display:grid;gap:4px;color:#dce5cf;font-size:10px;font-weight:900}.cardListSearch input,.cardListCategory select{width:100%;min-width:0;min-height:42px;border:1px solid #778774;border-radius:6px;padding:8px 10px;background:#111c19;color:#fff4ca;font:inherit;font-size:16px}.cardListOwnedOnly{min-height:42px;display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid rgba(157,231,255,.34);border-radius:6px;color:#e8f5df;font-size:11px;font-weight:900;white-space:nowrap;cursor:pointer}.cardListOwnedOnly input{width:19px;height:19px;margin:0;accent-color:#ffd96b}.cardListResultCount{min-height:42px;display:grid;place-items:center;color:#bfeeff;font-size:11px;font-weight:900;white-space:nowrap}.cardListFilterReset{min-height:42px;border:1px solid #7a876d;border-radius:6px;padding:7px 10px;background:linear-gradient(180deg,#354333,#1d2923);color:#f4edc6;cursor:pointer;font-size:11px;font-weight:900;white-space:nowrap}.cardListEmpty{grid-column:1 / -1;margin:0;padding:24px 12px;color:#cdd6bf;text-align:center;font-size:12px;font-weight:900}.stageCarryCard{display:grid;grid-template-columns:72px 1fr auto;gap:8px;align-items:center;min-width:0;padding:7px;border:1px solid rgba(255,236,184,.25);border-radius:7px;background:#080d0c8a}.stageCarryCard img{width:72px;height:72px;object-fit:contain;border-radius:4px;image-rendering:pixelated}.stageCarryCard div{display:grid;gap:3px;min-width:0}.stageCarryCard strong{color:#fff4ca;font-size:12px}.stageCarryCard span{color:#cdd6bf;font-size:11px;line-height:1.3}.stageCarryCard--locked{border-color:#aebcaf29;background:#050909b3}.stageCarryCard--locked>img{filter:grayscale(.45) brightness(.58)}.stageDetailActions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.stageDetailActions button:disabled{opacity:.42;cursor:not-allowed}.stageBetShortage{margin-right:auto;color:#ff9d82;font-size:12px;font-weight:900}.settingsOverlay{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:18px;background:#050807c7}.settingsPanel{width:min(96vw,1120px);max-height:min(90vh,840px);display:grid;gap:12px;padding:14px;border:2px solid rgba(157,231,255,.82);border-radius:10px;background:linear-gradient(180deg,#263531,#111716),#141b19;box-shadow:0 18px 52px #0000009e,inset 0 0 0 2px #ffffff14;overflow:auto}.settingsHeader,.settingsHeaderActions,.settingsFloorCount{display:flex;align-items:center;gap:12px}.settingsStageBasics{display:grid;grid-template-columns:repeat(3,minmax(0,max-content));gap:8px}.settingsHeader{position:sticky;top:-1px;z-index:5;justify-content:space-between;padding:8px;border-radius:7px;background:#1c2724f5;box-shadow:0 5px 12px #00000047}.settingsHeader h2{margin:0 0 3px;color:#fff4ca;font-size:24px;line-height:1.1;text-shadow:0 2px 0 #0a0d0d}.settingsHeader span,.settingsFloorCount small{color:#cdd6bf;font-size:12px;font-weight:800}.settingsHeader button,.settingsFloorCount input,.settingsNumberGrid input,.settingsNumberGrid select,.settingsMultiSelect select{border:1px solid #7a876d;border-radius:5px;background:#070c0bbd;color:#f4edc6;font-weight:900}.settingsHeader button{padding:7px 10px;background:linear-gradient(180deg,#354333,#1d2923);cursor:pointer;font-size:12px}.settingsFloorCount{justify-content:start;padding:10px;border:1px solid rgba(255,236,184,.26);border-radius:7px;background:#080d0c6b}.settingsFloorCount span,.settingsNumberGrid span,.settingsMultiSelect span{color:#fff4ca;font-size:12px;font-weight:900}.settingsFloorCount input,.settingsNumberGrid input,.settingsNumberGrid select{width:72px;padding:7px 8px}.settingsStageBasics .settingsFloorCount input{width:104px}.stageVerificationPanel{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid rgba(157,231,255,.34);border-radius:7px;background:linear-gradient(180deg,#23322fdb,#0c1211db),#080d0c94}.stageVerificationPanel strong{display:block;color:#9de7ff;font-size:15px;text-shadow:0 1px 0 #061010}.stageVerificationPanel span,.stageVerificationPanel p{color:#cdd6bf;font-size:12px;font-weight:800}.stageVerificationPanel button{padding:8px 12px;border:1px solid #9ba76f;border-radius:6px;background:linear-gradient(180deg,#53623d,#253121);color:#fff4ca;cursor:pointer;font-size:12px;font-weight:900}.stageVerificationPanel button:disabled{opacity:.52;cursor:wait}.stageVerificationAttempts{display:grid;gap:4px}.stageVerificationAttempts input,.stageVerificationCardPicker select{min-width:110px;padding:7px 8px;border:1px solid rgba(255,236,184,.24);border-radius:6px;background:#050908c7;color:#fff4ca;font-weight:900}.stageVerificationCarryIn{grid-column:1 / -1;display:grid;gap:8px;padding:9px;border:1px solid rgba(255,236,184,.18);border-radius:7px;background:#05090857}.stageVerificationCarryIn .carryInHeader{min-height:auto}.stageVerificationCardPicker{display:flex;flex-wrap:wrap;gap:8px}.stageVerificationCardPicker select{flex:1 1 240px}.stageVerificationResult{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.stageVerificationResult div{display:grid;gap:2px;padding:8px;border:1px solid rgba(255,236,184,.2);border-radius:6px;background:#05090870}.stageVerificationResult strong{color:#fff4ca;font-size:18px}.stageVerificationResult p{grid-column:1 / -1;margin:0}.stageVerificationLog{grid-column:1 / -1;color:#fff4ca;font-size:12px;font-weight:800}.stageVerificationResult .stageVerificationLogActions{display:flex;align-items:center;gap:8px;margin-top:8px;padding:0;border:0;background:transparent}.stageVerificationResult .stageVerificationLogActions span{color:#d8e0d1;font-weight:600}.verificationBranchPanel{display:grid;gap:8px;margin:10px 0;padding:10px;border:1px solid #63705f;background:#111811d1}.verificationBranchPanel--active{border-color:#e2b94f;box-shadow:inset 0 0 0 1px #e2b94f40}.verificationBranchPanel p{margin:0}.verificationBranchHeading,.verificationBranchActions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.verificationBranchHeading strong{color:#ffe08a}.verificationBranchActions span{color:#d8e0d1;font-weight:600}.stageVerificationLog pre{max-height:220px;overflow:auto;margin:8px 0 0;padding:10px;border:1px solid rgba(157,231,255,.18);border-radius:6px;background:#030606bd;color:#d8e0d1;white-space:pre-wrap}.verificationReplay{grid-column:1 / -1;display:grid;gap:6px;padding:8px;border:1px solid rgba(157,231,255,.24);border-radius:7px;background:linear-gradient(180deg,#152324d1,#050909d6),#0509089e}.verificationReplayHeader,.verificationReplayControls,.verificationReplayStats{align-items:center;gap:8px}.verificationReplayHeader{display:grid;grid-template-columns:minmax(180px,1fr) minmax(360px,1.25fr) auto;align-items:center}.verificationReplayControls{display:grid;grid-template-columns:repeat(4,minmax(68px,1fr));padding:4px;border:1px solid rgba(255,236,184,.26);border-radius:6px;background:linear-gradient(180deg,#25302bfa,#0e1413fa),#141a18;box-shadow:inset 0 1px #ffffff0f}.verificationReplayControls button{min-height:30px;border:1px solid #8a7e54;border-radius:5px;background:linear-gradient(180deg,#f7e7a5,#aa863b);color:#1b1308;font-size:12px;font-weight:900;cursor:pointer}.verificationReplayControls button:hover,.verificationReplayControls button:focus-visible{filter:brightness(1.1)}.verificationReplayControls input[type=range]{grid-column:1 / -1;width:100%;height:14px;accent-color:#9de7ff}.verificationReplayStats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.verificationReplayStats span{padding:4px 8px;border:1px solid rgba(255,236,184,.16);border-radius:999px;background:#03060680}.verificationReplayLayout{display:grid;grid-template-columns:minmax(0,max-content) minmax(172px,1fr);align-items:flex-start;gap:10px}.verificationReplayBoard{display:grid;grid-template-columns:repeat(11,34px);grid-template-rows:repeat(10,34px);width:max-content;overflow:hidden;border:1px solid rgba(207,232,210,.38);border-radius:6px;background:#070909}.verificationReplayBoard .cell{width:34px;height:34px}.verificationReplayBoard .playerSprite{width:52px;height:52px}.verificationReplayBoard .enemySprite{width:54px;height:54px}.verificationReplaySide{display:grid;gap:8px;min-width:0}.verificationReplayMiniMap{display:grid;grid-template-columns:repeat(40,3px);grid-template-rows:repeat(40,3px);width:120px;height:120px;border:1px solid #101514;background:#080b0b}.verificationReplayLabel{margin:0;color:#fff4ca;font-size:12px;font-weight:800;line-height:1.45;overflow-wrap:anywhere}.verificationAudit{border:1px solid rgba(157,231,255,.2);border-radius:6px;background:#03060694;color:#d8e0d1;font-size:12px}.verificationAudit summary{padding:7px 9px;color:#fff4ca;font-weight:800;cursor:pointer}.verificationAudit pre{max-height:260px;overflow:auto;margin:0;padding:0 9px 9px;color:inherit;font:inherit;line-height:1.45;white-space:pre-wrap}.replayStatusBar{display:grid;grid-template-columns:repeat(8,minmax(72px,1fr));gap:6px}.replayStatusBar span{min-width:0;padding:6px 8px;font-size:12px}.verificationReplay .gameShell{width:100%;padding:8px;gap:8px;box-shadow:inset 0 0 0 1px #ffffff0f}.gameShell--replay .topPanel{display:none}.gameShell--replay .statusBar{grid-template-columns:repeat(4,minmax(78px,auto));justify-content:start}.gameShell--replay .playArea{grid-template-columns:minmax(520px,1fr) 210px;gap:8px}.gameShell--replay .mapPanel{min-width:0;width:min(100%,640px);padding:8px}.gameShell--replay .inventorySlot:disabled{cursor:default;opacity:1}.gameShell--replay .bottomPanel{grid-template-columns:minmax(0,1fr) minmax(150px,auto)}.gameShell--replay .verificationReplayStats{align-content:start;grid-template-columns:repeat(2,auto)}.gameShell--replay .inventoryBar{gap:4px}.gameShell--replay .inventorySlot{min-height:58px}.gameShell--replay .messageWindow{min-height:34px;max-height:54px;overflow:hidden}.gameShell--replay .tile--dimmed{filter:none}.gameShell--replay .tile--dimmed:after{background:transparent}.gameShell--replay .tile--wall{background:linear-gradient(135deg,#242a2a 0 24%,#171c1c 24% 50%,#202626 50% 74%,#121615 74%),#1b2020;box-shadow:inset 0 0 0 1px #303837}.gameShell--replay .tile--floor,.gameShell--replay .tile--floor.tile--dimmed{background:linear-gradient(135deg,rgba(255,255,255,.16),transparent 38%),#9c9782}.gameShell--replay .tile--corridor,.gameShell--replay .tile--corridor.tile--dimmed{background:linear-gradient(90deg,rgba(255,255,255,.12),transparent 34%,rgba(0,0,0,.18)),#736f61}.gameShell--replay .floorMapCell--floor{background:#8f8975}.gameShell--replay .floorMapCell--corridor{background:#706a56}@media(max-width:760px){.verificationReplayLayout{grid-template-columns:1fr}.verificationReplayBoard{grid-template-columns:repeat(11,minmax(24px,1fr));grid-template-rows:repeat(10,minmax(24px,1fr));width:100%}.verificationReplayBoard .cell{width:auto;height:auto;aspect-ratio:1}.gameShell--replay .topPanel,.gameShell--replay .playArea,.gameShell--replay .bottomPanel{grid-template-columns:1fr}.gameShell--replay .statusBar{justify-content:stretch}}.settingsCsvPanel{display:grid;gap:8px;padding:10px;border:1px solid rgba(157,231,255,.24);border-radius:7px;background:linear-gradient(180deg,#1b2826db,#080d0cdb),#080d0c94}.settingsCsvPanel strong{display:block;color:#9de7ff;font-size:15px;text-shadow:0 1px 0 #061010}.settingsCsvPanel span{color:#cdd6bf;font-size:12px;font-weight:800}.settingsCsvPanel textarea{min-height:132px;resize:vertical;padding:9px;border:1px solid rgba(255,236,184,.22);border-radius:6px;background:#030606bd;color:#d8e0d1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;line-height:1.5}.settingsCsvActions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.settingsCsvActions button{padding:8px 12px;border:1px solid #9ba76f;border-radius:6px;background:linear-gradient(180deg,#53623d,#253121);color:#fff4ca;cursor:pointer;font-size:12px;font-weight:900}.settingsNumberGrid select{width:100%}.settingsFloorList{display:grid;gap:10px}.settingsFloorCard{display:grid;gap:10px;padding:10px;border:1px solid rgba(255,236,184,.26);border-radius:7px;background:#080d0c8a}.settingsFloorCard>header strong{color:#9de7ff;font-size:15px;text-shadow:0 1px 0 #061010}.settingsFloorCard>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.settingsTemplateControls{display:flex;align-items:center;gap:6px}.settingsTemplateControls select,.settingsTemplateControls button{border:1px solid #7a876d;border-radius:5px;background:#070c0bbd;color:#f4edc6;font-size:11px;font-weight:900}.settingsTemplateControls select{min-width:92px;padding:5px 6px}.settingsTemplateControls button{padding:5px 7px;cursor:pointer}.settingsTemplateControls button:disabled{opacity:.42;cursor:not-allowed}.settingsNumberGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}.settingsNumberGrid label,.settingsMultiSelect,.settingsCheck{display:grid;gap:5px}.settingsCheck{grid-template-columns:auto auto 1fr;align-items:center;justify-content:start;padding:8px;border:1px solid rgba(157,231,255,.24);border-radius:6px;background:#09111073}.settingsCheck input{width:18px;height:18px;accent-color:#9de7ff}.settingsCheck small{color:#aeb8aa;font-size:11px;font-weight:800}.settingsMultiSelect select{width:100%;min-height:90px;padding:7px;font-size:12px}.settingsAppearanceGroup{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr);gap:10px;align-items:start}.settingsAppearanceRates{display:grid;gap:5px;max-height:190px;overflow:auto;padding:7px;border:1px solid rgba(157,231,255,.24);border-radius:6px;background:#03080875}.settingsAppearanceRates p{display:flex;justify-content:space-between;gap:8px;margin:0 0 2px;color:#fff4ca;font-size:11px;font-weight:900}.settingsAppearanceRates p small{color:#aeb8aa;font-size:10px}.settingsAppearanceRates label{display:grid;grid-template-columns:minmax(0,1fr) 58px 52px;align-items:center;gap:6px}.settingsAppearanceRates label>span{min-width:0;overflow:hidden;color:#dce4d4;font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.settingsAppearanceRates input{width:100%;box-sizing:border-box;padding:4px 5px;border:1px solid #7a876d;border-radius:4px;background:#070c0bcc;color:#f4edc6;font-size:11px;font-weight:900}.settingsAppearanceRates label>strong{color:#9de7ff;font-size:11px;text-align:right}.settingsCardRatePanels{display:grid;gap:8px;min-width:0}.settingsCategoryRates{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:6px;padding:7px;border:1px solid rgba(255,219,121,.28);border-radius:6px;background:#120f076b}.settingsCategoryRates label:not(.settingsCategoryToggle){display:grid;grid-template-columns:minmax(0,1fr) 52px 45px;align-items:center;gap:5px}.settingsCategoryRates label>span{min-width:0;overflow:hidden;color:#f0e4b9;font-size:10px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.settingsCategoryRates input[type=number]{width:100%;box-sizing:border-box;padding:4px;border:1px solid #7a876d;border-radius:4px;background:#070c0bcc;color:#f4edc6;font-size:11px;font-weight:900}.settingsCategoryRates input:disabled{opacity:.42}.settingsCategoryRates label>strong{color:#ffd96b;font-size:10px;text-align:right}.settingsCategoryToggle{grid-column:1 / -1;display:flex;align-items:center;gap:7px;color:#fff4ca;font-size:11px;font-weight:900}.settingsCategoryToggle input{width:17px;height:17px;accent-color:#ffd96b}.settingsAppearanceRates label>span small{display:inline-block;margin-right:5px;padding:1px 4px;border-radius:3px;background:#9de7ff1f;color:#9de7ff;font-size:8px;vertical-align:1px}.cardCategoryBadge{width:fit-content;padding:2px 6px;border:1px solid rgba(157,231,255,.32);border-radius:999px;background:#9de7ff1a;color:#bfeeff;font-size:9px!important;font-weight:900;line-height:1.2!important}.cardCategoryBadge--attack{border-color:#ff6f5b73;background:#ff58441f;color:#ffb0a4}.cardCategoryBadge--status{border-color:#c571ff73;background:#a04ddb21;color:#dfb5ff}.cardCategoryBadge--support{border-color:#65beff73;background:#4091d321;color:#acdfff}.cardCategoryBadge--equipment{border-color:#ffda5b73;background:#cda62b21;color:#ffe38c}.collectionPanel{width:min(94vw,900px);max-height:min(88vh,760px);display:grid;gap:12px;padding:14px;border:2px solid rgba(255,231,150,.86);border-radius:10px;background:linear-gradient(180deg,#29352f,#121817),#151c1a;box-shadow:0 18px 52px #00000094,inset 0 0 0 2px #ffffff14;overflow:auto}.collectionHeader{position:sticky;top:-1px;z-index:5;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px;border-radius:7px;background:#232f2af5;box-shadow:0 5px 12px #00000047}.collectionHeader h2{margin:0;color:#fff4ca;font-size:22px;line-height:1.1;text-shadow:0 2px 0 #0a0d0d}.collectionHeader button,.collectionCard button{border:1px solid #7a876d;border-radius:5px;padding:7px 10px;background:linear-gradient(180deg,#354333,#1d2923);color:#f4edc6;cursor:pointer;font-size:12px;font-weight:900}.collectionCard button:disabled{opacity:.42;cursor:not-allowed}.collectionCard .collectionCardImageButton{width:108px;height:108px;padding:0;overflow:hidden;border:1px solid rgba(157,231,255,.28);border-radius:5px;background:#030707b8;cursor:zoom-in}.collectionCard .collectionCardImageButton:hover,.collectionCard .collectionCardImageButton:focus-visible{border-color:#9de7ff;box-shadow:0 0 0 2px #9de7ff2e}.collectionCard--locked{border-color:#aebcaf29;background:#050909b8}.collectionCard--locked .collectionCardImageButton:disabled{opacity:1;cursor:default}.collectionCard--locked .collectionCardImageButton img{filter:grayscale(.45) brightness(.58)}.collectionCard .collectionUnknown,.stageCarryCard .collectionUnknown{width:fit-content;padding:2px 6px;border:1px solid rgba(174,188,175,.2);border-radius:999px;color:#8f9990;font-size:9px;font-weight:900}.collectionGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:min(62vh,600px);overflow:auto;padding-right:3px}.collectionCard{display:grid;grid-template-columns:108px 1fr auto;gap:10px;align-items:center;min-width:0;border:1px solid rgba(255,236,184,.28);border-radius:7px;padding:8px;background:#080d0c8f}.collectionCard img{width:108px;height:108px;object-fit:contain;border-radius:4px;image-rendering:pixelated}.collectionCardZoom{position:fixed;inset:0;z-index:24;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;height:100%;padding:18px;border:0;background:#020505e6;color:#fff4ca;cursor:zoom-out}.collectionCardZoom img{width:min(82vw,520px);height:min(75vh,640px);object-fit:contain;border:2px solid rgba(255,236,184,.7);border-radius:8px;background:#080b0a;box-shadow:0 18px 54px #000000b3;image-rendering:auto}.collectionCardZoom span{max-width:min(86vw,620px);overflow:hidden;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.collectionCard div{display:grid;gap:4px;min-width:0}.collectionCard strong{color:#fff4ca;font-size:13px}.collectionCard span{color:#cdd6bf;font-size:12px;line-height:1.35}.collectionCard span:first-of-type{color:#e6dcc0}.collectionCard .cardCategoryBadge{color:#bfeeff}.collectionCard .cardCategoryBadge--attack{color:#ffb0a4}.collectionCard .cardCategoryBadge--status{color:#dfb5ff}.collectionCard .cardCategoryBadge--support{color:#acdfff}.collectionCard .cardCategoryBadge--equipment{color:#ffe38c}.gameShell{width:min(100%,calc(100vw - 36px),1020px);max-width:100%;overflow-x:clip;display:grid;gap:12px;padding:16px;border:2px solid #64706a;border-radius:8px;background:linear-gradient(180deg,#2c3430f5,#151a19fa),#202826;box-shadow:0 22px 60px #0000007a,inset 0 0 0 1px #ffffff14}.topPanel,.bottomPanel{display:grid;align-items:center;gap:12px;border:1px solid #59645e;border-radius:8px;background:linear-gradient(180deg,#2b3430,#1a211f);box-shadow:inset 0 1px #ffffff14}.topPanel{grid-template-columns:minmax(180px,1fr) auto;padding:12px}.bottomPanel{grid-template-columns:minmax(0,1fr) auto;min-width:0;overflow:hidden;padding:10px 12px}.titleBlock h1{margin:0;color:#fff4ca;font-size:clamp(22px,4vw,34px);line-height:1.05;letter-spacing:0;text-shadow:0 2px 0 #0a0d0d}.titleBlock p{margin:5px 0 0;color:#aebcaf;font-size:13px}.topPanel>.equipmentSlots{grid-column:1 / -1;justify-self:end}.statusBar{display:grid;grid-template-columns:repeat(6,auto);gap:8px}.statusBar span{min-width:78px;border:1px solid #6e785e;border-radius:6px;padding:8px 10px;background:linear-gradient(180deg,#384231,#202a25);color:#f8f0c5;font-size:14px;font-weight:700;text-align:center;text-shadow:0 1px 0 #050606;white-space:nowrap}.equipmentSlots{width:fit-content;max-width:100%;display:flex;flex-wrap:wrap;justify-content:end;gap:5px}.equipmentSlot{position:relative;width:52px;min-width:0;color:#f8f0c5}.equipmentSlot summary{box-sizing:border-box;width:52px;height:60px;min-width:0;display:grid;place-items:center;overflow:hidden;border:1px solid #6e785e;border-radius:6px;padding:3px;background:linear-gradient(180deg,#384231,#202a25);cursor:pointer;list-style:none}.equipmentSlot summary::-webkit-details-marker{display:none}.equipmentSlot summary:focus-visible{outline:2px solid #9de7ff;outline-offset:2px}.equipmentSlotIcon{width:46px;height:54px;display:grid;place-items:center;overflow:hidden;color:#b8c2ad;font-size:22px;line-height:1}.equipmentSlotIcon img{width:100%;height:100%;object-fit:contain}.equipmentSlotLabel{color:#9de7ff;font-size:10px;font-weight:900}.equipmentSlotTooltip{position:absolute;z-index:70;top:calc(100% + 5px);right:0;width:min(230px,calc(100vw - 32px));display:none;gap:6px;border:1px solid #8a966f;border-radius:6px;padding:8px;background:#0d1210fa;box-shadow:0 8px 22px #0000007a;pointer-events:none}.equipmentSlot[open] .equipmentSlotTooltip,.equipmentSlot:hover .equipmentSlotTooltip,.equipmentSlot:focus-within .equipmentSlotTooltip{display:grid}.equipmentSlot:nth-child(-n+3) .equipmentSlotTooltip{right:auto;left:0}.equipmentSlotTooltip strong{color:#fff4ca;font-size:12px}.equipmentSlotTooltip small{color:#c8d1c3;font-size:11px;line-height:1.35}.equipmentExpandedOverlay{display:none}.verificationReplay>.equipmentSlots{justify-self:end}.playArea{display:grid;grid-template-columns:minmax(560px,1fr) 240px;align-items:start;gap:12px}.mapPanel{position:relative;width:min(100%,760px);min-width:420px;margin:0 auto;aspect-ratio:8 / 7;padding:12px;border:2px solid #768173;border-radius:8px;background:linear-gradient(180deg,rgba(238,226,169,.16),transparent 18%),#141918;box-shadow:inset 0 0 0 4px #00000038,inset 0 0 24px #0000006b;overflow:hidden}.hpHud{position:absolute;top:14px;left:16px;z-index:12;display:grid;grid-template-columns:auto auto;grid-template-rows:auto 10px;align-items:end;column-gap:9px;row-gap:3px;min-width:198px;padding:4px 7px 6px;color:#fff;font-weight:900;letter-spacing:0;text-shadow:-2px -2px 0 #050505,2px -2px 0 #050505,-2px 2px 0 #050505,2px 2px 0 #050505,0 3px 0 #050505;pointer-events:none}.hpHudLabel{font-size:18px;line-height:1}.hpHudValue{display:inline-block;font-size:34px;line-height:.9}.hpHudTrack{grid-column:1 / -1;position:relative;height:10px;border:2px solid #0a0b0b;border-radius:999px;background:linear-gradient(180deg,#f5f2dd 0 26%,#171817 26% 100%);box-shadow:0 1px #ffffff85,0 2px #050505;overflow:hidden}.hpHudFill{position:absolute;inset:2px auto 2px 2px;width:100%;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.58),transparent 42%),#55ef36;box-shadow:inset -2px 0 #00000047}.hpHud--warning .hpHudFill{background:linear-gradient(180deg,rgba(255,255,255,.58),transparent 42%),#ffd739}.hpHud--danger .hpHudFill,.hpHud--critical .hpHudFill{background:linear-gradient(180deg,rgba(255,255,255,.62),transparent 42%),#ff3030;animation:hpDangerPulse .52s steps(2,end) infinite}.hpHud--critical .hpHudValue{animation:hpNumberPulse .42s steps(2,end) infinite}.board{--board-x: -13.6364%;--board-y: -15%;--board-step-x: 9.0909%;--board-step-y: 10%;position:relative;z-index:1;display:grid;grid-template-columns:repeat(11,1fr);grid-template-rows:repeat(10,1fr);width:137.5%;height:142.8571%;transform:translate(var(--board-x),var(--board-y));border:1px solid #111514;background:#0c0f0e}.board--move-up{animation:boardMoveUp .13s linear forwards}.board--move-down{animation:boardMoveDown .13s linear forwards}.board--move-left{animation:boardMoveLeft .13s linear forwards}.board--move-right{animation:boardMoveRight .13s linear forwards}.board--move-upLeft{animation:boardMoveUpLeft .13s linear forwards}.board--move-upRight{animation:boardMoveUpRight .13s linear forwards}.board--move-downLeft{animation:boardMoveDownLeft .13s linear forwards}.board--move-downRight{animation:boardMoveDownRight .13s linear forwards}.floorMapPanel{display:grid;gap:10px;padding:12px;border:2px solid #677369;border-radius:8px;background:linear-gradient(180deg,rgba(238,226,169,.11),transparent 24%),#171e1c;box-shadow:inset 0 0 0 3px #0000002e,inset 0 0 20px #00000052}.floorMapHeader{display:flex;justify-content:space-between;gap:10px;color:#efe7bf;font-size:12px;font-weight:800;text-shadow:0 1px 0 #050606}.floorMap{display:grid;grid-template-columns:repeat(40,1fr);grid-template-rows:repeat(40,1fr);width:100%;aspect-ratio:1;border:1px solid #101514;background:#080b0b}.floorMapCell{min-width:0;min-height:0;background:#080b0c}.floorMapCell--wall{background:#121717}.floorMapCell--unexplored{background:#010303}.floorMapCell--floor{background:#6d6b5e}.floorMapCell--corridor{background:#8a836c}.floorMapCell--rock{background:#3f4748;box-shadow:inset 0 0 0 1px #9ba4a2}.floorMapCell--floor.floorMapCell--mappedOnly{background:#4f5047}.floorMapCell--corridor.floorMapCell--mappedOnly{background:#625f50}.floorMapCell--player{background:#46a8ff;box-shadow:0 0 0 1px #e8f6ff}.floorMapCell--enemy{background:#e14e40;box-shadow:0 0 0 1px #ffe4d7}.floorMapCell--card{background:#4eda78;box-shadow:0 0 0 1px #dfc}.floorMapCell--shop{background:#c98cff;box-shadow:0 0 0 1px #f2d7ff}.floorMapCell--stairs{background:#ffd54f;box-shadow:0 0 0 1px #fff1a8}.floorMapCell--goal{background:#7cdcff;box-shadow:0 0 0 1px #e8fbff,0 0 6px #7cdcffd9}.floorMapLegend{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.legendItem{display:grid;place-items:center;min-width:0;height:22px;border:1px solid rgba(255,255,255,.18);border-radius:4px;color:#081010;font-size:11px;font-weight:900;line-height:1}.legendItem--player{background:#46a8ff}.legendItem--enemy{background:#e14e40}.legendItem--card{background:#4eda78}.legendItem--shop{background:#c98cff}.legendItem--rock{background:#9ba4a2}.legendItem--stairs{background:#ffd54f}.legendItem--goal{background:#7cdcff}.cell{position:relative;display:grid;place-items:center;min-width:0;min-height:0;border:1px solid rgba(0,0,0,.18);overflow:hidden}.effectCountdowns{position:absolute;right:2px;bottom:2px;z-index:8;display:flex;flex-flow:row-reverse wrap-reverse;max-width:calc(100% - 4px);gap:2px;pointer-events:none}.effectCountdownBadge{display:inline-flex;align-items:center;justify-content:center;gap:1px;min-width:18px;height:16px;padding:0 3px;border:1px solid rgba(255,255,255,.84);border-radius:5px;background:#080c0ce6;color:#fff;font-size:9px;font-weight:800;line-height:1;white-space:nowrap;box-shadow:0 1px 3px #000000bf;text-shadow:0 1px 1px #000}.effectCountdownBadge strong{font-size:11px;line-height:1}.effectCountdownBadge--heal{border-color:#9bff8a;background:#165b23f0}.effectCountdownBadge--boost{border-color:#ffe777;background:#6f4c09f0}.effectCountdownBadge--guard{border-color:#8de8ff;background:#0d4969f0}.effectCountdownBadge--control{border-color:#e3a5ff;background:#4b1864f0}.tile--player{overflow:visible}.tile:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.16),transparent 35%),linear-gradient(315deg,rgba(0,0,0,.22),transparent 45%);pointer-events:none}.tile--wall{background:linear-gradient(135deg,#242a2a 0 24%,#171c1c 24% 50%,#202626 50% 74%,#121615 74%),#1b2020;box-shadow:inset 0 0 0 1px #303837}.tile--unexplored{background:radial-gradient(circle at 50% 48%,rgba(20,24,20,.54),transparent 62%),#050706;box-shadow:inset 0 0 0 1px #46524a3d}.tile--unexplored:before{opacity:.18}.tile--dimmed{filter:brightness(.48) saturate(.72)}.tile--dimmed:after{content:"";position:absolute;inset:0;background:#02040457;pointer-events:none}.tile--floor{background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 38%),#706e62;box-shadow:none}.tile--corridor{background:linear-gradient(90deg,rgba(255,255,255,.07),transparent 35%,rgba(0,0,0,.14)),#817d6e;box-shadow:none}.tile--rock{background:radial-gradient(circle at 50% 62%,rgba(0,0,0,.32),transparent 50%),#625f58}.tile--slippery{background:linear-gradient(135deg,rgba(230,255,255,.32),transparent 36%),linear-gradient(315deg,rgba(72,169,255,.28),transparent 44%),#74848a}.tile--slippery:after{content:"";position:absolute;inset:1px;border:1px solid rgba(205,247,255,.32);box-shadow:inset 0 0 12px #68ceff38;pointer-events:none}.tile--stairs{background:radial-gradient(circle at 50% 42%,rgba(255,244,171,.5),transparent 52%),#776a32;overflow:visible}.tile--enemy{background:radial-gradient(circle at 50% 68%,rgba(46,24,12,.38),transparent 46%),#6b6257;overflow:visible}.tile--card{background:radial-gradient(circle at 50% 48%,rgba(132,212,73,.28),transparent 56%),#6b6b5e}.tile--shop{background:radial-gradient(circle at 50% 48%,rgba(220,156,255,.32),transparent 58%),#665b6d}.tile--player{background:radial-gradient(circle at 50% 58%,rgba(50,145,255,.24),transparent 42%),#676d69;outline:2px solid #bcd8ff;outline-offset:-4px;z-index:2}.tileIcon{position:relative;z-index:1;display:grid;place-items:center;width:88%;height:88%;border-radius:50%;color:#fff6d5;font-size:clamp(14px,3.4vw,26px);font-weight:900;line-height:1;text-shadow:0 2px 0 #0a0d0d}.playerSprite{--player-step: 86%;position:relative;z-index:1;display:block;width:118%;height:118%;background-repeat:no-repeat;background-position:center;background-size:contain;image-rendering:pixelated;filter:drop-shadow(0 3px 0 rgba(0,0,0,.58));transform-origin:50% 82%}.playerSprite--up{--player-idle-size: 273.573927% 136.786963%;--player-idle-first: 12.68479% 49.682354%;--player-idle-second: 90.025005% 49.682354%;--player-standing-image: url(../player-sprites/up.webp);--player-idle-image: url(../player-sprites/idle/up-steps-v1.png);background-image:var(--player-standing-image)}.playerSprite--down{--player-idle-size: 250% 125%;--player-idle-first: 8.333333% 50%;--player-idle-second: 91.666667% 50%;--player-standing-image: url(../player-sprites/down.webp);--player-idle-image: url(../player-sprites/idle/down-steps-v1.png);background-image:var(--player-standing-image)}.playerSprite--left{--player-idle-size: 255.542017% 255.542017%;--player-idle-first: 2.441989% 10.624274%;--player-idle-second: 84.522137% 10.624274%;--player-idle-third: 2.441989% 92.638915%;--player-idle-fourth: 84.587644% 92.638915%;--player-idle-animation: playerIdleFourSteps;--player-idle-duration: .96s;--player-standing-image: url(../player-sprites/left.webp);--player-idle-image: url(../player-sprites/idle/left-steps-v2.png);background-image:var(--player-standing-image)}.playerSprite--right{--player-idle-size: 239.91716% 239.91716%;--player-idle-first: 11.644676% 11.044856%;--player-idle-second: 97.380107% 11.044856%;--player-idle-third: 11.644676% 95.412896%;--player-idle-fourth: 97.380107% 95.412896%;--player-idle-animation: playerIdleFourSteps;--player-idle-duration: .96s;--player-standing-image: url(../player-sprites/right.webp);--player-idle-image: url(../player-sprites/idle/right-steps-v2.png);background-image:var(--player-standing-image)}.playerSprite--upLeft{--player-idle-size: 240.867327% 240.867327%;--player-idle-first: 86.47488% 14.016419%;--player-idle-second: 86.47488% 90.102336%;--player-idle-third: 9.025415% 89.965982%;--player-idle-fourth: 90.701875% 89.965982%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;--player-standing-image: url(../player-sprites/upLeft.webp);--player-idle-image: url(../player-sprites/idle/upLeft-steps-v2.png);background-image:var(--player-standing-image)}.playerSprite--upRight{--player-idle-size: 265.962906% 132.981453%;--player-idle-first: 12.55611% 48.334036%;--player-idle-second: 88.844084% 48.334036%;--player-standing-image: url(../player-sprites/upRight.webp);--player-idle-image: url(../player-sprites/idle/upRight-steps-v1.png);background-image:var(--player-standing-image)}.playerSprite--downLeft{--player-idle-size: 230.375% 230.375%;--player-idle-first: 4.767716% 12.055841%;--player-idle-second: 93.118626% 12.055841%;--player-idle-third: 4.767716% 100.406752%;--player-idle-fourth: 93.118626% 100.406752%;--player-idle-animation: playerIdleFourSteps;--player-idle-duration: .96s;--player-standing-image: url(../player-sprites/downLeft.webp);--player-idle-image: url(../player-sprites/idle/downLeft-steps-v2.png);background-image:var(--player-standing-image)}.playerSprite--downRight{--player-idle-size: 240.332402% 120.166201%;--player-idle-first: 8.102271% 48.784542%;--player-idle-second: 93.731961% 48.784542%;--player-standing-image: url(../player-sprites/downRight.webp);--player-idle-image: url(../player-sprites/idle/downRight-steps-v1.png);background-image:var(--player-standing-image)}.playerSprite--idle{background-image:var(--player-idle-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first);animation:var(--player-idle-animation, playerIdleSteps) var(--player-idle-duration, .72s) step-end infinite}@keyframes playerIdleSteps{0%,to{background-position:var(--player-idle-first)}50%{background-position:var(--player-idle-second)}}@keyframes playerIdleFourSteps{0%,to{background-position:var(--player-idle-first)}25%{background-position:var(--player-idle-second)}50%{background-position:var(--player-idle-third)}75%{background-position:var(--player-idle-fourth)}}.verificationReplay .playerSprite--idle{animation:none;background-image:var(--player-standing-image);background-size:contain;background-position:center}@media(prefers-reduced-motion:reduce){.playerSprite--idle{animation:none;background-image:var(--player-standing-image);background-size:contain;background-position:center}}.playerSlash{position:absolute;left:50%;top:50%;z-index:4;display:block;width:178%;height:178%;background-position:center;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.72);filter:drop-shadow(0 0 8px rgba(255,255,255,.9)) drop-shadow(0 0 5px rgba(114,193,255,.55)) drop-shadow(0 2px 0 rgba(0,0,0,.45));animation:playerSlash .13s ease-out forwards}.playerSlash--up{background-image:url(../player-slash/up.webp);top:28%}.playerSlash--down{background-image:url(../player-slash/down.webp);top:72%}.playerSlash--left{background-image:url(../player-slash/left.webp);left:24%}.playerSlash--right{background-image:url(../player-slash/right.webp);left:76%}.playerSlash--upLeft{background-image:url(../player-slash/upLeft.webp);left:28%;top:30%}.playerSlash--upRight{background-image:url(../player-slash/upRight.webp);left:72%;top:30%}.playerSlash--downLeft{background-image:url(../player-slash/downLeft.webp);left:28%;top:70%}.playerSlash--downRight{background-image:url(../player-slash/downRight.webp);left:72%;top:70%}.tile--player-move-up .playerSprite{animation:playerMoveUp .13s linear forwards}.tile--player-move-down .playerSprite{animation:playerMoveDown .13s linear forwards}.tile--player-move-left .playerSprite{animation:playerMoveLeft .13s linear forwards}.tile--player-move-right .playerSprite{animation:playerMoveRight .13s linear forwards}.tile--player-move-upLeft .playerSprite{animation:playerMoveUpLeft .13s linear forwards}.tile--player-move-upRight .playerSprite{animation:playerMoveUpRight .13s linear forwards}.tile--player-move-downLeft .playerSprite{animation:playerMoveDownLeft .13s linear forwards}.tile--player-move-downRight .playerSprite{animation:playerMoveDownRight .13s linear forwards}.tile--player-bump-up .playerSprite{animation:playerBumpUp 105ms ease-out}.tile--player-bump-down .playerSprite{animation:playerBumpDown 105ms ease-out}.tile--player-bump-left .playerSprite{animation:playerBumpLeft 105ms ease-out}.tile--player-bump-right .playerSprite{animation:playerBumpRight 105ms ease-out}.tile--player-bump-upLeft .playerSprite{animation:playerBumpUpLeft 105ms ease-out}.tile--player-bump-upRight .playerSprite{animation:playerBumpUpRight 105ms ease-out}.tile--player-bump-downLeft .playerSprite{animation:playerBumpDownLeft 105ms ease-out}.tile--player-bump-downRight .playerSprite{animation:playerBumpDownRight 105ms ease-out}.enemySprite{position:absolute;left:-9%;bottom:5%;z-index:1;display:block;width:118%;height:118%;object-fit:contain;object-position:center bottom;background-repeat:no-repeat;background-position:center bottom;background-size:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 0 rgba(0,0,0,.55));animation:enemyIdle .86s steps(2,end) infinite;transform-origin:50% 100%}.enemyRareAura{position:absolute;z-index:2;inset:5%;border:3px solid rgba(255,225,52,.9);border-radius:50%;background:radial-gradient(circle,rgba(255,244,113,.2),transparent 62%);box-shadow:0 0 7px #fffffff2,0 0 15px #ffd72eeb,inset 0 0 12px #5be0ffa6;pointer-events:none;animation:enemyRareAuraPulse .64s ease-in-out infinite alternate}.enemyRareSparkles{position:absolute;z-index:5;inset:2%;pointer-events:none;filter:drop-shadow(0 0 4px rgba(255,249,145,.95));animation:enemyRareSparklePulse .76s ease-in-out infinite alternate}.enemyRareBadge{position:absolute;z-index:7;top:2px;left:50%;transform:translate(-50%);border:2px solid #fffbd0;border-radius:999px;padding:1px 5px;background:linear-gradient(180deg,#ffef63,#f08a00 58%,#a94000);color:#fff;box-shadow:0 0 7px #fff,0 0 14px #ffd21f;font-size:clamp(7px,1.25vw,12px);font-weight:1000;line-height:1.05;letter-spacing:.04em;text-shadow:0 1px 1px #6e2400;pointer-events:none;animation:enemyRareBadgeReveal .9s cubic-bezier(.2,1.55,.45,1),enemyRareBadgeGlow .72s ease-in-out .9s infinite alternate}.enemyRareSparkles:before,.enemyRareSparkles:after{position:absolute;color:#fffbd1;font-weight:1000;line-height:1;text-shadow:0 0 4px #fff,0 0 8px #ffe45b,0 0 13px #64ddff;content:"✦"}.enemyRareSparkles:before{top:2%;right:4%;font-size:clamp(11px,2vw,20px)}.enemyRareSparkles:after{bottom:8%;left:1%;font-size:clamp(8px,1.5vw,15px);animation:enemyRareSparkleSwap .76s ease-in-out infinite alternate}@keyframes enemyRareSparklePulse{0%{opacity:.3;transform:scale(.86) rotate(-5deg)}to{opacity:1;transform:scale(1.08) rotate(5deg)}}@keyframes enemyRareSparkleSwap{0%{opacity:1;transform:scale(1.1)}to{opacity:.35;transform:scale(.75)}}@keyframes enemyRareAuraPulse{0%{opacity:.48;transform:scale(.82)}to{opacity:1;transform:scale(1.08)}}@keyframes enemyRareBadgeReveal{0%{opacity:0;transform:translate(-50%) scale(2.4)}55%{opacity:1;transform:translate(-50%) scale(1.35)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes enemyRareBadgeGlow{0%{filter:brightness(.92)}to{filter:brightness(1.35)}}.enemySprite--attack{animation:enemyAttack 80ms ease-out}.enemySprite--move{animation:enemyMoveIn 80ms linear}.enemySprite--move-up{--enemy-move-from-x: 0%;--enemy-move-from-y: 100%}.enemySprite--move-down{--enemy-move-from-x: 0%;--enemy-move-from-y: -100%}.enemySprite--move-left{--enemy-move-from-x: 100%;--enemy-move-from-y: 0%}.enemySprite--move-right{--enemy-move-from-x: -100%;--enemy-move-from-y: 0%}.enemySprite--move-upLeft{--enemy-move-from-x: 100%;--enemy-move-from-y: 100%}.enemySprite--move-upRight{--enemy-move-from-x: -100%;--enemy-move-from-y: 100%}.enemySprite--move-downLeft{--enemy-move-from-x: 100%;--enemy-move-from-y: -100%}.enemySprite--move-downRight{--enemy-move-from-x: -100%;--enemy-move-from-y: -100%}.enemySprite--attack-up{--enemy-attack-x: 0%;--enemy-attack-y: -20%}.enemySprite--attack-down{--enemy-attack-x: 0%;--enemy-attack-y: 3%}.enemySprite--attack-left{--enemy-attack-x: -20%;--enemy-attack-y: 0%}.enemySprite--attack-right{--enemy-attack-x: 20%;--enemy-attack-y: 0%}.enemySprite--attack-upLeft{--enemy-attack-x: -16%;--enemy-attack-y: -16%}.enemySprite--attack-upRight{--enemy-attack-x: 16%;--enemy-attack-y: -16%}.enemySprite--attack-downLeft{--enemy-attack-x: -16%;--enemy-attack-y: 3%}.enemySprite--attack-downRight{--enemy-attack-x: 16%;--enemy-attack-y: 3%}.enemySprite--up{background-image:url(../enemy-sprites/up.webp)}.enemySprite--down{background-image:url(../enemy-sprites/down.webp)}.enemySprite--left{background-image:url(../enemy-sprites/left.webp)}.enemySprite--right{background-image:url(../enemy-sprites/right.webp)}.enemySprite--upLeft{background-image:url(../enemy-sprites/upLeft.webp)}.enemySprite--upRight{background-image:url(../enemy-sprites/upRight.webp)}.enemySprite--downLeft{background-image:url(../enemy-sprites/downLeft.webp)}.enemySprite--downRight{background-image:url(../enemy-sprites/downRight.webp)}.enemySprite--bubbleBlue.enemySprite--up{background-image:url(../enemy-sprites/bubbleBlue/up.webp)}.enemySprite--bubbleBlue.enemySprite--down{background-image:url(../enemy-sprites/bubbleBlue/down.webp)}.enemySprite--bubbleBlue.enemySprite--left{background-image:url(../enemy-sprites/bubbleBlue/left.webp)}.enemySprite--bubbleBlue.enemySprite--right{background-image:url(../enemy-sprites/bubbleBlue/right.webp)}.enemySprite--bubbleBlue.enemySprite--upLeft{background-image:url(../enemy-sprites/bubbleBlue/upLeft.webp)}.enemySprite--bubbleBlue.enemySprite--upRight{background-image:url(../enemy-sprites/bubbleBlue/upRight.webp)}.enemySprite--bubbleBlue.enemySprite--downLeft{background-image:url(../enemy-sprites/bubbleBlue/downLeft.webp)}.enemySprite--bubbleBlue.enemySprite--downRight{background-image:url(../enemy-sprites/bubbleBlue/downRight.webp)}.enemySprite--bubbleYellow.enemySprite--up{background-image:url(../enemy-sprites/bubbleYellow/up.webp)}.enemySprite--bubbleYellow.enemySprite--down{background-image:url(../enemy-sprites/bubbleYellow/down.webp)}.enemySprite--bubbleYellow.enemySprite--left{background-image:url(../enemy-sprites/bubbleYellow/left.webp)}.enemySprite--bubbleYellow.enemySprite--right{background-image:url(../enemy-sprites/bubbleYellow/right.webp)}.enemySprite--bubbleYellow.enemySprite--upLeft{background-image:url(../enemy-sprites/bubbleYellow/upLeft.webp)}.enemySprite--bubbleYellow.enemySprite--upRight{background-image:url(../enemy-sprites/bubbleYellow/upRight.webp)}.enemySprite--bubbleYellow.enemySprite--downLeft{background-image:url(../enemy-sprites/bubbleYellow/downLeft.webp)}.enemySprite--bubbleYellow.enemySprite--downRight{background-image:url(../enemy-sprites/bubbleYellow/downRight.webp)}.enemySprite--ironGuy.enemySprite--up{background-image:url(../enemy-sprites/ironGuy/up.webp)}.enemySprite--ironGuy.enemySprite--down{background-image:url(../enemy-sprites/ironGuy/down.webp)}.enemySprite--ironGuy.enemySprite--left{background-image:url(../enemy-sprites/ironGuy/left.webp)}.enemySprite--ironGuy.enemySprite--right{background-image:url(../enemy-sprites/ironGuy/right.webp)}.enemySprite--ironGuy.enemySprite--upLeft{background-image:url(../enemy-sprites/ironGuy/upLeft.webp)}.enemySprite--ironGuy.enemySprite--upRight{background-image:url(../enemy-sprites/ironGuy/upRight.webp)}.enemySprite--ironGuy.enemySprite--downLeft{background-image:url(../enemy-sprites/ironGuy/downLeft.webp)}.enemySprite--ironGuy.enemySprite--downRight{background-image:url(../enemy-sprites/ironGuy/downRight.webp)}.enemySprite--samuraiBlue.enemySprite--up{background-image:url(../enemy-sprites/samuraiBlue/up.webp)}.enemySprite--samuraiBlue.enemySprite--down{background-image:url(../enemy-sprites/samuraiBlue/down.webp)}.enemySprite--samuraiBlue.enemySprite--left{background-image:url(../enemy-sprites/samuraiBlue/left.webp)}.enemySprite--samuraiBlue.enemySprite--right{background-image:url(../enemy-sprites/samuraiBlue/right.webp)}.enemySprite--samuraiBlue.enemySprite--upLeft{background-image:url(../enemy-sprites/samuraiBlue/upLeft.webp)}.enemySprite--samuraiBlue.enemySprite--upRight{background-image:url(../enemy-sprites/samuraiBlue/upRight.webp)}.enemySprite--samuraiBlue.enemySprite--downLeft{background-image:url(../enemy-sprites/samuraiBlue/downLeft.webp)}.enemySprite--samuraiBlue.enemySprite--downRight{background-image:url(../enemy-sprites/samuraiBlue/downRight.webp)}.enemySprite--shiberian.enemySprite--up{background-image:url(../enemy-sprites/shiberian/up.webp)}.enemySprite--shiberian.enemySprite--down{background-image:url(../enemy-sprites/shiberian/down.webp)}.enemySprite--shiberian.enemySprite--left{background-image:url(../enemy-sprites/shiberian/left.webp)}.enemySprite--shiberian.enemySprite--right{background-image:url(../enemy-sprites/shiberian/right.webp)}.enemySprite--shiberian.enemySprite--upLeft{background-image:url(../enemy-sprites/shiberian/upLeft.webp)}.enemySprite--shiberian.enemySprite--upRight{background-image:url(../enemy-sprites/shiberian/upRight.webp)}.enemySprite--shiberian.enemySprite--downLeft{background-image:url(../enemy-sprites/shiberian/downLeft.webp)}.enemySprite--shiberian.enemySprite--downRight{background-image:url(../enemy-sprites/shiberian/downRight.webp)}.enemySprite--tyranodon.enemySprite--up{background-image:url(../enemy-sprites/tyranodon/up.webp)}.enemySprite--tyranodon.enemySprite--down{background-image:url(../enemy-sprites/tyranodon/down.webp)}.enemySprite--tyranodon.enemySprite--left{background-image:url(../enemy-sprites/tyranodon/left.webp)}.enemySprite--tyranodon.enemySprite--right{background-image:url(../enemy-sprites/tyranodon/right.webp)}.enemySprite--tyranodon.enemySprite--upLeft{background-image:url(../enemy-sprites/tyranodon/upLeft.webp)}.enemySprite--tyranodon.enemySprite--upRight{background-image:url(../enemy-sprites/tyranodon/upRight.webp)}.enemySprite--tyranodon.enemySprite--downLeft{background-image:url(../enemy-sprites/tyranodon/downLeft.webp)}.enemySprite--tyranodon.enemySprite--downRight{background-image:url(../enemy-sprites/tyranodon/downRight.webp)}.enemySprite--bunbunBee.enemySprite--up{background-image:url(../enemy-sprites/bunbunBee/up.webp)}.enemySprite--bunbunBee.enemySprite--down{background-image:url(../enemy-sprites/bunbunBee/down.webp)}.enemySprite--bunbunBee.enemySprite--left{background-image:url(../enemy-sprites/bunbunBee/left.webp)}.enemySprite--bunbunBee.enemySprite--right{background-image:url(../enemy-sprites/bunbunBee/right.webp)}.enemySprite--bunbunBee.enemySprite--upLeft{background-image:url(../enemy-sprites/bunbunBee/upLeft.webp)}.enemySprite--bunbunBee.enemySprite--upRight{background-image:url(../enemy-sprites/bunbunBee/upRight.webp)}.enemySprite--bunbunBee.enemySprite--downLeft{background-image:url(../enemy-sprites/bunbunBee/downLeft.webp)}.enemySprite--bunbunBee.enemySprite--downRight{background-image:url(../enemy-sprites/bunbunBee/downRight.webp)}.enemySprite--honeKing.enemySprite--up{background-image:url(../enemy-sprites/honeKing/up.webp)}.enemySprite--honeKing.enemySprite--down{background-image:url(../enemy-sprites/honeKing/down.webp)}.enemySprite--honeKing.enemySprite--left{background-image:url(../enemy-sprites/honeKing/left.webp)}.enemySprite--honeKing.enemySprite--right{background-image:url(../enemy-sprites/honeKing/right.webp)}.enemySprite--honeKing.enemySprite--upLeft{background-image:url(../enemy-sprites/honeKing/upLeft.webp)}.enemySprite--honeKing.enemySprite--upRight{background-image:url(../enemy-sprites/honeKing/upRight.webp)}.enemySprite--honeKing.enemySprite--downLeft{background-image:url(../enemy-sprites/honeKing/downLeft.webp)}.enemySprite--honeKing.enemySprite--downRight{background-image:url(../enemy-sprites/honeKing/downRight.webp)}.enemySprite--honeRock.enemySprite--up{background-image:url(../enemy-sprites/honeRock/up.webp)}.enemySprite--honeRock.enemySprite--down{background-image:url(../enemy-sprites/honeRock/down.webp)}.enemySprite--honeRock.enemySprite--left{background-image:url(../enemy-sprites/honeRock/left.webp)}.enemySprite--honeRock.enemySprite--right{background-image:url(../enemy-sprites/honeRock/right.webp)}.enemySprite--honeRock.enemySprite--upLeft{background-image:url(../enemy-sprites/honeRock/upLeft.webp)}.enemySprite--honeRock.enemySprite--upRight{background-image:url(../enemy-sprites/honeRock/upRight.webp)}.enemySprite--honeRock.enemySprite--downLeft{background-image:url(../enemy-sprites/honeRock/downLeft.webp)}.enemySprite--honeRock.enemySprite--downRight{background-image:url(../enemy-sprites/honeRock/downRight.webp)}.enemySprite--yurarin.enemySprite--up{background-image:url(../enemy-sprites/yurarin/up.webp)}.enemySprite--yurarin.enemySprite--down{background-image:url(../enemy-sprites/yurarin/down.webp)}.enemySprite--yurarin.enemySprite--left{background-image:url(../enemy-sprites/yurarin/left.webp)}.enemySprite--yurarin.enemySprite--right{background-image:url(../enemy-sprites/yurarin/right.webp)}.enemySprite--yurarin.enemySprite--upLeft{background-image:url(../enemy-sprites/yurarin/upLeft.webp)}.enemySprite--yurarin.enemySprite--upRight{background-image:url(../enemy-sprites/yurarin/upRight.webp)}.enemySprite--yurarin.enemySprite--downLeft{background-image:url(../enemy-sprites/yurarin/downLeft.webp)}.enemySprite--yurarin.enemySprite--downRight{background-image:url(../enemy-sprites/yurarin/downRight.webp)}.enemySprite--yajuuKun.enemySprite--up{background-image:url(../enemy-sprites/yajuuKun/up.webp)}.enemySprite--yajuuKun.enemySprite--down{background-image:url(../enemy-sprites/yajuuKun/down.webp)}.enemySprite--yajuuKun.enemySprite--left{background-image:url(../enemy-sprites/yajuuKun/left.webp)}.enemySprite--yajuuKun.enemySprite--right{background-image:url(../enemy-sprites/yajuuKun/right.webp)}.enemySprite--yajuuKun.enemySprite--upLeft{background-image:url(../enemy-sprites/yajuuKun/upLeft.webp)}.enemySprite--yajuuKun.enemySprite--upRight{background-image:url(../enemy-sprites/yajuuKun/upRight.webp)}.enemySprite--yajuuKun.enemySprite--downLeft{background-image:url(../enemy-sprites/yajuuKun/downLeft.webp)}.enemySprite--yajuuKun.enemySprite--downRight{background-image:url(../enemy-sprites/yajuuKun/downRight.webp)}.enemySprite--miniDragon.enemySprite--up{background-image:url(../enemy-sprites/miniDragon/up.webp)}.enemySprite--miniDragon.enemySprite--down{background-image:url(../enemy-sprites/miniDragon/down.webp)}.enemySprite--miniDragon.enemySprite--left{background-image:url(../enemy-sprites/miniDragon/left.webp)}.enemySprite--miniDragon.enemySprite--right{background-image:url(../enemy-sprites/miniDragon/right.webp)}.enemySprite--miniDragon.enemySprite--upLeft{background-image:url(../enemy-sprites/miniDragon/upLeft.webp)}.enemySprite--miniDragon.enemySprite--upRight{background-image:url(../enemy-sprites/miniDragon/upRight.webp)}.enemySprite--miniDragon.enemySprite--downLeft{background-image:url(../enemy-sprites/miniDragon/downLeft.webp)}.enemySprite--miniDragon.enemySprite--downRight{background-image:url(../enemy-sprites/miniDragon/downRight.webp)}.enemySprite--mezamashin.enemySprite--up{background-image:url(../enemy-sprites/mezamashin/up.webp)}.enemySprite--mezamashin.enemySprite--down{background-image:url(../enemy-sprites/mezamashin/down.webp)}.enemySprite--mezamashin.enemySprite--left{background-image:url(../enemy-sprites/mezamashin/left.webp)}.enemySprite--mezamashin.enemySprite--right{background-image:url(../enemy-sprites/mezamashin/right.webp)}.enemySprite--mezamashin.enemySprite--upLeft{background-image:url(../enemy-sprites/mezamashin/upLeft.webp)}.enemySprite--mezamashin.enemySprite--upRight{background-image:url(../enemy-sprites/mezamashin/upRight.webp)}.enemySprite--mezamashin.enemySprite--downLeft{background-image:url(../enemy-sprites/mezamashin/downLeft.webp)}.enemySprite--mezamashin.enemySprite--downRight{background-image:url(../enemy-sprites/mezamashin/downRight.webp)}.enemySprite--moyai.enemySprite--up{background-image:url(../enemy-sprites/moyai/up.webp)}.enemySprite--moyai.enemySprite--down{background-image:url(../enemy-sprites/moyai/down.webp)}.enemySprite--moyai.enemySprite--left{background-image:url(../enemy-sprites/moyai/left.webp)}.enemySprite--moyai.enemySprite--right{background-image:url(../enemy-sprites/moyai/right.webp)}.enemySprite--moyai.enemySprite--upLeft{background-image:url(../enemy-sprites/moyai/upLeft.webp)}.enemySprite--moyai.enemySprite--upRight{background-image:url(../enemy-sprites/moyai/upRight.webp)}.enemySprite--moyai.enemySprite--downLeft{background-image:url(../enemy-sprites/moyai/downLeft.webp)}.enemySprite--moyai.enemySprite--downRight{background-image:url(../enemy-sprites/moyai/downRight.webp)}.enemySprite--dragonKing.enemySprite--up{background-image:url(../enemy-sprites/dragonKing/up.webp)}.enemySprite--dragonKing.enemySprite--down{background-image:url(../enemy-sprites/dragonKing/down.webp)}.enemySprite--dragonKing.enemySprite--left{background-image:url(../enemy-sprites/dragonKing/left.webp)}.enemySprite--dragonKing.enemySprite--right{background-image:url(../enemy-sprites/dragonKing/right.webp)}.enemySprite--dragonKing.enemySprite--upLeft{background-image:url(../enemy-sprites/dragonKing/upLeft.webp)}.enemySprite--dragonKing.enemySprite--upRight{background-image:url(../enemy-sprites/dragonKing/upRight.webp)}.enemySprite--dragonKing.enemySprite--downLeft{background-image:url(../enemy-sprites/dragonKing/downLeft.webp)}.enemySprite--dragonKing.enemySprite--downRight{background-image:url(../enemy-sprites/dragonKing/downRight.webp)}.enemySprite--bubbleBlue,.enemySprite--bubbleBlueRare,.enemySprite--bubbleYellow,.enemySprite--ironGuy,.enemySprite--samuraiBlue,.enemySprite--shiberian,.enemySprite--tyranodon,.enemySprite--bunbunBee,.enemySprite--honeKing,.enemySprite--honeRock,.enemySprite--yurarin,.enemySprite--yajuuKun,.enemySprite--miniDragon,.enemySprite--mezamashin,.enemySprite--moyai,.enemySprite--dragonKing{width:118%;height:118%}.enemySprite--rare{filter:drop-shadow(0 0 5px rgba(255,255,255,.98)) drop-shadow(0 0 11px rgba(255,218,52,.92)) drop-shadow(0 0 17px rgba(69,222,255,.78))}.enemySprite--poisoned{filter:drop-shadow(0 0 7px rgba(116,255,74,.82)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.enemySprite--sleeping{filter:drop-shadow(0 0 8px rgba(79,197,255,.9)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.enemySleepIndicator{position:absolute;top:3px;right:3px;z-index:9;color:#bdefff;font-size:clamp(10px,1.25vw,16px);font-weight:1000;line-height:1;letter-spacing:-1px;pointer-events:none;filter:drop-shadow(0 1px 0 #071a2b) drop-shadow(0 0 4px rgba(72,201,255,.95));transform-origin:right bottom;animation:enemySleepingZzz 1.1s ease-in-out infinite}@keyframes enemySleepingZzz{0%,to{opacity:.72;transform:scale(.78) translateY(1px)}50%{opacity:1;transform:scale(1.14) translateY(-2px)}}.enemySprite--panicked{filter:drop-shadow(0 0 8px rgba(186,255,72,.92)) drop-shadow(0 0 5px rgba(214,74,255,.68)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.enemySprite--slowed{filter:drop-shadow(0 0 8px rgba(72,204,255,.9)) drop-shadow(0 0 5px rgba(72,112,255,.58)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.enemySprite--shocked{filter:drop-shadow(0 0 8px rgba(255,213,58,.95)) drop-shadow(0 0 5px rgba(255,120,36,.62)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.enemySprite--locked{filter:drop-shadow(0 0 8px rgba(61,194,255,.95)) drop-shadow(0 0 5px rgba(40,91,255,.62)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.enemySprite--charmed{filter:drop-shadow(0 0 8px rgba(255,92,188,.95)) drop-shadow(0 0 5px rgba(255,160,214,.62)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.enemySprite--tricked{filter:drop-shadow(0 0 8px rgba(171,255,58,.92)) drop-shadow(0 0 5px rgba(98,214,42,.62)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.cardSprite{position:relative;z-index:1;display:block;width:82%;height:94%;background:url(../card-sprites/card-back.webp) center / contain no-repeat;image-rendering:pixelated;filter:drop-shadow(0 2px 0 rgba(0,0,0,.55))}.cardSprite--revealed{height:94%;object-fit:contain;background:none}.shopSprite{position:relative;z-index:1;display:grid;place-items:center;width:88%;height:66%;border:2px solid #ffe6a2;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#8f3dad,#431f55);color:#fff4c4;box-shadow:0 3px #00000073;font-size:clamp(7px,1.4vw,12px);font-weight:1000;letter-spacing:-.04em}.rockSprite{position:relative;z-index:1;display:block;width:76%;height:68%;border:2px solid #242a2a;border-radius:48% 42% 38% 46%/42% 46% 38% 44%;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.32),transparent 18%),linear-gradient(145deg,#a8aaa4 0 24%,#777c7b 25% 58%,#4b5252 59% 100%);box-shadow:inset -4px -5px #0003,0 5px #0006;transform:translateY(-2%)}.shopOverlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:14px;background:#040607d1}.shopPanel{width:min(94vw,920px);max-height:92vh;overflow:auto;padding:14px;border:2px solid #dca0ff;border-radius:10px;background:linear-gradient(180deg,#2b2030,#111516 38%);box-shadow:0 18px 60px #000000b3}.shopHeader,.shopSellPanel>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.shopHeader h2{margin:0;color:#ffe599;font-size:26px;letter-spacing:.12em}.shopHeader span,.shopSellPanel>header span{color:#d9d3c4;font-size:12px}.shopHeader strong{color:#ffe599;font-size:18px}.shopHeader button,.shopProduct button{border:1px solid #b890ca;border-radius:5px;background:linear-gradient(180deg,#55405e,#2d2432);color:#fff4cf;font-weight:900;cursor:pointer}.shopHeader button{padding:8px 12px}.shopShelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:12px}.shopProduct{position:relative;min-width:0;min-height:112px;display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-rows:auto 1fr auto;align-items:center;gap:4px 7px;padding:7px;border:1px solid rgba(216,193,226,.22);border-radius:7px;background:#0509099e;color:#c6c2bb}.shopProduct--current{border-color:#ffe28b9e;background:#372b1dbd}.shopProduct img{grid-row:1 / 4;width:56px;height:86px;object-fit:contain}.shopProduct>strong:not(.shopProductState){min-width:0;overflow:hidden;color:#fff3c6;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.shopProduct>span:not(.shopProductPosition){color:#ffe28a;font-size:11px;font-weight:900}.shopProduct button{padding:4px 6px;font-size:11px}.shopProduct button:disabled{opacity:.38;cursor:not-allowed}.shopProductPosition{position:absolute;top:3px;right:5px;color:#8d8980;font-size:9px}.shopProductState{grid-column:1 / -1;place-self:center;color:#77746d;font-size:14px}.shopColumnStates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:7px}.shopColumnStates span{padding:5px;border-radius:4px;background:#00000052;color:#d7c5de;font-size:10px;font-weight:900;text-align:center}.shopNotice{margin:8px 0 0;color:#ffac8e;font-size:12px;font-weight:900}.shopSellPanel{margin-top:12px;padding-top:10px;border-top:1px solid rgba(220,160,255,.34)}.shopSellPanel>header strong{color:#f4e8ff}.shopSellSlots{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin-top:8px}.shopSellSlots button{position:relative;min-width:0;height:104px;padding:4px;border:1px solid #69766a;border-radius:5px;background:#101716;color:#f3eccd;cursor:pointer}.shopSellSlots button:disabled{opacity:.34;cursor:default}.shopSellSlots img{width:100%;height:76px;object-fit:contain}.shopSellSlots button>span{position:absolute;top:3px;left:4px;z-index:1;font-size:10px}.shopSellSlots button>strong{display:block;color:#ffe28a;font-size:10px}.shopSellSlots i{font-size:10px;font-style:normal}.shopExitBar{display:none}.shopBody{min-height:0}@media(max-width:680px){.shopShelf{gap:4px}.shopProduct{min-height:120px;grid-template-columns:1fr;grid-template-rows:58px auto auto auto;padding:5px;text-align:center}.shopProduct img{grid-row:auto;width:100%;height:58px}.shopSellSlots{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:560px)and (orientation:portrait){.shopOverlay{align-items:stretch;padding:max(6px,env(safe-area-inset-top)) 6px max(6px,env(safe-area-inset-bottom));overflow:hidden}.shopPanel{width:100%;max-height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:8px;overflow:hidden}.shopHeader{position:relative;z-index:2;padding-bottom:8px;border-bottom:1px solid rgba(220,160,255,.34);background:#2b2030}.shopHeader h2{font-size:20px}.shopHeader button,.shopExitBar button{min-width:96px;min-height:46px;border:2px solid #d8b0e7;border-radius:8px;background:linear-gradient(180deg,#654c70,#34283a);color:#fff4cf;font:inherit;font-size:14px;font-weight:900;touch-action:manipulation}.shopBody{grid-row:2;overflow-y:auto;overscroll-behavior:contain;padding:0 2px 10px}.shopShelf{align-content:start}.shopExitBar{grid-row:3;display:grid;padding-top:8px;border-top:1px solid rgba(220,160,255,.34);background:#111516}.shopExitBar button{width:100%}}.attackEffect{position:absolute;left:50%;top:50%;z-index:5;display:block;width:132%;height:132%;transform:translate(-50%,-50%) scale(.62);background-position:center;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;pointer-events:none;animation:attackEffectPop .52s ease-out forwards}.attackEffect--fire{background-image:url(../effect-sprites/fireball.webp);filter:drop-shadow(0 0 8px rgba(255,88,18,.92)) drop-shadow(0 2px 0 rgba(0,0,0,.5))}.attackEffect--thunder{background-image:url(../effect-sprites/lightning.webp);filter:drop-shadow(0 0 8px rgba(85,196,255,.92)) drop-shadow(0 2px 0 rgba(0,0,0,.5))}.attackEffect--multiFire{background-image:url(../effect-sprites/multi-fire.webp);filter:drop-shadow(0 0 9px rgba(255,92,18,.94)) drop-shadow(0 2px 0 rgba(0,0,0,.5))}.attackEffect--multiThunder{background-image:url(../effect-sprites/multi-thunder.webp);filter:drop-shadow(0 0 9px rgba(78,191,255,.94)) drop-shadow(0 2px 0 rgba(0,0,0,.5))}.attackEffect--spear{background-image:url(../effect-sprites/spear.webp);filter:drop-shadow(0 0 9px rgba(255,190,52,.95)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--meteor,.attackEffect--multiMeteor{background-image:url(../effect-sprites/meteor.webp);filter:drop-shadow(0 0 10px rgba(184,70,255,.92)) drop-shadow(0 0 7px rgba(255,98,25,.86)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiMeteor{background-image:url(../effect-sprites/multi-meteor.webp)}.attackEffect--magicMissile{background-image:url(../effect-sprites/magic-missile.webp);filter:drop-shadow(0 0 9px rgba(255,68,80,.94)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--magicMissile10{background-image:url(../effect-sprites/magic-missile10.webp);filter:drop-shadow(0 0 9px rgba(222,76,255,.94)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--poison,.attackEffect--multiPoison{background-image:url(../effect-sprites/poison.webp);filter:drop-shadow(0 0 9px rgba(114,255,64,.92)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiPoison{background-image:url(../effect-sprites/multi-poison.webp)}.attackEffect--energyDrain{background-image:url(../effect-sprites/energy-drain.webp);filter:drop-shadow(0 0 10px rgba(67,192,255,.95)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--hyperPoison,.attackEffect--multiHyperPoison{background-image:url(../effect-sprites/hyper-poison.webp);filter:drop-shadow(0 0 10px rgba(218,74,255,.95)) drop-shadow(0 0 7px rgba(114,255,64,.55)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiHyperPoison{background-image:url(../effect-sprites/multi-hyper-poison.webp)}.attackEffect--sleep,.attackEffect--multiSleep{background-image:url(../effect-sprites/sleep.webp);filter:drop-shadow(0 0 10px rgba(78,201,255,.96)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiSleep{background-image:url(../effect-sprites/multi-sleep.webp)}.attackEffect--ultraSleep{background-image:url(../effect-sprites/ultra-sleep.webp);filter:drop-shadow(0 0 10px rgba(205,87,255,.96)) drop-shadow(0 0 7px rgba(78,201,255,.66)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--panic,.attackEffect--multiPanic{background-image:url(../effect-sprites/panic.webp);filter:drop-shadow(0 0 10px rgba(166,255,67,.96)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiPanic{background-image:url(../effect-sprites/multi-panic.webp)}.attackEffect--ultraPanic{background-image:url(../effect-sprites/ultra-panic.webp);filter:drop-shadow(0 0 10px rgba(211,75,255,.96)) drop-shadow(0 0 7px rgba(166,255,67,.62)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--slow,.attackEffect--multiSlow{background-image:url(../effect-sprites/slow.webp);filter:drop-shadow(0 0 10px rgba(70,202,255,.96)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiSlow{background-image:url(../effect-sprites/multi-slow.webp)}.attackEffect--ultraSlow{background-image:url(../effect-sprites/ultra-slow.webp);filter:drop-shadow(0 0 10px rgba(86,126,255,.96)) drop-shadow(0 0 7px rgba(205,87,255,.66)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiShock{background-image:url(../effect-sprites/multi-shock.webp);filter:drop-shadow(0 0 10px rgba(255,211,45,.96)) drop-shadow(0 0 6px rgba(255,120,30,.66)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--ultraShock{background-image:url(../effect-sprites/ultra-shock.webp);filter:drop-shadow(0 0 10px rgba(255,211,45,.96)) drop-shadow(0 0 7px rgba(211,75,255,.64)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--lock,.attackEffect--multiLock{background-image:url(../effect-sprites/lock.webp);filter:drop-shadow(0 0 10px rgba(61,194,255,.96)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiLock{background-image:url(../effect-sprites/multi-lock.webp)}.attackEffect--charm,.attackEffect--multiCharm{background-image:url(../effect-sprites/charm.webp);filter:drop-shadow(0 0 10px rgba(255,86,188,.96)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiCharm{background-image:url(../effect-sprites/multi-charm.webp)}.attackEffect--trick,.attackEffect--multiTrick{background-image:url(../effect-sprites/trick.webp);filter:drop-shadow(0 0 10px rgba(173,255,62,.96)) drop-shadow(0 0 6px rgba(87,214,42,.66)) drop-shadow(0 2px 0 rgba(0,0,0,.55))}.attackEffect--multiTrick{background-image:url(../effect-sprites/multi-trick.webp)}.goalSprite{position:relative;z-index:1;display:block;width:128%;height:112%;background:url(../goal-sprites/goal.webp) center / contain no-repeat;image-rendering:pixelated;filter:drop-shadow(0 3px 0 rgba(0,0,0,.58))}.stairsSprite{position:relative;z-index:1;display:block;width:128%;height:104%;background:url(../stair-sprites/stairs.webp) center / contain no-repeat;image-rendering:pixelated;filter:drop-shadow(0 3px 0 rgba(0,0,0,.58))}.dangerWarningMark{position:absolute;left:50%;top:43%;z-index:9;display:grid;place-items:center;width:54%;aspect-ratio:1;border:3px solid #2b1700;border-radius:50%;background:radial-gradient(circle at 50% 35%,#fff7a0 0 22%,#ffd52d 48%,#e17b00);color:#2b1700;font-size:clamp(34px,5vw,54px);font-weight:1000;line-height:.92;text-shadow:0 2px 0 rgba(255,255,255,.5),0 -1px 0 rgba(0,0,0,.35);box-shadow:0 0 0 3px #ffe74b61,0 0 18px #ffd026f2,0 5px #0000006b;pointer-events:none;transform:translate(-50%,-50%) scale(.72);animation:dangerWarningPop .62s ease-out forwards}.enemyBreathWarning{position:absolute;inset:5%;z-index:8;display:grid;place-items:center;border:3px solid rgba(255,86,38,.92);border-radius:10px;background:repeating-linear-gradient(-45deg,#ff43144d 0 8px,#ffb72b2e 8px 16px);color:#fff2a8;font-size:clamp(26px,4vw,42px);font-weight:1000;line-height:1;text-shadow:0 2px 0 #5d1200,0 0 10px rgba(255,64,16,.95);box-shadow:inset 0 0 16px #ff340c6b,0 0 12px #ff6016c7;pointer-events:none;animation:enemyBreathWarningPulse .76s ease-in-out infinite alternate}@keyframes enemyBreathWarningPulse{0%{opacity:.58;transform:scale(.96)}to{opacity:.96;transform:scale(1)}}.enemyHpBar{position:absolute;left:50%;bottom:5px;z-index:4;display:block;width:62%;height:6px;border:1px solid rgba(12,10,8,.92);border-radius:999px;background:#030403c2;box-shadow:0 1px #ffffff38,0 2px 4px #0000008c;overflow:hidden;pointer-events:none;transform:translate(-50%)}.enemyHpBarFill{display:block;width:100%;height:100%;border-radius:inherit;transform-origin:left center;transition:transform .18s ease-out,background-color .12s ease}.enemyHpBar--safe .enemyHpBarFill{background:linear-gradient(180deg,#9cff76,#38ce45 52%,#12902c)}.enemyHpBar--warning .enemyHpBarFill{background:linear-gradient(180deg,#fff17b,#f2c63d 54%,#b57716)}.enemyHpBar--danger .enemyHpBarFill{background:linear-gradient(180deg,#ff9182,#e93b32 54%,#9e161c)}.playerDamagePopup{position:absolute;left:50%;top:4px;z-index:8;color:#ff5148;font-size:22px;font-weight:900;line-height:1;letter-spacing:0;text-shadow:-2px -2px 0 #1a0604,2px -2px 0 #1a0604,-2px 2px 0 #1a0604,2px 2px 0 #1a0604,0 3px 4px rgba(0,0,0,.7);pointer-events:none;animation:playerDamagePopup .72s ease-out forwards}@keyframes playerDamagePopup{0%{opacity:0;transform:translate(-50%,-20%) scale(.82)}16%{opacity:1;transform:translate(-50%,-52%) scale(1.08)}to{opacity:0;transform:translate(-50%,-132%) scale(1)}}@keyframes dangerWarningPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.45) rotate(-12deg)}18%{opacity:1;transform:translate(-50%,-62%) scale(1.18) rotate(7deg)}48%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}to{opacity:0;transform:translate(-50%,-66%) scale(1.08) rotate(0)}}.gameOver{position:absolute;inset:12px;z-index:3;display:grid;place-items:center;border:2px solid rgba(255,218,152,.68);background:#0b0808c7;color:#ffd998;font-size:clamp(34px,8vw,72px);font-weight:900;letter-spacing:0;text-shadow:0 4px 0 #0a0d0d}.clearScreen{position:absolute;inset:12px;z-index:9;display:grid;place-items:center;align-content:center;gap:10px;border:2px solid rgba(126,210,255,.72);background:radial-gradient(circle at 50% 38%,rgba(56,162,255,.22),transparent 46%),#05080ad1;color:#dff5ff;font-size:clamp(34px,7vw,68px);font-weight:900;text-shadow:0 4px 0 #061014}.clearScreen img{width:min(78%,360px);image-rendering:pixelated;filter:drop-shadow(0 8px 0 rgba(0,0,0,.42))}.clearScreen small{color:#fff1a8;font-size:clamp(14px,2.5vw,22px);text-shadow:0 2px 0 #2d2105}.firstClearReward{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(92%,620px);gap:5px;border:1px solid rgba(255,225,121,.76);border-radius:8px;padding:8px;background:#143336e6;color:#fff4bd;font-size:clamp(11px,1.9vw,18px);line-height:1.25;text-shadow:0 2px 0 #14201b}.firstClearReward strong{grid-column:1 / -1;color:#ffda67;font-size:1.12em}.firstClearReward>span{min-width:0;border-radius:4px;padding:3px 4px;background:#ffffff14;overflow-wrap:anywhere}.outcomeTapScreen{width:auto;height:auto;margin:0;padding:0;font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.outcomeTapScreen:focus-visible{outline:4px solid #fff2a8;outline-offset:-7px}.gameOver.outcomeTapScreen{align-content:center;gap:12px}.gameOver.outcomeTapScreen small,.clearScreen .outcomeTapHint{color:#fff1a8;font-size:clamp(12px,2.8vw,20px);line-height:1.3;text-shadow:0 2px 0 #261b04}.pickupEffect{position:absolute;left:50%;top:50%;z-index:5;transform:translate(-50%,-50%);border:1px solid rgba(177,255,180,.82);border-radius:6px;padding:6px 10px;background:#134e2fdb;color:#dfffd2;font-size:clamp(13px,3vw,18px);font-weight:900;text-shadow:0 1px 0 #07110b;pointer-events:none;animation:cardPickup .48s ease-out forwards}.aimPrompt{position:absolute;left:50%;top:14px;z-index:8;display:grid;gap:3px;min-width:min(78%,360px);transform:translate(-50%);border:2px solid rgba(255,218,124,.86);border-radius:8px;padding:8px 12px;background:linear-gradient(180deg,#3f2711f2,#16110ef2),#19100b;color:#fff1bd;text-align:center;text-shadow:0 2px 0 #120704;box-shadow:0 5px #0006;pointer-events:none}.aimPrompt strong{font-size:13px}.aimPrompt span,.cardUseHint{color:#d8deca;font-size:12px;font-weight:800}.cardModal{position:absolute;inset:12px;z-index:8;display:grid;place-items:center;overflow:hidden;background:#040707b3}.cardModalPanel,.cardModalContent{box-sizing:border-box;width:min(86%,360px);height:min(100%,560px);min-height:0;display:grid;grid-template-rows:minmax(0,1fr);grid-auto-rows:auto;gap:10px;overflow:hidden;padding:10px;border:2px solid rgba(214,193,132,.8);border-radius:8px;background:linear-gradient(180deg,#252d2a,#111716);box-shadow:0 18px 34px #00000080,inset 0 0 0 2px #ffffff0f}.cardModalImage,.cardModalContent>img{width:100%;max-width:100%;height:100%;min-height:0;max-height:100%;object-fit:contain;border-radius:4px;image-rendering:pixelated}.cardModalTitle{color:#fff4ca;font-size:14px;line-height:1.25;text-align:center}.cardUseHint{text-align:center;text-shadow:0 1px 0 #050606}.cardModalActions{display:grid;grid-template-columns:auto 1fr 1fr;gap:8px;align-items:center}.cardModalActions--single{grid-template-columns:1fr}.cardModalActions span{display:grid;place-items:center;width:26px;height:26px;border:1px solid #7d8b75;border-radius:4px;color:#f8edbd;font-size:13px;font-weight:900}.cardModalActions button,.inventorySlot{font:inherit}.cardModalActions button{min-width:0;border:1px solid #7a876d;border-radius:5px;padding:7px 9px;background:linear-gradient(180deg,#354333,#1d2923);color:#f4edc6;cursor:pointer;font-size:12px;font-weight:800}.cardModal--pickupPreview{width:auto;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}.cardModalPanel--pickupPreview{width:min(90%,380px);height:min(96%,600px);grid-template-rows:auto minmax(0,1fr) auto auto auto;pointer-events:none}.pickupPreviewHeading,.pickupPreviewDismiss{color:#ffe694;font-weight:900;text-align:center;text-shadow:0 2px 0 #120704}.pickupPreviewHeading{font-size:18px}.pickupPreviewDismiss{padding:8px;border:1px solid #7a876d;border-radius:5px;background:linear-gradient(180deg,#354333,#1d2923);color:#f4edc6;font-size:12px}.replacePrompt{color:#f8edbd;font-size:12px;font-weight:900;text-align:center;text-shadow:0 1px 0 #050606}.replaceSlots{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}.replaceSlot{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1;border:1px solid #6f7b61;border-radius:4px;background:#121917;cursor:pointer;overflow:hidden}.replaceSlot span{position:absolute;left:1px;top:1px;z-index:1;display:grid;place-items:center;width:13px;height:13px;border-radius:3px;background:#040707d1;color:#f7edbe;font-size:9px;font-weight:900}.replaceSlot img{width:132%;height:132%;max-width:none;object-fit:contain;image-rendering:pixelated}.inventoryBar{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;padding:8px;border:1px solid #59645e;border-radius:8px;background:linear-gradient(180deg,#202824,#131918);box-shadow:inset 0 1px #ffffff14}.inventorySlot{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1;border:1px solid #435048;border-radius:5px;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 40%),#111716;cursor:pointer;overflow:hidden}.inventorySlot--filled{border-color:#879f68;background:#18221a}.inventorySlot img{width:120%;height:120%;max-width:none;object-fit:contain;image-rendering:pixelated}.inventorySlotNumber{position:absolute;left:2px;top:2px;z-index:1;display:grid;place-items:center;width:15px;height:15px;border-radius:3px;background:#040707c2;color:#f7edbe;font-size:10px;font-weight:900;line-height:1}.inventorySlotArtwork{position:relative;display:block;aspect-ratio:var(--art-crop-ratio, 1);overflow:hidden;pointer-events:none;transform:scale(var(--art-display-scale, 1))}.inventorySlotArtwork--portrait{width:auto;height:100%}.inventorySlotArtwork--landscape{width:100%;height:auto}.floorFade{position:absolute;inset:12px;z-index:6;background:#020303;pointer-events:none;animation:floorFade .22s ease-in-out forwards}.scanlines{position:absolute;inset:12px;z-index:4;background:repeating-linear-gradient(180deg,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 6px);mix-blend-mode:soft-light;pointer-events:none}.messageWindow{min-width:0;max-width:100%;overflow:hidden;display:flex;flex-wrap:wrap;gap:8px 14px;color:#d8deca;font-size:13px}.messageWindow span{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:keep-all}.devButton{border:1px solid #657166;border-radius:6px;background:#202922;color:#dce4d1;cursor:pointer;font-size:12px;padding:7px 9px}.devButton:hover{background:#2b382f}.devActions{display:flex;flex-shrink:0;gap:8px;justify-content:flex-end}@media(max-width:720px){.app{padding:10px}.app--stageSelect{align-content:start;padding:0}.stageDetailOverlay{align-items:start;padding:max(8px,env(safe-area-inset-top)) 8px max(96px,calc(env(safe-area-inset-bottom) + 72px));overflow:hidden}.stageDetailPanel{width:min(100%,680px);max-height:calc(100dvh - max(112px,calc(env(safe-area-inset-bottom) + 88px)));padding:10px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.stageDetailActions{position:sticky;bottom:0;z-index:8;margin:0 -10px -10px;padding:10px max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-top:2px solid rgba(255,231,150,.62);background:#09110ffa;box-shadow:0 -8px 18px #00000085}.stageDetailActions button{min-height:48px;padding-inline:18px;font-size:15px;touch-action:manipulation}.stageMedalBalance{min-width:84px;gap:7px;padding:5px 8px;font-size:9px}.stageMedalBalance strong{font-size:14px}.settingsStageBasics{grid-template-columns:1fr}.carryInPanel{width:58%;padding:6px}.carryInHeader,.carryInClearButton,.stageItemButton small{font-size:10px}.collectionPanel{padding:10px}.cardListFilters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;padding:8px}.cardListSearch{grid-column:1 / -1}.cardListOwnedOnly{justify-content:center;white-space:normal}.cardListResultCount,.cardListFilterReset{min-height:44px}.casinoOverlay{padding:8px}.casinoPanel{width:min(98vw,920px);padding:11px}.casinoHeader h2{font-size:20px}.casinoHeader p{font-size:10px}.casinoControlBar{grid-template-columns:1fr;gap:7px}.casinoControlBar .casinoBalance{padding-block:7px}.casinoExchangeBody{grid-template-columns:1fr}.casinoRecycleSection select,.casinoRecycleSection input[type=number]{font-size:16px;line-height:1.2;touch-action:manipulation}.casinoExchangeOfferGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.casinoRecycleConfirm{grid-template-columns:1fr 1fr}.casinoRecycleConfirm span{grid-column:1 / -1}.casinoProbabilitySettingsGrid,.casinoPayoutRateSetting{grid-template-columns:1fr}.casinoPayoutRateSetting>small{grid-column:auto}.casinoProbabilitySettings footer{flex-wrap:wrap}.casinoProbabilitySettings footer span{width:100%}.casinoIndividualCardWeights>header{align-items:start;flex-direction:column;gap:2px}.casinoIndividualCardWeights>div{grid-template-columns:1fr;max-height:280px}.casinoBetControls{grid-template-columns:auto minmax(0,1fr)}.casinoSpinButton{grid-column:1 / -1;min-height:48px}.casinoConfirm{flex-wrap:wrap}.casinoConfirm span{width:100%}.casinoMachine{padding:9px;border-width:3px;border-radius:13px}.casinoMachineTop strong{font-size:18px}.casinoReels{gap:5px;padding:6px}.casinoReel{height:150px;border-width:2px}.casinoReelColumn span{height:48px;font-size:30px}.casinoSlotSymbol img{width:34px;height:43px}.casinoSlotSymbol:not(.casinoSlotSymbol--card) img{width:43px;height:43px}.casinoMachineMessage{min-height:20px;font-size:15px}.casinoWinOverlay{inset:35px 8px 24px;padding:9px}.casinoWinOverlayHeader h3{font-size:18px}.casinoWinCards{grid-template-columns:repeat(2,minmax(0,1fr))}.casinoWinOverlay .casinoResult img{max-height:145px}.casinoResults>div{grid-template-columns:repeat(2,minmax(0,1fr))}.casinoPayoutList{grid-template-columns:repeat(2,minmax(0,1fr))}.settingsAppearanceGroup{grid-template-columns:1fr}.settingsAppearanceRates{max-height:160px}.collectionGrid{grid-template-columns:1fr}.collectionCard{grid-template-columns:78px 1fr auto;gap:8px;align-items:center}.collectionCard .collectionCardImageButton,.collectionCard img{width:78px;height:78px}.collectionCard div{align-content:center;overflow:hidden}.collectionCard strong,.collectionCard span{min-width:0;overflow-wrap:anywhere}.gameShell{padding:10px}.topPanel,.bottomPanel{grid-template-columns:1fr}.statusBar{grid-template-columns:repeat(2,minmax(0,1fr))}.statusBar span{min-width:0}.equipmentSlots{width:100%;justify-content:start}.equipmentSlot{width:52px}.equipmentSlotTooltip{right:0;left:auto;transform:none}.equipmentSlot:nth-child(-n+4) .equipmentSlotTooltip{right:auto;left:0}.playArea{grid-template-columns:1fr}.mapPanel{width:100%;min-width:0;padding:8px}.hpHud{top:10px;left:10px;min-width:168px}.hpHudLabel{font-size:15px}.hpHudValue{font-size:27px}.floorMapPanel{width:min(100%,320px);margin:0 auto;padding:8px}.devActions{justify-content:stretch}.devActions .devButton{flex:1}.scanlines,.gameOver{inset:8px}}.gameShell{width:min(100%,calc(100vw - 24px),1400px)}.topPanel{grid-template-columns:minmax(350px,.9fr) minmax(650px,1.55fr);padding:14px 17px;background:radial-gradient(circle at 6% 12%,rgba(255,255,255,.72),transparent 24%),linear-gradient(180deg,#fffbe0fc,#e7cf90fc)}.titleBlock{position:relative;isolation:isolate;padding:5px 10px 5px 17px}.titleBlock:before{content:"";position:absolute;z-index:-1;top:-13px;left:-8px;width:clamp(150px,19vw,265px);height:66px;background:url(../play-ui/decor/title-vine.webp) left center / contain no-repeat;opacity:.66;transform:rotate(-3deg);pointer-events:none}.titleBlock h1{font-size:clamp(31px,3.65vw,50px);line-height:1;white-space:nowrap;-webkit-text-stroke:1px rgba(9,49,48,.42)}.titleBlock p{position:relative;min-width:min(100%,260px);margin-top:11px;border:2px solid rgba(145,101,34,.58);border-radius:5px;padding:7px 22px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5) 13% 87%,transparent),linear-gradient(180deg,#fff0b9,#e7c779);box-shadow:inset 0 0 0 2px #ffffff6b,0 3px #64401233;clip-path:polygon(3% 0,97% 0,100% 50%,97% 100%,3% 100%,0 50%);text-align:center}.gameStatusGrid{grid-template-columns:minmax(172px,1.5fr) minmax(145px,1.25fr) minmax(84px,.72fr) minmax(104px,.9fr);gap:8px}.gameStatusCard{display:flex;align-items:center;justify-content:center;gap:7px;min-height:52px;border-color:#d1a74e;background:radial-gradient(circle at 50% 0,rgba(55,151,137,.28),transparent 52%),linear-gradient(180deg,#14615e,#073c3d)}.gameStatusCard--hp{display:grid}.gameStatusCard--medal:before,.gameStatusCard--attack:before,.gameStatusCard--floor:before,.gameStatusCard--turn:before,.gameStatusCard--enemies:before,.gameStatusCard--cards:before{content:"";flex:0 0 clamp(23px,2.4vw,34px);width:clamp(23px,2.4vw,34px);aspect-ratio:1;background-position:center;background-repeat:no-repeat;background-size:contain;filter:drop-shadow(0 2px 0 rgba(0,0,0,.42))}.gameStatusCard--medal:before{background-image:url(../play-ui/icons/medal.webp)}.gameStatusCard--attack:before{background-image:url(../play-ui/icons/attack.webp)}.gameStatusCard--floor:before{background-image:url(../play-ui/icons/floor.webp)}.gameStatusCard--turn:before{background-image:url(../play-ui/icons/turn.webp)}.gameStatusCard--enemies:before{background-image:url(../play-ui/icons/enemies.webp)}.gameStatusCard--cards:before{background-image:url(../play-ui/icons/cards.webp)}.mapPanel,.gameShell--replay .mapPanel{background:linear-gradient(180deg,rgba(255,248,210,.17),transparent 16%),#173d3b}.board{background:#123533}.tile--wall{background:linear-gradient(180deg,#ffffff0f,#00000024),url(../dungeon-tiles/fantasy/wall-base.webp) center / cover no-repeat;box-shadow:inset 0 0 0 1px #bddac21f,inset 0 -5px 9px #0415163b}.tile--unexplored{background:linear-gradient(#031415c7,#020c0ee0),url(../dungeon-tiles/fantasy/wall-base.webp) center / cover no-repeat;box-shadow:inset 0 0 0 1px #507d7126}.tile--variant-1{--fantasy-floor-texture: url(../dungeon-tiles/fantasy/floor-1.webp)}.tile--variant-2{--fantasy-floor-texture: url(../dungeon-tiles/fantasy/floor-2.webp)}.tile--variant-3{--fantasy-floor-texture: url(../dungeon-tiles/fantasy/floor-3.webp)}.tile--variant-4{--fantasy-floor-texture: url(../dungeon-tiles/fantasy/floor-4.webp)}.tile--floor,.tile--corridor,.tile--player,.tile--enemy,.tile--card,.tile--shop,.tile--stairs,.tile--rock{background:linear-gradient(135deg,rgba(255,255,255,.12),transparent 40%),var(--fantasy-floor-texture) center / cover no-repeat,#d5b978}.tile--corridor{filter:saturate(.86) brightness(.95)}.tile--dimmed{filter:brightness(.5) saturate(.66)}.tile--slippery{background:linear-gradient(135deg,rgba(236,255,255,.82),transparent 36%),linear-gradient(315deg,rgba(38,174,255,.52),transparent 48%),var(--fantasy-floor-texture) center / cover no-repeat,#72bfce;filter:saturate(1.22) brightness(1.08)}.tile--slippery:after{content:"";position:absolute;inset:1px;border:2px solid rgba(178,250,255,.9);background:linear-gradient(135deg,transparent 0 20%,rgba(238,255,255,.82) 21% 25%,transparent 26% 56%,rgba(77,218,255,.65) 57% 61%,transparent 62%);box-shadow:inset 0 0 8px #159ed8c7,0 0 3px #a6f7ffbf;pointer-events:none}.tile--slippery.tile--dimmed{filter:brightness(.72) saturate(1.12)}.playerSprite,.enemySprite{filter:drop-shadow(1px 0 0 rgba(17,49,45,.88)) drop-shadow(-1px 0 0 rgba(17,49,45,.88)) drop-shadow(0 1px 0 rgba(17,49,45,.88)) drop-shadow(0 -1px 0 rgba(255,248,206,.58)) drop-shadow(0 4px 2px rgba(0,0,0,.46))}@media(max-width:1040px){.topPanel{grid-template-columns:minmax(280px,.78fr) minmax(560px,1.55fr)}.gameStatusGrid{grid-template-columns:minmax(150px,1.4fr) minmax(125px,1.1fr) minmax(76px,.7fr) minmax(92px,.82fr)}}@media(max-width:940px){.topPanel{grid-template-columns:1fr}.titleBlock h1{white-space:normal}.gameStatusGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.titleBlock{padding-left:8px}.titleBlock:before{width:130px;height:48px}.titleBlock p{min-width:0}.gameStatusGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.gameStatusCard{min-height:42px;gap:4px}.gameStatusCard--medal:before,.gameStatusCard--attack:before,.gameStatusCard--floor:before,.gameStatusCard--turn:before,.gameStatusCard--enemies:before,.gameStatusCard--cards:before{flex-basis:22px;width:22px}}@keyframes playerMoveUp{0%{transform:translateY(0)}to{transform:translateY(calc(var(--player-step) * -1))}}@keyframes playerMoveDown{0%{transform:translateY(0)}to{transform:translateY(var(--player-step))}}@keyframes playerMoveLeft{0%{transform:translate(0)}to{transform:translate(calc(var(--player-step) * -1))}}@keyframes playerMoveRight{0%{transform:translate(0)}to{transform:translate(var(--player-step))}}@keyframes playerMoveUpLeft{0%{transform:translate(0)}to{transform:translate(calc(var(--player-step) * -1),calc(var(--player-step) * -1))}}@keyframes playerMoveUpRight{0%{transform:translate(0)}to{transform:translate(var(--player-step),calc(var(--player-step) * -1))}}@keyframes playerMoveDownLeft{0%{transform:translate(0)}to{transform:translate(calc(var(--player-step) * -1),var(--player-step))}}@keyframes playerMoveDownRight{0%{transform:translate(0)}to{transform:translate(var(--player-step),var(--player-step))}}@keyframes boardMoveUp{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(var(--board-x),calc(var(--board-y) + var(--board-step-y)))}}@keyframes boardMoveDown{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(var(--board-x),calc(var(--board-y) - var(--board-step-y)))}}@keyframes boardMoveLeft{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(calc(var(--board-x) + var(--board-step-x)),var(--board-y))}}@keyframes boardMoveRight{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(calc(var(--board-x) - var(--board-step-x)),var(--board-y))}}@keyframes boardMoveUpLeft{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(calc(var(--board-x) + var(--board-step-x)),calc(var(--board-y) + var(--board-step-y)))}}@keyframes boardMoveUpRight{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(calc(var(--board-x) - var(--board-step-x)),calc(var(--board-y) + var(--board-step-y)))}}@keyframes boardMoveDownLeft{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(calc(var(--board-x) + var(--board-step-x)),calc(var(--board-y) - var(--board-step-y)))}}@keyframes boardMoveDownRight{0%{transform:translate(var(--board-x),var(--board-y))}to{transform:translate(calc(var(--board-x) - var(--board-step-x)),calc(var(--board-y) - var(--board-step-y)))}}@keyframes playerBumpUp{0%{transform:translateY(0)}48%{transform:translateY(-34%)}to{transform:translateY(0)}}@keyframes playerBumpDown{0%{transform:translateY(0)}48%{transform:translateY(34%)}to{transform:translateY(0)}}@keyframes playerBumpLeft{0%{transform:translate(0)}48%{transform:translate(-34%)}to{transform:translate(0)}}@keyframes playerBumpRight{0%{transform:translate(0)}48%{transform:translate(34%)}to{transform:translate(0)}}@keyframes playerBumpUpLeft{0%{transform:translate(0)}48%{transform:translate(-28%,-28%)}to{transform:translate(0)}}@keyframes playerBumpUpRight{0%{transform:translate(0)}48%{transform:translate(28%,-28%)}to{transform:translate(0)}}@keyframes playerBumpDownLeft{0%{transform:translate(0)}48%{transform:translate(-28%,28%)}to{transform:translate(0)}}@keyframes playerBumpDownRight{0%{transform:translate(0)}48%{transform:translate(28%,28%)}to{transform:translate(0)}}@keyframes playerSlash{0%{opacity:0;transform:translate(-50%,-50%) scale(.55) rotate(-3deg)}24%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.04) rotate(2deg)}}@keyframes enemyAttack{0%{transform:translate(0) scale(1)}42%{transform:translate(var(--enemy-attack-x, 0%),var(--enemy-attack-y, 0%)) scale(1.08)}to{transform:translate(0) scale(1)}}@keyframes enemyIdle{0%,to{transform:translateY(0) rotate(0) scale(1)}50%{transform:translateY(-1px) rotate(1deg) scale(1.012,.99)}}@keyframes enemyMoveIn{0%{transform:translate(var(--enemy-move-from-x, 0%),var(--enemy-move-from-y, 0%))}to{transform:translate(0)}}@keyframes cardPickup{0%{opacity:0;transform:translate(-50%,-38%) scale(.72)}22%{opacity:1}to{opacity:0;transform:translate(-50%,-120%) scale(1.08)}}@keyframes attackEffectPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.38) rotate(-8deg)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.12) rotate(3deg)}58%{opacity:1;transform:translate(-50%,-50%) scale(.96) rotate(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.26) rotate(6deg)}}@keyframes floorFade{0%{opacity:0}45%{opacity:.95}to{opacity:0}}@keyframes hpDangerPulse{0%,to{opacity:1;filter:brightness(1.18)}50%{opacity:.34;filter:brightness(.8)}}@keyframes hpNumberPulse{0%,to{color:#fff;transform:scale(1)}50%{color:#ff3b2f;transform:scale(1.04)}}.app:has(.gameShell){background:radial-gradient(circle at 50% 8%,rgba(255,244,190,.3),transparent 38%),linear-gradient(180deg,#31594b,#172e29 72%)}.gameShell{width:min(100%,calc(100vw - 24px),1200px);gap:10px;padding:12px;border:3px solid #c7a75b;border-radius:14px;background:linear-gradient(180deg,#fff8d3f7,#e0cf99fa),#eadcae;box-shadow:0 22px 60px #0000006b,inset 0 0 0 2px #ffffffb8,inset 0 0 0 5px #79572033}.topPanel{grid-template-columns:minmax(260px,.82fr) minmax(590px,1.65fr);gap:10px 16px;border:2px solid #b88b3b;border-radius:10px;padding:11px 13px;background:linear-gradient(180deg,#fffbdefa,#e8d399fa);box-shadow:inset 0 0 0 2px #ffffff94,0 3px #5c3c123d}.titleBlock h1{color:#164a49;font-size:clamp(25px,3.25vw,39px);letter-spacing:-.025em;text-shadow:0 2px 0 #fff6ce,2px 3px 0 rgba(53,38,18,.24)}.titleBlock p{width:fit-content;margin-top:8px;border:1px solid rgba(143,103,39,.48);border-radius:999px;padding:5px 12px;background:#fff6c9c2;color:#4b492b;font-size:14px;font-weight:800}.gameStatusGrid{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(130px,1.1fr) minmax(86px,.7fr) minmax(96px,.8fr);gap:7px;min-width:0}.gameStatusCard{min-width:0;min-height:47px;display:grid;place-items:center;border:2px solid #c49b4c;border-radius:9px;padding:7px 9px;background:linear-gradient(180deg,#145857,#0a3d3e);box-shadow:inset 0 0 0 2px #ffffff29,0 2px #3f270a47;color:#fff3c5;font-size:clamp(13px,1.45vw,18px);font-weight:900;text-align:center;text-shadow:0 2px 0 #082b2c;white-space:nowrap}.gameStatusCard--hp{padding:0}.gameStatusCard--hp .hpHud{position:relative;inset:auto;z-index:1;width:100%;min-width:0;grid-template-columns:auto 1fr;grid-template-rows:auto 9px;column-gap:7px;padding:6px 9px 7px}.gameStatusCard--hp .hpHudLabel{color:#ffeaa8;font-size:14px;text-shadow:0 2px 0 #082b2c}.gameStatusCard--hp .hpHudValue{justify-self:end;font-size:clamp(20px,2.2vw,29px);text-shadow:0 2px 0 #082b2c}.gameStatusCard--hp .hpHudTrack{height:9px}.headerAuxiliary{grid-column:1 / -1;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px}.statusEffects{min-width:0;display:flex;flex:1;flex-wrap:wrap;gap:5px}.statusEffects:empty{display:none}.statusEffects span{border:1px solid #9c793f;border-radius:999px;padding:4px 8px;background:#fff7cfd6;color:#355044;font-size:11px;font-weight:900;white-space:nowrap}.playArea,.gameShell--replay .playArea{display:block}.mapPanel,.gameShell--replay .mapPanel{width:100%;max-width:none;min-width:0;aspect-ratio:16 / 10;margin:0;padding:10px;border:3px solid #b58a42;border-radius:11px;background:linear-gradient(180deg,rgba(255,245,190,.12),transparent 18%),#182724;box-shadow:inset 0 0 0 3px #ffffff2e,inset 0 0 28px #00000057,0 3px #58381040}.board{--board-x: .9%;--board-y: -15%;width:98.2143%;height:142.8571%;background:#10201d}.mapPanel>.floorMapPanel{position:absolute;z-index:20;top:16px;left:16px;width:clamp(116px,14vw,168px);gap:6px;padding:8px;border:2px solid #d5b567;border-radius:9px;background:linear-gradient(180deg,#155b49f5,#07302bf7);box-shadow:inset 0 0 0 2px #ffffff21,0 5px 14px #0000005c;pointer-events:none}.mapPanel>.floorMapPanel .floorMapHeader{color:#fff0b6;font-size:9px}.mapPanel>.floorMapPanel .floorMap{border-color:#d5b567;background:#061814}.mapPanel>.floorMapPanel .floorMapLegend{gap:2px}.mapPanel>.floorMapPanel .legendItem{height:15px;border-radius:3px;font-size:8px}.inventoryBar{gap:7px;border:2px solid #b58a42;border-radius:9px;padding:7px;background:linear-gradient(180deg,#315248,#17342e);box-shadow:inset 0 0 0 2px #ffffff1a,0 2px #58381033}.inventorySlot{border-color:#8e9b78;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 42%),#122a25}.inventorySlot--filled{border-color:#e1bd65;background:#1e3b2d}.bottomPanel{border:2px solid #b58a42;border-radius:9px;background:linear-gradient(180deg,#fff4c6,#dbc58d);box-shadow:inset 0 0 0 2px #fff6}.messageWindow{color:#30453b;font-weight:700}.devButton{border-color:#8e6a32;background:#17514b;color:#fff1bd;font-weight:800}.devButton:hover{background:#216a60}@media(max-width:940px){.topPanel{grid-template-columns:1fr}.gameStatusGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.headerAuxiliary{justify-content:space-between}}@media(max-width:720px){.app:has(.gameShell){padding:6px}.gameShell{width:100%;padding:7px;border-width:2px;border-radius:9px}.topPanel{padding:8px}.titleBlock h1{font-size:clamp(24px,8vw,32px)}.gameStatusGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.gameStatusCard{min-height:40px;font-size:13px}.headerAuxiliary{align-items:flex-start;flex-direction:column}.statusEffects{width:100%}.mapPanel,.gameShell--replay .mapPanel{aspect-ratio:8 / 7;padding:6px}.board{--board-x: -13.6364%;width:137.5%;height:142.8571%}.mapPanel>.floorMapPanel{top:10px;left:10px;width:clamp(88px,25vw,118px);padding:5px}.mapPanel>.floorMapPanel .floorMapLegend{display:none}.inventoryBar{gap:3px;padding:4px}.bottomPanel{gap:7px;padding:7px}}.gameShell{width:min(100%,calc(100vw - 12px),1400px)}.topPanel{position:relative;grid-template-columns:minmax(315px,.88fr) minmax(0,1.62fr);gap:9px 18px;padding:14px 17px 11px}.topPanel>.audioSettingsControl{position:absolute;z-index:65;top:-14px;right:10px}.topPanel>.audioSettingsControl>summary{min-width:58px;padding:5px 9px;border:2px solid #c8a459;background:linear-gradient(180deg,#225f58,#0c403f);color:#fff1bd}.titleBlock{min-width:0;align-self:center;padding:4px 5px 4px 14px}.titleBlock h1{max-width:100%;overflow:visible;color:#164a49;font-family:Arial Rounded MT Bold,Hiragino Maru Gothic ProN,Hiragino Kaku Gothic ProN,Trebuchet MS,sans-serif;font-size:clamp(25px,2.9vw,43px);font-weight:1000;line-height:1.05;letter-spacing:-.055em;white-space:nowrap;-webkit-text-stroke:.7px rgba(8,52,50,.45);text-shadow:0 2px 0 #fff6cf,2px 3px 0 rgba(60,40,16,.22)}.titleBlock p{box-sizing:border-box;width:min(100%,285px);min-width:0;overflow:hidden;margin-top:10px;padding:7px 18px;color:#34483e;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;font-size:14px;font-weight:900;line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap}.gameStatusGrid{grid-template-columns:minmax(172px,1.52fr) minmax(136px,1.18fr) minmax(76px,.68fr) minmax(92px,.82fr);grid-auto-rows:52px;gap:8px}.gameStatusCard{min-width:0;min-height:0;display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;gap:6px;padding:6px 8px;overflow:hidden;font-family:Arial Rounded MT Bold,Hiragino Kaku Gothic ProN,Trebuchet MS,sans-serif;line-height:1;white-space:nowrap}.gameStatusLabel{flex:0 0 auto;color:#ffe9a3;font-size:clamp(10px,1vw,13px);font-weight:900;letter-spacing:-.02em}.gameStatusValue{min-width:0;overflow:hidden;color:#fff9dc;font-size:clamp(15px,1.6vw,23px);font-weight:1000;letter-spacing:-.035em;text-overflow:ellipsis}.gameStatusCard--level .gameStatusValue,.gameStatusCard--attack .gameStatusValue{font-size:clamp(17px,1.75vw,25px)}.gameStatusCard--medal:before,.gameStatusCard--attack:before,.gameStatusCard--floor:before,.gameStatusCard--turn:before,.gameStatusCard--enemies:before,.gameStatusCard--cards:before{flex:0 0 clamp(22px,2.15vw,31px);width:clamp(22px,2.15vw,31px)}.gameStatusCard--hp{display:grid;padding:0}.gameStatusCard--hp .hpHud{grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto 10px;column-gap:8px;padding:5px 10px 7px}.gameStatusCard--hp .hpHudLabel{font-family:Arial Rounded MT Bold,Trebuchet MS,sans-serif;font-size:13px}.gameStatusCard--hp .hpHudValue{overflow:hidden;font-family:Arial Rounded MT Bold,Trebuchet MS,sans-serif;font-size:clamp(21px,2.15vw,31px);letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap}.headerAuxiliary{margin-top:-1px}.mapPanel>.floorMapPanel{top:18px;left:18px;width:clamp(178px,18vw,222px);gap:7px;padding:9px;border-color:#f1cc70e6;background:linear-gradient(180deg,#196456a8,#042a2794);box-shadow:inset 0 0 0 2px #ffffff1f,0 6px 17px #00000040;-webkit-backdrop-filter:blur(1px) saturate(1.08);backdrop-filter:blur(1px) saturate(1.08)}.mapPanel>.floorMapPanel .floorMapHeader{color:#fff1ba;font-size:10px}.mapPanel>.floorMapPanel .floorMap{border-color:#f6d278d6;background:#02141452;box-shadow:inset 0 0 14px #0003}.mapPanel>.floorMapPanel .floorMapCell{background:#010c0d29}.mapPanel>.floorMapPanel .floorMapCell--wall{background:#0c272633}.mapPanel>.floorMapPanel .floorMapCell--unexplored{background:#0006081c}.mapPanel>.floorMapPanel .floorMapCell--floor{background:#a9ba7dc7}.mapPanel>.floorMapPanel .floorMapCell--corridor{background:#cac485db}.mapPanel>.floorMapPanel .floorMapCell--floor.floorMapCell--mappedOnly{background:#76875f94}.mapPanel>.floorMapPanel .floorMapCell--corridor.floorMapCell--mappedOnly{background:#9794669e}.mapPanel>.floorMapPanel .floorMapCell--player{background:#49b5ff;box-shadow:0 0 0 1px #e8f6ff}.mapPanel>.floorMapPanel .floorMapCell--enemy{background:#fa4d3d;box-shadow:0 0 0 1px #ffe4d7}.mapPanel>.floorMapPanel .floorMapCell--card{background:#55ea85;box-shadow:0 0 0 1px #dfc}.mapPanel>.floorMapPanel .floorMapCell--shop{background:#c98cff;box-shadow:0 0 0 1px #f2d7ff}.mapPanel>.floorMapPanel .floorMapCell--rock{background:#3f4748;box-shadow:inset 0 0 0 1px #9ba4a2}.mapPanel>.floorMapPanel .floorMapCell--stairs{background:#ffd54f;box-shadow:0 0 0 1px #fff1a8}.mapPanel>.floorMapPanel .floorMapCell--goal{background:#7cdcff;box-shadow:0 0 0 1px #e8fbff,0 0 6px #7cdcffd9}.mapPanel>.floorMapPanel .floorMapLegend{gap:3px}.mapPanel>.floorMapPanel .legendItem{height:18px;font-size:9px}@media(max-width:1120px){.topPanel{grid-template-columns:minmax(300px,.82fr) minmax(0,1.58fr);gap:8px 12px}.titleBlock h1{font-size:28px}.gameStatusGrid{grid-template-columns:minmax(155px,1.45fr) minmax(124px,1.1fr) minmax(72px,.66fr) minmax(86px,.78fr);gap:6px}.gameStatusCard{gap:4px;padding-inline:6px}.gameStatusValue{font-size:16px}}@media(max-width:860px){.topPanel{grid-template-columns:1fr}.titleBlock h1{font-size:clamp(29px,6vw,40px)}.titleBlock p{width:min(100%,340px)}.gameStatusGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.titleBlock h1{font-size:clamp(24px,7.5vw,34px);letter-spacing:-.065em}.gameStatusGrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:44px}.gameStatusLabel{font-size:10px}.gameStatusValue{font-size:15px}.mapPanel>.floorMapPanel{top:10px;left:10px;width:clamp(132px,31vw,172px);padding:6px}.mapPanel>.floorMapPanel .floorMapLegend{display:none}}.topPanel--compact{grid-template-columns:minmax(0,1fr);padding:12px 17px 10px}.topPanel--compact .gameStatusGrid--compact{grid-template-areas:"hp medal level attack" "hp floor turn empty";grid-template-columns:minmax(250px,2fr) repeat(3,minmax(120px,1fr));grid-template-rows:repeat(2,minmax(54px,auto));gap:8px}.topPanel--compact .gameStatusCard{min-width:120px;min-height:54px;gap:clamp(4px,.65vw,8px);padding:7px clamp(7px,.85vw,12px);overflow:visible}.topPanel--compact .gameStatusLabel{font-size:clamp(11px,1.2vw,16px)}.topPanel--compact .gameStatusValue,.topPanel--compact .gameStatusCard--level .gameStatusValue,.topPanel--compact .gameStatusCard--attack .gameStatusValue{overflow:visible;font-size:clamp(16px,2vw,24px);text-overflow:clip}.topPanel--compact .gameStatusCard--medal:before,.topPanel--compact .gameStatusCard--attack:before,.topPanel--compact .gameStatusCard--floor:before,.topPanel--compact .gameStatusCard--turn:before{flex-basis:clamp(16px,1.8vw,24px);width:clamp(16px,1.8vw,24px)}.topPanel--compact .gameStatusCard--hp{grid-area:hp;min-width:250px;min-height:116px;padding:0}.topPanel--compact .gameStatusCard--medal{grid-area:medal}.topPanel--compact .gameStatusCard--level{grid-area:level}.topPanel--compact .gameStatusCard--attack{grid-area:attack}.topPanel--compact .gameStatusCard--floor{grid-area:floor}.topPanel--compact .gameStatusCard--turn{grid-area:turn}.topPanel--compact .gameStatusCard--hp .hpHud{grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto 13px;column-gap:11px;padding:7px 13px 9px}.topPanel--compact .gameStatusCard--hp .hpHudLabel{font-size:clamp(16px,1.5vw,21px)}.topPanel--compact .gameStatusCard--hp .hpHudValue{overflow:visible;font-size:clamp(32px,4vw,46px);text-overflow:clip}.topPanel--compact .gameStatusCard--hp .hpHudTrack{height:13px}.mapPanel>.floorMapPanel{top:18px;left:18px;width:clamp(300px,36vw,440px);gap:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}.mapPanel>.floorMapPanel .floorMap{border:0;border-radius:0;background:transparent;box-shadow:none}.mapPanel>.floorMapPanel .floorMapCell--wall,.mapPanel>.floorMapPanel .floorMapCell--unexplored{background:transparent}@media(max-width:900px){.topPanel--compact .gameStatusGrid--compact{grid-template-areas:"hp hp hp" "medal level attack" "floor turn empty";grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(76px,auto) repeat(2,minmax(52px,auto))}.topPanel--compact .gameStatusCard{min-width:0}.topPanel--compact .gameStatusCard--hp{min-width:0;min-height:76px}}@media(max-width:560px){.topPanel--compact{padding:9px 8px 7px}.topPanel--compact .gameStatusGrid--compact{grid-template-areas:"hp hp" "medal level" "attack floor" "turn turn";grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(72px,auto) repeat(3,minmax(50px,auto));gap:5px}.topPanel--compact .gameStatusCard{min-height:50px;gap:4px;padding:6px}.topPanel--compact .gameStatusLabel{font-size:clamp(10px,2.8vw,13px)}.topPanel--compact .gameStatusValue,.topPanel--compact .gameStatusCard--level .gameStatusValue,.topPanel--compact .gameStatusCard--attack .gameStatusValue{font-size:clamp(16px,4.6vw,21px)}.topPanel--compact .gameStatusCard--medal:before,.topPanel--compact .gameStatusCard--attack:before,.topPanel--compact .gameStatusCard--floor:before,.topPanel--compact .gameStatusCard--turn:before{flex-basis:clamp(16px,5vw,22px);width:clamp(16px,5vw,22px)}.topPanel--compact .gameStatusCard--hp .hpHud{grid-template-rows:auto 9px;column-gap:4px;padding:5px 6px 7px}.topPanel--compact .gameStatusCard--hp .hpHudLabel{font-size:clamp(10px,2.5vw,14px)}.topPanel--compact .gameStatusCard--hp .hpHudValue{font-size:clamp(28px,8vw,38px)}.topPanel--compact .gameStatusCard--hp .hpHudTrack{height:9px}.mapPanel>.floorMapPanel{top:10px;left:10px;width:clamp(220px,48vw,300px)}}@media(max-width:380px){.topPanel--compact .gameStatusGrid--compact{grid-template-areas:"hp" "medal" "level" "attack" "floor" "turn";grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(72px,auto) repeat(5,minmax(48px,auto))}}.app:has(.gameShell:not(.gameShell--replay)){height:100vh;height:100dvh;min-height:0;padding:6px;overflow:hidden}.gameShell:not(.gameShell--replay){height:auto;max-height:calc(100dvh - 12px);grid-template-rows:auto auto auto auto;overflow:hidden}.gameShell:not(.gameShell--replay) .playArea{min-height:0;height:auto;display:block;overflow:hidden}.gameShell:not(.gameShell--replay) .mapPanel{width:100%;max-width:none;height:auto;max-height:none;aspect-ratio:16 / 10}@media(min-width:1100px)and (max-height:1100px){.gameShell:not(.gameShell--replay){gap:5px;padding:6px}.gameShell:not(.gameShell--replay) .topPanel--compact{padding:5px 9px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusGrid--compact{grid-template-rows:repeat(2,minmax(38px,auto));gap:5px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard{min-height:38px;gap:4px;padding:3px 6px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp{min-height:81px;padding:0}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusLabel{font-size:clamp(10px,1vw,13px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--level .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack .gameStatusValue{font-size:clamp(14px,1.55vw,21px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--medal:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--floor:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--turn:before{flex-basis:clamp(16px,1.45vw,21px);width:clamp(16px,1.45vw,21px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHud{grid-template-rows:auto 9px;padding:4px 10px 6px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudLabel{font-size:clamp(12px,1.2vw,16px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudValue{font-size:clamp(28px,3.2vw,42px)}.gameShell:not(.gameShell--replay) .inventoryBar{gap:4px;padding:4px}.gameShell:not(.gameShell--replay) .inventorySlot{height:clamp(52px,6dvh,62px);aspect-ratio:auto}.gameShell:not(.gameShell--replay) .bottomPanel{min-height:38px;gap:5px;padding:4px 8px}.gameShell:not(.gameShell--replay) .devActions{gap:5px}.gameShell:not(.gameShell--replay) .devButton{padding:5px 8px;font-size:11px}}.gameShell:not(.gameShell--replay) .inventoryScroller{position:relative;min-width:0}.gameShell:not(.gameShell--replay) .inventoryBar{--inventory-scroll-gap: 7px;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--inventory-scroll-gap) * 9)) / 10);gap:var(--inventory-scroll-gap);overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.gameShell:not(.gameShell--replay) .inventoryScroller--overflowing .inventoryBar{cursor:grab;-webkit-user-select:none;user-select:none}.gameShell:not(.gameShell--replay) .inventoryScroller--overflowing .inventoryBar:active{cursor:grabbing}.gameShell:not(.gameShell--replay) .inventorySlot{width:100%;scroll-snap-align:start}.gameShell:not(.gameShell--replay) .inventorySlot img{position:absolute;left:var(--art-image-left, -4%);top:var(--art-image-top, -30%);width:var(--art-image-width, 185%);height:auto;max-width:none;object-fit:contain;-webkit-user-drag:none}.gameShell:not(.gameShell--replay) .inventorySlotArtwork{flex:0 0 auto;align-self:center}.gameShell:not(.gameShell--replay) .inventoryScrollButton{position:absolute;top:50%;z-index:5;display:grid;place-items:center;width:clamp(27px,3vw,38px);height:64%;border:2px solid #efd57e;border-radius:8px;padding:0;background:#103d34eb;color:#fff4c5;box-shadow:0 2px 7px #00000085;cursor:pointer;font-size:clamp(25px,3.2vw,40px);font-weight:900;line-height:1;transform:translateY(-50%)}.gameShell:not(.gameShell--replay) .inventoryScrollButton--previous{left:5px}.gameShell:not(.gameShell--replay) .inventoryScrollButton--next{right:5px}.gameShell:not(.gameShell--replay) .inventoryScrollButton:hover,.gameShell:not(.gameShell--replay) .inventoryScrollButton:focus-visible{background:#195b4bfa;outline:2px solid #fff2a8;outline-offset:-3px}@media(min-width:1100px)and (max-height:1100px){.gameShell:not(.gameShell--replay) .inventoryBar{--inventory-scroll-gap: 4px}}@media(min-width:900px)and (max-height:1100px){.gameShell:not(.gameShell--replay){--short-play-chrome-height: clamp(320px, 34dvh, 340px);width:min(calc(100vw - 12px),calc((100dvh - 12px - var(--short-play-chrome-height)) * 1.6),1400px);height:auto;max-height:calc(100dvh - 12px);grid-template-rows:auto auto auto auto}.gameShell:not(.gameShell--replay):has(.equipmentSlots){--short-play-chrome-height: clamp(370px, 39dvh, 400px)}.gameShell:not(.gameShell--replay) .playArea{width:100%;height:auto}.gameShell:not(.gameShell--replay) .mapPanel{width:100%;min-height:0;aspect-ratio:16 / 10}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusGrid--compact{grid-template-rows:repeat(2,minmax(48px,auto))}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard{min-height:48px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp{min-height:101px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudValue{font-size:clamp(32px,3.5vw,46px)}.gameShell:not(.gameShell--replay) .inventoryScroller{width:100%;margin:0}.gameShell:not(.gameShell--replay) .inventoryBar{padding:5px}.gameShell:not(.gameShell--replay) .inventorySlot{height:clamp(74px,9dvh,92px);aspect-ratio:auto}}@media(min-width:900px)and (min-height:1101px){.gameShell:not(.gameShell--replay){--tall-play-chrome-height: clamp(380px, 34dvh, 440px);width:min(calc(100vw - 12px),calc((100dvh - 12px - var(--tall-play-chrome-height)) * 1.6),1400px)}.gameShell:not(.gameShell--replay):has(.equipmentSlots){--tall-play-chrome-height: clamp(420px, 38dvh, 480px)}}@media(min-width:561px)and (max-width:899px)and (max-height:1100px){.gameShell:not(.gameShell--replay){gap:5px;padding:6px}.gameShell:not(.gameShell--replay) .topPanel--compact{padding:5px 8px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusGrid--compact{grid-template-areas:"hp medal level attack" "hp floor turn empty";grid-template-columns:minmax(190px,1.8fr) repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(42px,auto));gap:5px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard{min-width:0;min-height:42px;gap:3px;padding:4px 5px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp{min-width:190px;min-height:89px;padding:0}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusLabel{font-size:clamp(9px,1.35vw,12px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--level .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack .gameStatusValue{font-size:clamp(14px,2.2vw,19px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--medal:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--floor:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--turn:before{flex-basis:clamp(15px,2vw,19px);width:clamp(15px,2vw,19px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHud{grid-template-rows:auto 9px;column-gap:6px;padding:4px 9px 6px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudLabel{font-size:clamp(11px,1.7vw,15px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudValue{font-size:clamp(28px,5vw,40px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudTrack{height:9px}.gameShell:not(.gameShell--replay) .headerAuxiliary{margin-top:0;align-items:center;flex-direction:row;gap:5px}.gameShell:not(.gameShell--replay) .statusEffects{gap:3px}.gameShell:not(.gameShell--replay) .statusEffects span{padding:2px 6px;font-size:10px}.gameShell:not(.gameShell--replay) .inventoryBar{--inventory-scroll-gap: 4px;padding:4px}.gameShell:not(.gameShell--replay) .bottomPanel{min-height:40px;gap:5px;padding:5px 8px}.gameShell:not(.gameShell--replay) .devActions{gap:5px}.gameShell:not(.gameShell--replay) .devButton{padding:5px 8px;font-size:11px}}@media(min-width:900px){.gameShell:not(.gameShell--replay) .topPanel--compact{padding:3px 5px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusGrid--compact{gap:4px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard{gap:4px;padding:1px 4px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusLabel{font-size:clamp(14px,1.35vw,18px);line-height:1}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--level .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack .gameStatusValue{font-size:clamp(22px,2.15vw,30px);line-height:.96}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--medal:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--floor:before,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--turn:before{flex-basis:clamp(22px,2vw,30px);width:clamp(22px,2vw,30px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHud{grid-template-rows:auto 14px;column-gap:6px;padding:2px 6px 4px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudLabel{font-size:clamp(18px,1.7vw,23px);line-height:1}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudValue{font-size:clamp(44px,4.8vw,60px);line-height:.88}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudTrack{height:14px}}.mobileGameControls{display:none}.desktopAutoWalkStatus{position:absolute;left:50%;top:16px;z-index:8;transform:translate(-50%);border:1px solid #f3d975;border-radius:999px;padding:5px 12px;background:#07322bf0;color:#fff4b2;font-size:13px;font-weight:900;line-height:1.2;white-space:nowrap;pointer-events:none}@media(hover:none),(pointer:coarse),(max-width:720px),(max-width:900px)and (max-height:560px){.desktopAutoWalkStatus{display:none}.gameShell:not(.gameShell--replay),.gameShell:not(.gameShell--replay) *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.gameShell:not(.gameShell--replay) img{-webkit-user-drag:none;user-drag:none}.gameShell:not(.gameShell--replay) .audioSettingsPopover input,.gameShell:not(.gameShell--replay) .audioSettingsPopover select,.gameShell:not(.gameShell--replay) .audioSettingsPopover option{-webkit-user-select:auto;user-select:auto}.gameShell:not(.gameShell--replay) .dangerWarningMark{top:52%;width:68%;border-width:2px;font-size:clamp(16px,5vw,26px);box-shadow:0 0 0 2px #ffe74b61,0 0 10px #ffd026f2,0 3px #0000006b}.gameShell:not(.gameShell--replay) .clearScreen{grid-template-rows:minmax(0,1fr) repeat(4,auto);gap:3px;padding:6px;overflow:hidden;font-size:clamp(24px,7vw,38px)}.gameShell:not(.gameShell--replay) .clearScreen img{width:auto;height:min(100%,142px);max-width:72%;max-height:100%;object-fit:contain}.gameShell:not(.gameShell--replay) .clearScreen small,.gameShell:not(.gameShell--replay) .clearScreen .outcomeTapHint{font-size:clamp(9px,2.6vw,14px)}.gameShell:not(.gameShell--replay) .firstClearReward{width:min(96%,560px);gap:2px;padding:4px;font-size:clamp(8px,2.2vw,12px)}.gameShell:not(.gameShell--replay) .firstClearReward>span{padding:2px}.mobileGameControls{position:absolute;z-index:32;right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(3,clamp(42px,12vw,58px));grid-template-rows:repeat(3,clamp(42px,12vw,58px));gap:4px;padding:5px;border:2px solid rgba(246,215,125,.88);border-radius:14px;background:#072622ad;box-shadow:0 3px 12px #0000007a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.mobileGameControls *,.mobileGameControls *:before,.mobileGameControls *:after{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none}.mobileDirectionButton{display:grid;place-items:center;min-width:0;min-height:0;border:2px solid #e8cb70;border-radius:10px;padding:0;background:linear-gradient(#176c5d,#0a443b);color:#fff6ca;box-shadow:inset 0 1px #ffffff38,0 2px 4px #0000007a;font-size:clamp(23px,6.4vw,34px);font-weight:900;line-height:1;-webkit-tap-highlight-color:transparent;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.mobileDirectionButton:active{background:linear-gradient(#0a443b,#176c5d);transform:translateY(1px) scale(.97)}.mobileDirectionButton--autoWalk{position:relative;border-color:#fff4a8;background:linear-gradient(#2fae83,#0b5d4d);box-shadow:inset 0 1px #ffffff61,0 0 0 2px #ffee7e80,0 0 12px #ffde50eb;animation:autoWalkPulse .68s ease-in-out infinite alternate}.mobileDirectionButton--autoWalk:after{content:"AUTO";position:absolute;right:2px;bottom:2px;color:#fff8bd;font-size:7px;line-height:1;text-shadow:0 1px 0 #16352d}.autoWalkStatus{position:absolute;left:50%;top:-24px;z-index:2;transform:translate(-50%);border:1px solid #f3d975;border-radius:999px;padding:3px 8px;background:#07322bf0;color:#fff4b2;font-size:10px;font-weight:900;line-height:1.2;white-space:nowrap;pointer-events:none}.mobileDirectionButton--wait{background:linear-gradient(#9b6a16,#614008);font-size:clamp(14px,3.8vw,19px)}.gameShell:not(.gameShell--replay) .inventorySlot,.gameShell:not(.gameShell--replay) .inventoryScrollButton,.gameShell:not(.gameShell--replay) .devButton{touch-action:manipulation}}@media(max-width:900px)and (orientation:portrait){.gameShell:not(.gameShell--replay) .mobileGameControls{position:relative;right:auto;bottom:auto;justify-self:center;margin:3px auto}}@keyframes autoWalkPulse{0%{filter:brightness(1)}to{filter:brightness(1.2)}}@media(max-width:560px)and (orientation:portrait){.app:has(.gameShell:not(.gameShell--replay)){height:auto;min-height:100dvh;place-items:start center;padding:2px;overflow-x:hidden;overflow-y:auto}.gameShell:not(.gameShell--replay){width:100%;height:auto;min-height:calc(100dvh - 4px);max-height:none;grid-template-columns:minmax(0,3fr) minmax(128px,2fr);grid-template-rows:auto auto clamp(146px,20dvh,166px) auto;gap:3px;padding:3px;overflow:visible}.gameShell:not(.gameShell--replay) .topPanel--compact{grid-column:1 / -1;padding:3px 4px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusGrid--compact{grid-template-areas:"hp medal level" "hp attack floor" "hp turn turn";grid-template-columns:minmax(100px,1.25fr) repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(30px,auto));gap:3px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard{min-height:30px;gap:2px;padding:2px 3px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp{min-height:96px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusLabel{font-size:9px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--level .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack .gameStatusValue{font-size:clamp(12px,3.6vw,16px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudValue{font-size:clamp(24px,7vw,32px)}.gameShell:not(.gameShell--replay) .headerAuxiliary{display:none}.gameShell:not(.gameShell--replay) .mapPanel{width:100%;height:clamp(240px,64vw,310px);min-height:240px;max-height:none;aspect-ratio:auto}.gameShell:not(.gameShell--replay) .playArea{grid-column:1 / -1;height:auto;min-height:240px;display:flex;align-items:center;justify-content:center}.gameShell:not(.gameShell--replay) .board{--board-x: -11.1111%;--board-y: -13.6%;width:128.5714%;height:142.8571%}.gameShell:not(.gameShell--replay) .inventoryScroller{grid-column:1;grid-row:3;width:100%;min-width:0;align-self:stretch}.gameShell:not(.gameShell--replay) .inventoryBar{--inventory-scroll-gap: 4px;width:100%;height:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:unset;gap:var(--inventory-scroll-gap);padding:3px;overflow:hidden;scroll-snap-type:none}.gameShell:not(.gameShell--replay) .inventorySlot{width:100%;min-width:0;height:auto;min-height:58px;aspect-ratio:3 / 4}.gameShell:not(.gameShell--replay) .inventoryScrollButton{display:none}.gameShell:not(.gameShell--replay) .mobileGameControls{grid-column:2;grid-row:3;position:static;width:100%;height:100%;min-width:0;justify-self:stretch;align-self:stretch;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:4px;margin:0;padding:5px;transform:none}.gameShell:not(.gameShell--replay) .mobileDirectionButton{width:100%;height:100%;min-height:44px;min-width:44px;font-size:clamp(20px,7vw,30px)}.gameShell:not(.gameShell--replay) .mobileDirectionButton--wait{font-size:clamp(11px,3.2vw,15px)}.gameShell.gameShell--leftHanded:not(.gameShell--replay){grid-template-columns:minmax(128px,2fr) minmax(0,3fr)}.gameShell.gameShell--leftHanded:not(.gameShell--replay) .mobileGameControls{grid-column:1}.gameShell.gameShell--leftHanded:not(.gameShell--replay) .inventoryScroller{grid-column:2}.gameShell:not(.gameShell--replay) .cardModalPanel--replace{width:min(96%,410px);height:auto;max-height:calc(100dvh - 12px);grid-template-rows:clamp(120px,22vh,190px) auto auto auto 156px auto;gap:7px;padding:9px}.gameShell:not(.gameShell--replay) .cardModal--replace{position:fixed;inset:max(4px,env(safe-area-inset-top)) 4px max(4px,env(safe-area-inset-bottom));z-index:40}.gameShell:not(.gameShell--replay) .cardModal--pickupPreview{position:fixed;inset:max(4px,env(safe-area-inset-top)) 4px max(4px,env(safe-area-inset-bottom));z-index:40}.gameShell:not(.gameShell--replay) .cardModalPanel--pickupPreview{width:min(92%,390px);height:min(88dvh,620px);padding:12px}.gameShell:not(.gameShell--replay) .cardModalPanel--replace>.cardModalImage{height:100%;max-height:190px}.gameShell:not(.gameShell--replay) .cardModalPanel--replace .cardModalTitle{font-size:16px}.gameShell:not(.gameShell--replay) .cardModalPanel--replace .cardUseHint,.gameShell:not(.gameShell--replay) .cardModalPanel--replace .replacePrompt{font-size:12px}.gameShell:not(.gameShell--replay) .cardModalPanel--replace .replaceSlots{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:72px;gap:6px;height:156px;min-height:156px;max-height:156px;padding:2px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.gameShell:not(.gameShell--replay) .cardModalPanel--replace .replaceSlot{width:100%;height:72px;min-height:72px;aspect-ratio:auto;border-width:2px;border-radius:7px}.gameShell:not(.gameShell--replay) .cardModalPanel--replace .replaceSlot span{width:18px;height:18px;font-size:11px}.gameShell:not(.gameShell--replay) .cardModalPanel--replace .cardModalActions button{min-height:46px;font-size:15px}.gameShell:not(.gameShell--replay) .bottomPanel{grid-column:1 / -1;min-height:34px;padding:3px 5px}.gameShell:not(.gameShell--replay) .devActions{display:none}.gameShell:not(.gameShell--replay) .messageWindow{font-size:10px}}@media(max-width:560px)and (orientation:portrait){.app--stageSelect{min-height:100dvh;display:flex;justify-content:center;align-items:flex-start;padding:0;overflow-x:hidden;overflow-y:auto;padding-bottom:max(10px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 92%,rgba(80,145,60,.3),transparent 34%),#073c2d}.stageSelect{position:relative;flex:0 0 auto;width:min(100vw,560px);height:auto;min-height:0;aspect-ratio:941 / 1672;display:block;padding:0;overflow:visible;border:0;border-radius:0;background:url(../stage-select/stage-select-portrait-integrated-menu.png) center top / 100% auto no-repeat;box-shadow:none}.stageSelectMobileHeader{position:absolute;z-index:3;top:4.15%;left:23%;width:47%;height:8.8%;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#fff8dc;text-align:center;pointer-events:none}.stageSelectMobileHeader span{color:#fff0bb;font-size:clamp(7px,2.1vw,11px);letter-spacing:.09em;text-shadow:-1px -1px 0 #3f2107,1px -1px 0 #3f2107,-1px 1px 0 #3f2107,1px 1px 0 #3f2107}.stageSelectMobileHeader h1{margin:1% 0 0;color:#fffaf0;font-size:clamp(20px,6.4vw,32px);line-height:1;letter-spacing:.01em;text-shadow:-2px -2px 0 #41230a,2px -2px 0 #41230a,-2px 2px 0 #41230a,2px 2px 0 #41230a,0 4px 0 #1f1106}.stageMedalBalance{top:14.65%;right:auto;left:30.5%;width:39%;max-width:none;min-width:0;height:4.15%;justify-content:center;gap:2%;padding:0 3%;overflow:hidden;border:0;border-radius:0;background:none;box-shadow:none;color:#fff4d0;font-size:clamp(8px,2.25vw,12px);text-shadow:-1px -1px 0 #432309,1px 1px 0 #432309}.stageMedalBalance:before{content:"★";color:#ffd845;font-size:1.3em;line-height:1}.stageMedalBalance strong{flex:0 0 auto;min-width:max-content;overflow:visible;color:#fffaf0;font-size:clamp(14px,4vw,21px);text-overflow:clip;font-variant-numeric:tabular-nums;white-space:nowrap}.stageMedalBalance[data-digits="5"] strong{font-size:clamp(13px,3.7vw,20px)}.stageMedalBalance[data-digits="6"] strong,.stageMedalBalance[data-digits="7"] strong{font-size:clamp(11px,3.25vw,18px)}.stageHotspot{position:absolute;z-index:2;inset:auto!important;width:44.3%!important;height:14.25%!important;min-width:0;display:block;padding:0;overflow:visible;border:0;border-radius:13%;background:transparent!important;box-shadow:none;color:#fff;text-align:center;touch-action:manipulation}.stageHotspot:before{content:"";position:absolute;z-index:0;inset:0;border-radius:14%;background:#0f111029;backdrop-filter:grayscale(1) brightness(.56);-webkit-backdrop-filter:grayscale(1) brightness(.56);pointer-events:none}.stageHotspot--available:before{background-repeat:no-repeat;background-position:center;background-size:contain;backdrop-filter:none;-webkit-backdrop-filter:none}.stageHotspot:nth-of-type(1),.stageHotspot:nth-of-type(3),.stageHotspot:nth-of-type(5),.stageHotspot:nth-of-type(7),.stageHotspot:nth-of-type(9){left:4.8%!important}.stageHotspot:nth-of-type(2),.stageHotspot:nth-of-type(4),.stageHotspot:nth-of-type(6),.stageHotspot:nth-of-type(8),.stageHotspot:nth-of-type(10){left:50.8%!important}.stageHotspot:nth-of-type(1),.stageHotspot:nth-of-type(2){top:19.05%!important}.stageHotspot:nth-of-type(3),.stageHotspot:nth-of-type(4){top:34.75%!important}.stageHotspot:nth-of-type(5),.stageHotspot:nth-of-type(6){top:49.65%!important}.stageHotspot:nth-of-type(7),.stageHotspot:nth-of-type(8){top:63.2%!important}.stageHotspot:nth-of-type(9),.stageHotspot:nth-of-type(10){top:75.6%!important}.stageHotspot:nth-of-type(3),.stageHotspot:nth-of-type(4){height:14.15%!important}.stageHotspot:nth-of-type(5),.stageHotspot:nth-of-type(6){height:12.8%!important}.stageHotspot:nth-of-type(7),.stageHotspot:nth-of-type(8){height:11.75%!important}.stageHotspot:nth-of-type(9),.stageHotspot:nth-of-type(10){height:11%!important}.stageHotspotStatus{display:none}.stageHotspotMobileCopy{position:absolute;z-index:1;inset:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:8% 5% 12%}.stageHotspotMobileCopy b{position:absolute;top:-4%;left:50%;width:clamp(32px,9vw,46px);height:clamp(32px,9vw,46px);display:grid;place-items:center;transform:translate(-50%);border:clamp(2px,.75vw,4px) solid #dfd8b7;border-radius:28% 28% 40% 40%;background:linear-gradient(155deg,#176eac,#06446e);color:#fff;font-size:0;line-height:1;box-shadow:inset 0 0 0 2px #00000061,0 3px #1f1305e6;text-shadow:-1px -1px 0 #061a25,1px 1px 0 #061a25}.stageHotspotMobileCopy b:after{content:attr(data-stage-number);font-size:clamp(16px,4.5vw,23px)}.stageHotspotMobileCopy strong{display:none}.stageHotspotMobileCopy small{align-self:center;margin:0;padding:3px 9px;border-radius:999px;background:#040c0a8f;color:#fff;font-size:clamp(10px,2.9vw,15px);font-weight:900;line-height:1;text-shadow:-1px -1px 0 #17120b,1px -1px 0 #17120b,-1px 1px 0 #17120b,1px 1px 0 #17120b}.stageSelect .stageHotspot:disabled{border:0;background:transparent!important;-webkit-backdrop-filter:none;backdrop-filter:none;opacity:1}.stageSelect .stageHotspot--locked .stageHotspotMobileCopy b{border-color:#aaa796;background:linear-gradient(155deg,#555a59,#222827)}.stageSelect .stageHotspot--available .stageHotspotMobileCopy b{border-color:#dff5ff;background:linear-gradient(155deg,#1b82c5,#07517e)}.stageSelect .stageHotspot:disabled .stageHotspotMobileCopy b{border-color:#aaa796;background:linear-gradient(155deg,#555a59,#222827);color:#fff}.stageSelect .stageHotspot:disabled .stageHotspotMobileCopy strong,.stageSelect .stageHotspot:disabled .stageHotspotMobileCopy small{color:#f0eeee}.stageHotspot--unlocked:focus-visible{outline:4px solid #ffe85c;outline-offset:-8px}.stageHotspot--unlocked:active{transform:scale(.97)}.stageSelect .stageWorldButton,.stageSelect .stageItemButton{position:absolute;z-index:3;top:86.7%;width:44.1%;height:max(6.25%,44px);display:grid;align-items:center;justify-content:center;column-gap:3px;padding:0 6%;overflow:hidden;border:0;border-radius:12%;background:transparent;box-shadow:none;color:#fff7e6;font-size:clamp(12px,3.35vw,18px);font-weight:900;text-shadow:-2px -2px 0 #452307,2px -2px 0 #452307,-2px 2px 0 #452307,2px 2px 0 #452307;white-space:nowrap}.stageSelect .stageWorldButton{left:4.8%;grid-template-columns:auto auto}.stageMenuButtonIcon{display:grid;place-items:center;width:clamp(20px,5.6vw,29px);height:clamp(20px,5.6vw,29px);font-size:clamp(17px,4.7vw,25px);line-height:1;text-shadow:none}.stageSelect .stageItemButton{left:50.8%;grid-template-columns:auto minmax(0,1fr) auto;padding:0 2.5%}.stageSelect .stageWorldButton .stageMenuButtonIcon,.stageSelect .stageWorldButton .stageMenuButtonLabel,.stageSelect .stageItemButton .stageMenuButtonIcon,.stageSelect .stageItemButton .stageMenuButtonLabel{visibility:hidden}.stageMenuButtonLabel{min-width:0;white-space:nowrap}.stageSelect .stageItemButton small{position:absolute;right:3.8%;top:53%;width:auto;min-width:23%;max-width:31%;height:48%;transform:translateY(-50%);display:grid;place-items:center;padding:0 3.5%;border:1px solid rgba(255,239,170,.96);border-radius:999px;background:linear-gradient(180deg,#fff0a0,#d79227);color:#503009;font-size:clamp(8px,2vw,11px);line-height:1;text-shadow:none;box-shadow:inset 0 1px #ffffff8a,0 2px #502a07b8}.stageDebugDetails{position:absolute;z-index:3;inset:94% auto auto 4.8%;width:90.7%;min-height:44px;display:block}.stageDebugDetails>summary{min-height:44px;display:grid;place-items:center;list-style:none;border:1px solid rgba(230,198,118,.58);border-radius:7px;background:#070705b8;color:#fff4d5;font-size:clamp(12px,3.3vw,17px);font-weight:900;cursor:pointer}.stageDebugDetails>summary::-webkit-details-marker{display:none}.stageDebugDetails[open]>summary{display:none}.stageDebugDetails:not([open])>.debugUnlockPanel{display:none}.stageSelect .debugUnlockPanel{position:static;inset:auto;width:100%;height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4%;padding:3px 2%;border:0;border-radius:0;background:none;box-shadow:none}.stageSelect .debugUnlockPanel input{height:36px;border:1px solid rgba(230,198,118,.58);border-radius:5px;padding:0 4%;background:#07070585;color:#fff7d8;font-size:16px;touch-action:manipulation}.worldDebugUnlockPanel input{font-size:16px;touch-action:manipulation}.stageDetailPanel .stageCarryInPanel .carryInSlots{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(76px,auto));gap:6px}.stageDetailPanel .stageCarryInPanel{position:sticky;top:0;bottom:80px;z-index:7;margin-inline:-2px;background:linear-gradient(180deg,#3a250cfa,#121614fa),#161c19;box-shadow:0 8px 16px #00000075}.stageDetailPanel .cardListFilters,.stageDetailPanel .stageCarryCardGrid{scroll-margin-top:268px}.stageDetailPanel .stageCarryInPanel .carryInSlot{width:100%;min-height:76px;aspect-ratio:3 / 4;border-width:2px;border-radius:7px;touch-action:manipulation}.stageDetailPanel .stageCarryInPanel .carryInSlot>span{width:18px;height:18px;font-size:11px}.stageDetailPanel .stageCarryInPanel .carryInClearButton{min-height:42px;padding:8px 14px;font-size:13px;touch-action:manipulation}.stageSelect .debugUnlockPanel span{min-width:58px;color:#fff4d5;font-size:clamp(9px,2.9vw,15px)}body:has(.app--stageSelect)>#root>.audioSettingsControl,.app--stageSelect~.audioSettingsControl{top:max(1.3vw,env(safe-area-inset-top));right:max(1.3vw,env(safe-area-inset-right))}body:has(.app--stageSelect) .audioSettingsControl>summary{min-width:76px;min-height:44px;padding:7px 9px;border:3px solid #d5bd76;border-radius:14px;background:linear-gradient(#98601f,#5d320c);color:#fff8df;box-shadow:inset 0 0 0 2px #361904a3,0 3px #2d1704cc;font-size:0;text-shadow:0 2px 0 #3a1e08}body:has(.app--stageSelect) .audioSettingsControl>summary:before{content:"🔊 サウンド";font-size:12px}}@media(max-width:340px)and (orientation:portrait){.app--stageSelect{min-height:100dvh}.stageSelect .stageWorldButton,.stageSelect .stageItemButton{column-gap:2px;font-size:13px}.stageMenuButtonIcon{width:22px;height:22px;font-size:18px}.stageSelect .stageItemButton small{min-width:31px;padding-inline:2px;font-size:8px}}@media(max-width:900px)and (max-height:560px)and (orientation:landscape){.app:has(.gameShell:not(.gameShell--replay)){padding:max(2px,env(safe-area-inset-top)) max(3px,env(safe-area-inset-right)) max(2px,env(safe-area-inset-bottom)) max(3px,env(safe-area-inset-left))}.gameShell:not(.gameShell--replay){width:100%;height:calc(100dvh - 4px);max-height:calc(100dvh - 4px);gap:2px;padding:2px;grid-template-rows:54px minmax(0,1fr) 48px 28px}.gameShell:not(.gameShell--replay) .topPanel--compact{min-height:0;padding:2px 4px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusGrid--compact{grid-template-areas:"hp medal level attack floor turn";grid-template-columns:minmax(130px,1.5fr) repeat(5,minmax(70px,1fr));grid-template-rows:48px;gap:3px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp{min-width:0;min-height:48px;gap:2px;padding:2px 3px}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusLabel{font-size:clamp(8px,1.5vw,11px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--level .gameStatusValue,.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--attack .gameStatusValue{font-size:clamp(12px,2vw,17px)}.gameShell:not(.gameShell--replay) .topPanel--compact .gameStatusCard--hp .hpHudValue{font-size:clamp(21px,3.7vw,31px)}.gameShell:not(.gameShell--replay) .headerAuxiliary,.gameShell:not(.gameShell--replay) .devActions{display:none}.gameShell:not(.gameShell--replay) .playArea{display:flex;min-height:0;justify-content:center}.gameShell:not(.gameShell--replay) .mapPanel{width:auto;height:100%;max-width:100%;aspect-ratio:16 / 10}.gameShell:not(.gameShell--replay) .mapPanel>.floorMapPanel{position:fixed;top:calc(max(2px,env(safe-area-inset-top)) + 59px);left:max(6px,env(safe-area-inset-left));width:min(200px,calc((100vw - 390px)/2));max-height:calc(100dvh - 126px);overflow:hidden}.gameShell:not(.gameShell--replay) .mapPanel>.floorMapPanel .floorMapHeader,.gameShell:not(.gameShell--replay) .mapPanel>.floorMapPanel .floorMapLegend{display:none}.mobileGameControls{display:grid;top:50%;right:max(16px,env(safe-area-inset-right));bottom:auto;grid-template-columns:repeat(3,clamp(38px,7dvh,48px));grid-template-rows:repeat(3,clamp(38px,7dvh,48px));gap:3px;padding:4px;transform:translateY(-50%)}.mobileDirectionButton{font-size:clamp(20px,5dvh,28px)}.mobileDirectionButton--wait{font-size:12px}.gameShell:not(.gameShell--replay) .inventoryBar{--inventory-scroll-gap: 3px;padding:2px}.gameShell:not(.gameShell--replay) .inventorySlot{height:44px}.gameShell:not(.gameShell--replay) .bottomPanel{min-height:28px;padding:2px 5px}.gameShell:not(.gameShell--replay) .messageWindow{font-size:9px}}@media(max-width:720px)and (orientation:portrait){.app.app--worldMap{width:100vw;max-width:none;padding:0}.app--worldMap .worldMap{width:100vw}}.whirlwindButton{display:grid;gap:4px;min-width:132px;padding:6px 12px;border:2px solid #c6983e;border-radius:8px;background:#115353;color:#fff1bc;font-weight:700;cursor:pointer}.whirlwindButton:disabled{opacity:.65;cursor:default}.whirlwindButton progress{width:100%;height:7px;accent-color:#f2c85b}.whirlwindEffect{position:absolute;z-index:12;pointer-events:none;left:50%;top:50%;width:34%;aspect-ratio:1;border:6px solid #fff5b0;border-left-color:transparent;border-radius:50%;box-shadow:0 0 28px #ffd36b;animation:whirlwindSweep .6s ease-out forwards}.whirlwindEffect span{position:absolute;top:-28px;left:0;width:100%;text-align:center;color:#fff4bf;font-weight:700;text-shadow:0 2px 4px #000}@keyframes whirlwindSweep{0%{transform:translate(-50%,-50%) scale(.4) rotate(-45deg);opacity:1}to{transform:translate(-50%,-50%) scale(1.2) rotate(45deg);opacity:0}}@media(prefers-reduced-motion:reduce){.whirlwindEffect{animation:none;transform:translate(-50%,-50%)}}.playerClassSelect{max-width:900px;margin:16px auto;padding:14px;border:2px solid #cfaa62;border-radius:14px;color:#fff0c7;background:#174e4a}.playerClassSelect h2{margin:0 0 10px;font-size:18px}.playerClassSelect>div{display:flex;gap:12px}.playerClassSelect button{flex:1;display:grid;grid-template-columns:64px 1fr;text-align:left;align-items:center;gap:4px 10px;padding:10px;border:2px solid #6f8a80;border-radius:10px;background:#133e3c;color:#fff0c7;cursor:pointer}.playerClassSelect button[aria-pressed=true]{border-color:#ffd574;background:#3f5062;box-shadow:0 0 0 2px #ffd57444}.playerClassSelect img{grid-row:span 2;width:64px;height:72px;object-fit:contain;image-rendering:pixelated}.playerClassSelect small{line-height:1.5}.playerClassSelect p{font-size:13px;line-height:1.6;margin:10px 0 0}.mageAttackButton{padding:8px 12px;border:2px solid #cda2f0;border-radius:8px;background:#39275c;color:#fff;font-weight:700;cursor:pointer}.mageAttackButton:disabled{opacity:.5}.whirlwindEffect--frost{width:52%;border-color:#b3f5ff;box-shadow:0 0 40px #6fe0ff,inset 0 0 30px #8ff0ff;background:#87eaff33}.whirlwindEffect--frost span{color:#d2fcff}@media(max-width:600px){.playerClassSelect{margin:8px}.playerClassSelect button{grid-template-columns:42px 1fr;padding:6px}.playerClassSelect img{width:42px;height:54px}}.playerSprite--mage.playerSprite--down{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 0% 0%;--player-idle-second: 33.333333% 0%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--downLeft{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 66.666667% 0%;--player-idle-second: 100% 0%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--left{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 0% 33.333333%;--player-idle-second: 33.333333% 33.333333%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--upLeft{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 66.666667% 33.333333%;--player-idle-second: 100% 33.333333%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--up{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 0% 66.666667%;--player-idle-second: 33.333333% 66.666667%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--upRight{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 66.666667% 66.666667%;--player-idle-second: 100% 66.666667%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--right{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 0% 100%;--player-idle-second: 33.333333% 100%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--downRight{--player-standing-image: url(../player-sprites/mage/atlas-v1.png);--player-idle-image: var(--player-standing-image);--player-idle-size: 400% 400%;--player-idle-first: 66.666667% 100%;--player-idle-second: 100% 100%;--player-idle-animation: playerIdleSteps;--player-idle-duration: .72s;background-image:var(--player-standing-image);background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--idle{background-size:var(--player-idle-size)}@media(prefers-reduced-motion:reduce){.playerSprite--mage.playerSprite--idle{animation:none;background-size:var(--player-idle-size);background-position:var(--player-idle-first)}}.verificationReplay .playerSprite--mage.playerSprite--idle{background-size:var(--player-idle-size);background-position:var(--player-idle-first)}.playerSprite--mage.playerSprite--up,.playerSprite--mage.playerSprite--upRight{clip-path:inset(0 0 4% 0)}.specialRangeTile{position:absolute;inset:2px;z-index:6;pointer-events:none;background:#70e8ef55;border:2px solid #bcfaff;box-shadow:inset 0 0 12px #5ee5ffaa}.specialConfirm{position:absolute;z-index:35;bottom:10px;left:50%;transform:translate(-50%);display:grid;gap:6px;padding:10px 16px;width:max-content;max-width:90%;text-align:center;border:2px solid #dfc57e;border-radius:10px;background:#153b3bf5;color:#fff5d7}.specialConfirm span{font-size:12px}.specialConfirm>div{display:flex;gap:12px;justify-content:center}.specialConfirm button{padding:9px 18px;color:#fff;background:#285b58;border:1px solid #dfc57e;border-radius:6px;cursor:pointer}.gameShell:has(.specialConfirm) button,.gameShell:has(.specialConfirm) summary{pointer-events:none}.gameShell:has(.specialConfirm) .specialConfirm button{pointer-events:auto}.gameShell:not(.gameShell--replay) .headerAuxiliary{flex-wrap:wrap}.gameShell:not(.gameShell--replay) .headerAuxiliary>.mageAttackButton,.gameShell:not(.gameShell--replay) .headerAuxiliary>.whirlwindButton{flex-shrink:0;max-width:100%}.gameShell:not(.gameShell--replay) .headerAuxiliary>.statusEffects{flex:1 0 140px;max-width:100%}.gameShell:not(.gameShell--replay) .headerAuxiliary>.equipmentSlots{flex-shrink:0;margin-left:auto}.trainingSchool{margin:12px auto;padding:14px;width:min(100% - 32px,1000px);box-sizing:border-box;border:2px solid #bd954c;border-radius:12px;background:#163e38;color:#fff2cb}.trainingSchool summary{cursor:pointer;font-size:18px;font-weight:700}.trainingSchool p{line-height:1.6}.trainingOptions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.trainingOptions article{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid #b39355;border-radius:8px;background:#245248}.trainingOptions article p{flex:1;margin:0;font-size:14px}.trainingOptions button{padding:10px;background:#f2d696;color:#163e38;border-radius:6px;border:1px solid #c09a50;cursor:pointer;font-weight:700}.trainingOptions button:disabled{opacity:.45;cursor:default}.trainingOptions button[aria-pressed=true]{background:#b4e4d1}.trainingNotice{margin:10px auto;max-width:1000px;padding:10px;background:#fff0bd;color:#193c35}.trainingNotice{position:fixed;z-index:20000;bottom:16px;left:16px;right:16px;border:2px solid #ba9751;border-radius:8px;box-shadow:0 4px 20px #0008}.trainingNotice button{margin-left:12px;padding:6px 10px}.specialDirections{flex-wrap:wrap;max-width:300px}.specialDirections button{padding:6px 10px}.specialDirections button[aria-pressed=true]{background:#a78739}.specialConfirm button:disabled{opacity:.4;cursor:default}.specialDestinationTile{position:absolute;inset:3px;z-index:9;background:#56cadb22;border:2px dashed #b2f4ff;border-radius:3px;cursor:pointer}.specialDestinationTile--selected{background:#f4d65c66;border:3px solid #ffdf50}.gameShell:has(.specialConfirm) .specialDestinationTile{pointer-events:auto}.whirlwindEffect--guard{border-color:#ffd778;background:#fc53;box-shadow:0 0 30px #ffc657}.whirlwindEffect--lightning{border-color:#ba9fff;background:#cbb3ff44;box-shadow:0 0 45px #a088ff}.whirlwindEffect--illusion{border-style:dashed;border-color:#e0c6ff;background:#b490ef33}.whirlwindEffect--dash{border-color:#ffc480;box-shadow:0 0 30px #ffad4c}.specialPhantom{position:absolute;inset:12%;z-index:10;display:grid;place-items:center;border:2px dashed #d7b6ff;border-radius:50%;background:#7954aa88;color:#fff;font-size:28px;pointer-events:none}.specialGuardAura{position:absolute;inset:8%;z-index:7;border:3px solid #ffe090;border-radius:50%;box-shadow:0 0 12px #ffcf55;pointer-events:none}.specialConfirm--illusion{top:8px;bottom:auto}.aimPrompt{z-index:36}.aimPrompt button{pointer-events:auto;cursor:pointer}.gameShell:has(.specialConfirm) .mobileDirectionButton{pointer-events:auto}.stageSelect .stageItemButton{padding:0;overflow:visible;background:transparent}.stageSelect .stageItemButton .adventurePreparationButtonImage{position:absolute;inset:-8% -4% auto;width:108%;height:132%;max-width:none;object-fit:fill;pointer-events:none}.stageSelect .stageItemButton .stageMenuButtonIcon,.stageSelect .stageItemButton .stageMenuButtonLabel,.stageSelect .stageItemButton .stageMenuButtonCount{display:none}.preparationScreen{min-height:100dvh;box-sizing:border-box;padding:clamp(12px,3vw,32px);color:#fff0c6;background:radial-gradient(ellipse at top,#386444aa,#0c2419ee 80%),url(../stage-select/stage-select-portrait-integrated-menu.png) center/cover fixed}.preparationHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1150px;margin:0 auto 24px}.preparationHeader h1{margin:0;color:#fff0bf;text-shadow:0 3px #492912;font-size:clamp(22px,4vw,40px)}.preparationHeader button,.preparationShop button{border:2px solid #b8944c;border-radius:8px;padding:10px 16px;background:linear-gradient(#795025,#45250e);color:#fff0bf;font-weight:700;cursor:pointer}.preparationHeader>strong{padding:10px;background:#123c32;border:2px solid #bd9e59;border-radius:8px;white-space:nowrap}.preparationHome{max-width:1150px;margin:auto;text-align:center}.preparationHome>p{font-size:clamp(14px,2vw,19px)}.preparationChoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,26px);margin:clamp(20px,5vh,50px) 0}.preparationChoices>button{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 12px;border:6px ridge #d1a657;border-radius:22px;background:linear-gradient(#755027,#2d180dee);color:#fff2ce;cursor:pointer;box-shadow:0 8px #301b0c,inset 0 0 20px #130b04}.preparationChoices>button:hover{filter:brightness(1.15);transform:translateY(-2px)}.preparationChoices>button:focus-visible{outline:3px solid #fff1a7;outline-offset:4px}.preparationChoices strong{font-size:clamp(20px,3vw,30px);text-shadow:0 2px #251307}.preparationArt{display:flex;align-items:center;justify-content:center;height:clamp(100px,22vh,220px);width:100%;background:radial-gradient(ellipse,#d6b75755,transparent 70%)}.preparationArt img{max-width:45%;max-height:90%;object-fit:contain;filter:drop-shadow(0 5px 4px #0009)}.preparationArt img:first-child{transform:rotate(-8deg)}.preparationArt img:last-child{transform:rotate(8deg)}.preparationArt--training img{width:45%;image-rendering:pixelated}.preparationCurrent{border:1px solid #b89958;border-radius:8px;padding:14px;background:#173d30dd}.preparationTraining,.preparationShop{max-width:1100px;margin:auto}.preparationShop{background:#143a2eea;border:2px solid #bc9a51;border-radius:12px;padding:18px}.preparationShop input{padding:10px;border-radius:6px;margin-left:8px;max-width:60%}.preparationShopGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:20px}.preparationShopGrid article{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid #a98b52;border-radius:10px;background:#214b3b}.preparationShopGrid img{height:130px;object-fit:contain}.preparationShopGrid p{font-size:13px;flex:1;margin:0}.preparationShop button:disabled{opacity:.45;cursor:default}@media(max-width:600px){.preparationHeader{flex-wrap:wrap;margin-bottom:12px}.preparationHeader h1{order:3;width:100%;text-align:center}.preparationChoices{grid-template-columns:1fr;gap:12px;margin:16px 0}.preparationChoices>button{display:grid;grid-template-columns:90px 1fr;gap:4px 12px;text-align:left;padding:10px;border-width:4px}.preparationArt{grid-row:1/3;height:86px}.preparationChoices strong{font-size:22px}.preparationChoices small{grid-column:2}.preparationCurrent{padding:10px;font-size:13px!important}}.preparationHeader{position:sticky;top:52px;z-index:20;padding:10px;border:1px solid #b8944c;border-radius:12px;background:#123426f5;box-shadow:0 4px 16px #0005}html:has(.preparationScreen),body:has(.preparationScreen),#root:has(.preparationScreen){overflow-x:clip;overflow-y:visible}.trainingSchool>h2{margin:0;font-size:18px;font-weight:700}.trainingNotice{pointer-events:none}.preparationScreen:has(>.preparationShop){height:100dvh;min-height:0;padding-top:52px;display:flex;flex-direction:column;overflow:hidden}.preparationScreen:has(>.preparationShop)>.preparationHeader{position:static;flex:0 0 auto;width:100%;margin-bottom:12px;background:#123426}.preparationScreen>.preparationShop{flex:1 1 auto;min-height:0;width:100%;margin:0 auto;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}.topPanel>.specialConfirm--illusion{position:static;transform:none;width:100%;max-width:none;grid-column:1 / -1;flex:0 0 100%;margin-top:8px}.preparationChoices{grid-template-columns:repeat(4,minmax(0,1fr))}.manualBookArt{font-size:clamp(60px,9vw,120px)}.preparationScreen:has(>.gameManual){height:100dvh;min-height:0;padding-top:52px;display:flex;flex-direction:column;overflow:hidden}.preparationScreen:has(>.gameManual)>.preparationHeader{position:static;flex:0 0 auto;width:100%;margin-bottom:12px;background:#123426}.gameManual{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;max-width:1150px;margin:0 auto;border:2px solid #b99a57;border-radius:12px;overflow:hidden;background:#f7edcf;color:#233f32}.manualChapters{display:flex;flex:0 0 auto;gap:6px;padding:10px;overflow-x:auto;background:#143a2e}.manualChapters button{flex:0 0 auto;padding:10px 14px;border:1px solid #ba9856;border-radius:7px;color:#fff0bf;background:#254d3b;cursor:pointer;font-weight:700}.manualChapters button[aria-pressed=true]{background:#f2db9f;color:#283e2d}.manualChapters button:focus-visible{outline:3px solid #ffcf57;outline-offset:2px}.manualContent{overflow-y:auto;min-height:0;padding:clamp(16px,3vw,36px);line-height:1.85;overscroll-behavior:contain}.manualContent h2{font-size:clamp(24px,4vw,34px);margin:0 0 20px;border-bottom:2px solid #c4a45b}.manualContent h3{margin:22px 0 8px;color:#215b48}.manualContent p{margin:8px 0 18px}.manualEyebrow{font-size:12px;letter-spacing:.12em;color:#73613c}.manualColumns{display:grid;grid-template-columns:minmax(220px,1fr) 1.5fr;gap:24px;align-items:center}.manualFigure{margin:12px auto 24px;max-width:400px;width:100%}.manualFigure figcaption{font-size:14px;margin-top:10px}.manualFigure small{display:block;color:#655e4c}.manualTiles{display:grid;grid-template-columns:repeat(5,1fr);border:4px solid #786645;border-radius:8px;overflow:hidden;background:#d9c395}.manualTiles>span{aspect-ratio:1;display:grid;place-items:center;border:1px solid #af986d;min-width:0;font-size:clamp(14px,2vw,22px);color:#184635}.manualTiles img{width:90%;height:90%;object-fit:contain;image-rendering:pixelated}.manualTiles .manualTileWall{background:repeating-linear-gradient(0deg,#3e5750 0 12px,#30463f 12px 14px)}.manualTiles .manualTileLit{box-shadow:inset 0 0 0 3px #58aeb9;background-color:#a4d6d3}.manualTiles .manualTileWall.manualTileLit{box-shadow:inset 0 0 0 3px #8ee1e9}.manualKeys{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px;background:#214839;border-radius:12px}.manualKeys kbd{padding:12px 4px;text-align:center;background:#fff4ce;border:2px solid #ae915c;border-bottom-width:5px;border-radius:7px;font-size:18px;color:#263e32}.manualContent table{width:100%;border-collapse:collapse;margin:20px 0}.manualContent caption{text-align:left;font-weight:700}.manualContent th,.manualContent td{border:1px solid #c7b485;padding:12px;text-align:left}.manualContent th{background:#eaddb6;width:25%}.manualNote,.manualWarning{padding:18px;border:2px solid #b78a38;background:#fff5d8;border-radius:10px}.manualWarning>strong{color:#813d21}.manualChance{display:flex;border-radius:8px;overflow:hidden;text-align:center;color:#fff;margin:16px 0;font-weight:700}.manualChance span:first-child{width:33%;background:#944b25;padding:10px 0}.manualChance span:last-child{width:67%;background:#375946;padding:10px 0}.manualHpExample{padding:15px;border-radius:8px;background:#244d3b;color:#fff3ca;font-size:20px}.manualHpExample span{display:block;font-size:14px}.manualSpecials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.manualSpecials section{padding:16px;border:1px solid #bba36e;border-radius:10px;background:#fff5dc}.manualSpecials h3{margin-top:0}.manualSpecials small{display:block;font-size:13px;color:#665837}.manualFlow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:22px 0}.manualFlow span{padding:12px;background:#28503d;border-radius:8px;color:#fff3ce}@media(max-width:850px){.preparationChoices{grid-template-columns:repeat(2,minmax(0,1fr))}.preparationArt{height:110px}.manualColumns{grid-template-columns:1fr;gap:4px}}@media(max-width:600px){.preparationChoices,.manualSpecials{grid-template-columns:1fr}.manualContent th,.manualContent td{padding:8px}.manualChapters button{padding:8px 10px}.manualBookArt{font-size:60px}}.manualInputMode{display:flex;gap:8px;padding:10px 10px 0;flex:0 0 auto;background:#143a2e}.manualInputMode button{flex:1;min-height:44px;padding:8px;border:1px solid #c4a45b;border-radius:8px;color:#fff0bf;background:#254d3b;cursor:pointer;font-weight:700}.manualInputMode button[aria-pressed=true]{background:#f2db9f;color:#283e2d}.manualInputMode button:focus-visible{outline:3px solid #ffcf57;outline-offset:2px}.manualTouchFlow{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px;margin:20px 0;border:1px solid #bba36e;border-radius:10px;background:#fff5dc;text-align:center}.manualTouchFlow img{width:100px;height:100px;object-fit:contain}.manualTouchFlow strong{background:#28503d;color:#fff3ce;padding:10px 22px;border-radius:8px}.manualTouchFlow figcaption{font-size:13px}@media(max-width:600px){.manualChapters button{min-height:44px}.manualContent{overflow-wrap:anywhere}.manualKeys kbd{font-size:17px}.preparationScreen:has(>.gameManual){padding-left:8px;padding-right:8px}.preparationScreen:has(>.gameManual) .preparationHeader{gap:6px;padding:8px}.preparationScreen:has(>.gameManual) .preparationHeader button{padding:8px;min-height:44px}}.playerSprite.playerSprite--continuous{background-image:none}.playerSprite--continuous:before{content:"";position:absolute;inset:0;background-image:var(--player-idle-image);background-repeat:no-repeat;background-size:var(--player-idle-size);background-position:var(--player-idle-first);animation:var(--player-idle-animation, playerIdleSteps) var(--player-idle-duration, .72s) step-end infinite}.verificationReplay .playerSprite--continuous:before{animation:none}@media(prefers-reduced-motion:reduce){.playerSprite--continuous:before{animation:none}}.audioSettingsPopover .retireButton{margin-top:12px;min-height:44px;border:1px solid #d4a270;background:#71382b;color:#fff2db}.retireConfirmation{box-sizing:border-box;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:26px;border:6px ridge #d1ae61;border-radius:16px;background:linear-gradient(145deg,#fff2ca,#e8d49b);color:#24473f;box-shadow:0 12px 48px #0009,inset 0 0 0 2px #fff4cf;font-family:inherit}.retireConfirmation::backdrop{background:#061d19bb}.retireConfirmation h2{margin:0 0 18px;padding-bottom:14px;border-bottom:2px solid #b79b50;font-size:clamp(20px,4vw,25px)}.retireConfirmation p{line-height:1.8;font-size:15px}.retireConfirmationActions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.retireConfirmationActions button{flex:1 1 150px;min-height:48px;padding:12px;border:2px solid #b49750;border-radius:8px;color:#fff1ca;background:linear-gradient(#25645d,#123e38);font:inherit;font-weight:700;cursor:pointer}.retireConfirmationActions .retireConfirmButton{background:linear-gradient(#8b5034,#623323)}.retireConfirmationActions button:focus-visible{outline:3px solid #258c85;outline-offset:3px}.gameShell:has(.specialConfirm) .whirlwindButton{pointer-events:auto}.playerSprite--mage.playerSprite--downRight:before{clip-path:inset(0 0 0 3%)}.giftCodePanel{position:relative;z-index:2;max-width:480px;margin:18px auto;padding:14px;border:3px ridge #c6a459;border-radius:12px;color:#fff2ce;background:#153e32}.giftCodePanel summary{cursor:pointer;font-weight:700;padding:8px;min-height:24px}.giftCodePanel form{display:grid;gap:12px;padding:8px}.giftCodePanel p{margin:0;line-height:1.7}.giftCodePanel input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px;border:2px solid #b49550;border-radius:6px;background:#fff3d1;color:#243c30;font-size:16px}.giftCodePanel button{min-height:46px;padding:10px;border:2px solid #b49550;border-radius:8px;color:#fff1cf;background:linear-gradient(#77502c,#4b2b16);font:inherit;cursor:pointer}.giftCodePanel button:disabled{opacity:.5;cursor:default}.giftCodeMessage{padding:12px;border:1px solid #b49550;border-radius:6px;background:#284e3b}.giftCodePanel{position:fixed;z-index:100;inset:10px 80px auto auto;margin:0;padding:0;width:174px;max-width:calc(100vw - 100px);border:0;border-radius:7px;background:transparent;font-size:12px;font-weight:900}.giftCodePanel>summary{box-sizing:border-box;list-style:none;min-height:0;padding:7px 10px;border:1px solid rgba(255,236,184,.62);border-radius:7px;background:linear-gradient(180deg,#354333f5,#18221cfa);box-shadow:0 3px 10px #0005;text-align:center}.giftCodePanel>summary::-webkit-details-marker{display:none}.giftCodePanel form{position:fixed;top:52px;right:10px;width:min(440px,calc(100vw - 20px));box-sizing:border-box;max-height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain;padding:16px;border:2px solid #b49550;border-radius:10px;background:#153e32;font-weight:400;font-size:14px;box-shadow:0 8px 24px #0007}@media(max-width:560px)and (orientation:portrait){.giftCodePanel{top:max(8px,env(safe-area-inset-top));right:calc(max(8px,env(safe-area-inset-right)) + 94px)}.giftCodePanel>summary{min-height:44px;display:grid;place-items:center;padding:6px 10px;border:2px solid #d5bd76;border-radius:12px;background:linear-gradient(180deg,#225f58,#0c403f);color:#fff1bd;font-size:15px;line-height:1}.giftCodePanel form{top:calc(max(8px,env(safe-area-inset-top)) + 52px);right:max(8px,env(safe-area-inset-right));max-height:calc(100dvh - max(8px,env(safe-area-inset-top)) - 68px)}}.audioSettingsPopover>.giftCodePanel{position:static;width:100%;max-width:none;margin:8px 0 0;padding:0;border:0;font-size:inherit}.audioSettingsPopover>.giftCodePanel>summary{min-height:40px;padding:8px;font-size:14px;border:1px solid #b49550;border-radius:6px}.audioSettingsPopover .giftCodePanel form{position:static;width:100%;max-height:none;overflow:visible;padding:10px 0;border:0;box-shadow:none;background:transparent}.audioSettingsPopover:has(.giftCodePanel){max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}.gameOver.gameOverChoices{box-sizing:border-box;width:min(440px,92%);max-height:94%;overflow-y:auto;padding:18px;gap:8px;border:4px ridge #d1ae61;border-radius:14px;background:linear-gradient(#fff1c8,#e5cd91);color:#24473f;font-size:16px}.gameOverChoices>strong{font-size:28px}.gameOverChoices>button{min-height:44px;padding:10px 14px;border:2px solid #b49750;border-radius:8px;background:#1b5149;color:#fff2c8;font:inherit;cursor:pointer}.gameOverChoices>button:disabled{background:#706f5e;color:#eee2c7;opacity:.7;cursor:default}.gameOverChoices>small{font-size:12px}.gameOverChoices>p{margin:6px 0 0;font-size:13px}.gameOver.gameOverChoices{inset:50% auto auto 50%;transform:translate(-50%,-50%);height:auto;text-shadow:none;z-index:20}.gameOverChoices>button{width:100%}.enemySpawnSmoke{position:absolute;inset:8%;pointer-events:none;z-index:4}.enemySpawnSmoke i{position:absolute;left:15%;bottom:8%;width:65%;height:60%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.88),rgba(240,246,250,.5) 40%,transparent 72%);animation:enemySpawnSmokeRise 2s ease-out infinite}.enemySpawnSmoke i:nth-child(2){left:0;animation-delay:-.7s}.enemySpawnSmoke i:nth-child(3){left:30%;animation-delay:-1.4s}@keyframes enemySpawnSmokeRise{0%{transform:translateY(12%) scale(.65);opacity:.4}45%{opacity:1}to{transform:translateY(-45%) scale(1.15);opacity:.2}}@media(prefers-reduced-motion:reduce){.enemySpawnSmoke i{animation:none;opacity:.7}}
