@font-face{font-family:Golos;src:url(../assets/golos-400.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Golos;src:url(../assets/golos-800.ttf)format("truetype");font-weight:800;font-display:swap}:root{color:#e8eeea;font-synthesis:none;--muted:#8b9fa5;--amber:#eebd68;--line:#2b4148;--panel:#17262d;--mint:#8edac5;--danger:#f08a6c;--nav-h:74px;--shell-w:500px;background:#0c161a;font-family:Golos,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(at 50% -10%,#23393f 0,#0000 60%),#0c161a;min-width:300px;min-height:100vh;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #9debd5}a{color:inherit;text-decoration:none}button svg,span>svg{flex-shrink:0;width:22px;height:22px}svg{vertical-align:middle}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:800}p{color:var(--muted);line-height:1.5}small{font-size:11px}#game{opacity:0;pointer-events:none;touch-action:none;position:fixed;inset:0}#game canvas{display:block}.in-battle{overflow:hidden}.in-battle #game{opacity:1;pointer-events:auto}#app{position:relative}.shell{width:min(100%, var(--shell-w));min-height:100vh;min-height:100dvh;padding:0 14px calc(var(--nav-h) + 18px + env(safe-area-inset-bottom));flex-direction:column;margin:0 auto;display:flex}.topbar{z-index:8;height:58px;padding:max(0px, env(safe-area-inset-top)) 14px 0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f1c21ee;border-bottom:1px solid #22363c;justify-content:space-between;align-items:center;gap:8px;margin:0 -14px;display:flex;position:sticky;top:0}.brand{letter-spacing:.1em;align-items:center;gap:9px;min-width:0;font-size:16px;font-weight:800;display:flex}.brand small{color:var(--muted);letter-spacing:.2em;margin-top:3px;font-size:8px;font-weight:400;display:block}.brand-mark{background:var(--amber);color:#1b292d;border-radius:8px;place-items:center;width:32px;height:36px;display:grid;transform:skew(-8deg)}.brand-mark svg{width:22px;height:22px;transform:skew(8deg)}.top-actions{align-items:center;gap:6px;display:flex}.wallet{background:#1a2b31;border:1px solid #3c5359;border-radius:999px;align-items:center;gap:6px;padding:6px 12px 6px 7px;font-size:15px;font-weight:800;display:flex}.wallet svg{color:var(--amber);width:20px;height:20px}.icon-button{border:1px solid var(--line);color:#a9bec2;background:#16262c;border-radius:10px;place-items:center;width:38px;height:38px;font-size:18px;font-weight:800;display:grid;position:relative}.icon-button svg{width:19px;height:19px}.sound-dot{background:#65767b;border-radius:50%;width:6px;height:6px;position:absolute;bottom:5px;right:5px}.sound-dot.on{background:var(--mint)}.eyebrow{color:var(--amber);letter-spacing:.17em;font-size:10px;font-weight:800}.section-caption{letter-spacing:.14em;color:#7f969d;margin:0 2px 7px;font-size:10px;display:block}.primary,.secondary{border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:13px 20px;font-size:14px;font-weight:800;transition:filter .15s,transform .15s;display:inline-flex}.primary{color:#1a282b;background:linear-gradient(#f4ca7c,#e2a954);box-shadow:inset 0 -4px #a8743b55,0 6px 18px #e6b05d2a}.primary:hover:not(:disabled){filter:brightness(1.08)}.primary:active:not(:disabled){transform:translateY(1px)}.secondary{color:#d4e0df;background:#20363e;border:1px solid #3e5960}.primary svg,.secondary svg{width:18px;height:18px}.wide{width:100%;margin-top:12px;display:flex}.mission-screen{flex-direction:column;flex:1;gap:10px;padding-top:12px;display:flex}.level-heading{text-align:center}.level-heading h1{letter-spacing:-.02em;margin:5px 0 2px;font-size:26px}.level-heading p{font-size:12px}.location-carousel{grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:6px;display:grid}.carousel-arrow{width:36px;height:52px;color:var(--amber);background:#182a31;border:1px solid #3a535a;border-radius:12px;place-items:center;display:grid}.carousel-arrow.previous svg{transform:scaleX(-1)}.level-card{--sky1:#8e7350;--sky2:#3a4c4f;--ground1:#4c4a3c;--ground2:#263437;--accent:#eebd68;border:2px solid color-mix(in srgb, var(--accent) 55%, #2b4148);background:var(--ground2);border-radius:18px;height:clamp(150px,27vh,230px);position:relative;overflow:hidden;box-shadow:0 14px 30px #0006,inset 0 0 0 1px #ffffff10}.level-card.ash{--sky1:#8a4e3c;--sky2:#3b2f30;--ground1:#4a3a35;--ground2:#2a2324;--accent:#f08a6c}.level-card.ice{--sky1:#8fb6c9;--sky2:#3f5868;--ground1:#93aab4;--ground2:#4d6573;--accent:#9fd8ef}.level-sky{background:linear-gradient(170deg, var(--sky1), var(--sky2));position:absolute;inset:0 0 42%}.sun{background:#f5d29a70;border-radius:50%;width:54px;height:54px;position:absolute;top:14%;right:18%;box-shadow:0 0 50px #f2c26c66}.factory{background:#182d33;position:absolute;bottom:0}.factory:before{content:"";background:inherit;border-top:3px solid #ba966355;width:9px;height:46px;position:absolute;bottom:70%;left:10px}.factory:after{content:"";background:#f2c26c55;height:3px;position:absolute;top:10px;left:6px;right:6px}.f1{width:26%;height:42%;right:6%}.f2{opacity:.85;width:17%;height:58%;right:34%}.f3{opacity:.65;width:22%;height:30%;left:6%}.level-ground{background:repeating-linear-gradient(100deg, transparent 0 26px, #ffffff08 27px 28px), linear-gradient(var(--ground1), var(--ground2));position:absolute;inset:58% 0 0}.map-road{background:#1b2629bb;border-top:1px dashed #f2c26c55;height:9px;position:absolute}.r1{top:38%;left:-5%;right:-5%;transform:rotate(-5deg)}.r2{border:0;width:9px;height:auto;top:0;bottom:0;left:38%;transform:skew(-22deg)}.map-building{background:#142226;border:1px solid #ffffff14;border-radius:2px;position:absolute}.b1{width:34px;height:18px;top:14%;left:10%}.b2{width:46px;height:20px;top:56%;left:54%}.b3{width:26px;height:26px;top:12%;right:9%}.map-crane{background:#182d33;width:4px;height:52px;position:absolute;bottom:100%;left:22%}.map-crane:after{content:"";background:#182d33;width:56px;height:4px;position:absolute;top:0;left:-4px}.map-marker{color:#1a282b;background:var(--accent);width:38px;height:38px;box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 25%, transparent);border-radius:50%;place-items:center;animation:2.2s ease-in-out infinite marker-pulse;display:grid;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)}.map-marker svg{width:20px;height:20px}.level-tag{letter-spacing:.12em;color:#1a282b;background:var(--accent);border-radius:6px;padding:5px 8px;font-size:9px;font-weight:800;position:absolute;top:10px;left:10px}.level-big-number{color:#ffffff2a;letter-spacing:-.04em;font-size:44px;font-weight:800;position:absolute;bottom:2px;right:10px}.level-locked{-webkit-backdrop-filter:grayscale(.7);backdrop-filter:grayscale(.7);color:#dfe9ea;letter-spacing:.24em;background:#091317a6;place-content:center;justify-items:center;gap:6px;font-size:15px;font-weight:800;display:grid;position:absolute;inset:0}.level-locked svg{width:30px;height:30px}.level-card.locked .map-marker{animation:none}.location-dots{justify-content:center;gap:6px;margin-top:-2px;display:flex}.location-dots span{background:#34494f;border-radius:4px;width:7px;height:7px;transition:width .2s}.location-dots .active{background:var(--amber);width:20px}.mode-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mode{text-align:left;border:1px solid var(--line);background:#17282e;border-radius:12px;align-items:center;gap:8px;min-width:0;min-height:60px;padding:10px;display:flex}.mode.selected{background:#3a3729;border-color:#c9a865}.mode-icon{color:#97aaa9}.mode.selected .mode-icon{color:var(--amber)}.mode-icon svg{width:20px}.mode b{font-size:13px;display:block}.mode small{color:#9faeaa;margin-top:3px;font-size:10px;display:block}.radio{border:1px solid #687b7d;border-radius:50%;flex-shrink:0;width:14px;height:14px;margin-left:auto}.selected .radio{border:4px solid var(--amber)}.deploy-area{margin-top:auto;padding-top:2px}.launch{letter-spacing:.08em;border-radius:16px;justify-content:flex-start;width:100%;height:62px;font-size:20px;display:flex}.launch>svg{width:24px;height:24px;margin-right:2px}.button-side{letter-spacing:.04em;border-left:1px solid #9a7b4855;margin-left:auto;padding-left:14px;font-size:12px;font-weight:800}.under-button{text-align:center;color:#789196;margin:7px 0 10px;font-size:11px}.chest-strip{text-align:left;background:#1a2d33;border:1px solid #3c5359;border-radius:12px;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.chest-strip:disabled{opacity:.65}.chest-strip:not(:disabled){background:#2e2e25;border-color:#b69458}.chest-icon{color:var(--amber);background:#b5965130;border:1px solid #917b4c66;border-radius:9px;padding:6px}.chest-strip b{font-size:13px}.chest-strip small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.strip-arrow{color:var(--amber);margin-left:auto;font-size:11px;font-weight:800}.bottom-nav{width:min(var(--shell-w), 100%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:6px 8px max(6px, env(safe-area-inset-bottom));z-index:10;background:#11212af7;border:1px solid #354b52;border-bottom:0;border-radius:18px 18px 0 0;grid-template-columns:repeat(4,1fr);gap:4px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -12px 30px #0b171b55}.bottom-nav button{color:#7a939b;background:0 0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:60px;font-size:11px;display:flex;position:relative}.bottom-nav button.active{color:var(--amber);background:#d5b76c1c}.bottom-nav button.active:before{content:"";background:var(--amber);border-radius:0 0 3px 3px;height:3px;position:absolute;top:-6px;left:28%;right:28%;box-shadow:0 0 12px #d7bb6b99}.bottom-nav small{letter-spacing:.06em;color:#8ca1a8;background:#233a42;border-radius:4px;padding:2px 3px;font-size:7px;font-weight:800;position:absolute;top:3px;right:3px}.bottom-nav svg{width:22px;height:22px}.equipment-screen{padding-top:12px}.machine-board{background:radial-gradient(at 50% 42%,#34505299,#15262c 72%);border:1px solid #3a555b;border-radius:18px;grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);gap:8px;padding:10px;display:grid;position:relative;overflow:hidden}.stage-grid{opacity:.35;pointer-events:none;background-image:linear-gradient(#435c5e55 1px,#0000 1px),linear-gradient(90deg,#435c5e55 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 75%);mask-image:radial-gradient(#000 30%,#0000 75%)}.equipped-machine{grid-area:1/2/span 2;place-items:center;min-height:0;display:grid;position:relative}.machine-pad{background:radial-gradient(#8edac51c,#0000 70%);border:2px solid #8edac533;border-radius:50%;height:32%;position:absolute;bottom:10%;left:6%;right:6%}.tank-art{filter:drop-shadow(0 14px 14px #0004);width:100%;display:block;position:relative}.equipped-machine .tank-art{width:118%;max-width:none;margin:-4% -9% 0}.equipment-slot{z-index:1;aspect-ratio:1;border:2px solid var(--rarity,#40575d);background:radial-gradient(circle at 50% 55%, color-mix(in srgb, var(--rarity,#40575d) 22%, transparent), transparent 70%), #13242aee;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:center;min-width:0;padding:6px 4px 5px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff0d}.slot-hull{grid-area:1/1}.slot-tracks{grid-area:2/1}.slot-turret{grid-area:1/3}.slot-module{grid-area:2/3}.slot-name{letter-spacing:.08em;text-transform:uppercase;color:#c4d4d6;font-size:9px;font-weight:800}.equipment-slot .part-art{pointer-events:none;flex:1;width:88%;height:auto;min-height:0}.equipment-slot small{color:var(--rarity,var(--muted));font-size:10px;font-weight:800}.disabled-slot{color:#5f777d;background:#11201f66;border:2px dashed #3d5258}.disabled-slot>svg{width:30%;height:30%}.disabled-slot small{color:#6f878c;letter-spacing:.1em}.machine-label{text-align:center;grid-area:3/1/auto/-1;line-height:1.25;position:relative}.machine-label b{font-size:17px;display:block}.machine-label small{color:var(--muted)}.compact-stats{grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0 14px;display:grid}.compact-stats span{border:1px solid var(--line);background:#16272d;border-radius:10px;justify-content:center;align-items:center;gap:5px;padding:8px 4px;display:flex}.compact-stats svg{width:16px;height:16px;color:var(--mint)}.compact-stats b{font-size:15px}.compact-stats small{color:var(--muted);font-size:9px}.inventory-divider{justify-content:space-between;align-items:baseline;gap:8px;margin:0 2px 8px;display:flex}.inventory-divider h2{font-size:19px}.inventory-divider h2 span{color:#1a282b;background:var(--amber);vertical-align:middle;border-radius:6px;padding:2px 6px;font-size:12px}.inventory-divider small{color:var(--muted);text-align:right;font-size:10px}.equipment-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:10px;display:grid}.equipment-filters button{border:1px solid var(--line);color:#9fb1b5;background:#17282e;border-radius:10px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:7px 2px 6px;font-size:11px;display:flex}.equipment-filters button>svg{width:18px;height:18px}.equipment-filters button.active{color:var(--amber);background:#3a3729;border-color:#c9a865}.equipment-filters small{color:var(--mint);align-items:center;gap:2px;font-size:9px;display:flex}.equipment-filters small svg{width:11px;height:11px}.owned-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.owned-item{border:2px solid var(--rarity);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--rarity) 26%, transparent), transparent 68%), linear-gradient(#1b2f36, #13232a);box-shadow:inset 0 -18px 24px -18px color-mix(in srgb, var(--rarity) 40%, transparent), 0 4px 10px #0004;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;border-radius:14px;flex-direction:column;align-items:center;min-width:0;padding:18px 4px 7px;transition:transform .12s,opacity .12s;display:flex;position:relative}.owned-item .part-art{aspect-ratio:1;pointer-events:none;width:82%;height:auto}.owned-item b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:2px;font-size:12px;overflow:hidden}.owned-item>small{color:var(--rarity);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:800}.item-level{color:#10191c;background:var(--rarity);border-radius:5px;padding:2px 5px;font-size:9px;font-weight:800;position:absolute;top:5px;left:5px}.item-check{background:var(--mint);color:#10231f;border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;font-weight:800;display:grid;position:absolute;top:4px;right:5px}.owned-item.is-equipped{outline-offset:2px;outline:2px solid #8edac566}.empty-inventory{text-align:center;grid-column:1/-1;padding:22px 0;font-size:12px}.inventory-hint{text-align:center;margin:14px 0 10px;font-size:11px}body.dragging,body.dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.drag-source{opacity:.35;transform:scale(.94)}.drag-ghost{z-index:100;border:2px solid var(--rarity);width:88px;height:88px;box-shadow:0 16px 32px #000a, 0 0 22px color-mix(in srgb, var(--rarity) 50%, transparent);pointer-events:none;will-change:transform;background:#1b2f36ee;border-radius:16px;padding:6px;position:fixed;top:0;left:0}.drag-ghost .part-art{width:100%;height:100%}.equipment-slot.drop-ok{border-color:var(--mint);border-style:dashed;animation:.9s ease-in-out infinite slot-wait}.equipment-slot.drop-over{border-style:solid;border-color:var(--mint);animation:none;transform:scale(1.07);box-shadow:0 0 0 4px #8edac540,0 0 26px #8edac577}.equipment-slot.drop-reject{border-color:var(--danger);box-shadow:0 0 0 4px #f08a6c33}.equipment-slot.reject-shake{border-color:var(--danger);animation:.4s shake}body.dragging .equipment-slot:not(.drop-ok):not(.disabled-slot){opacity:.6}.soon{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px 15px;display:flex}.soon-icon{border:1px solid var(--line);width:96px;height:96px;color:var(--amber);background:#1b3037;border-radius:26px;place-items:center;margin:0 auto 24px;display:grid}.soon-icon svg{width:44px;height:44px}.soon h1{margin:10px 0;font-size:34px}.soon p{margin-bottom:22px;font-size:14px}#hud{pointer-events:none;z-index:3;position:fixed;inset:0}#hud button{pointer-events:auto}.battle-top{left:max(22px, env(safe-area-inset-left));right:max(22px, env(safe-area-inset-right));top:max(20px, env(safe-area-inset-top));align-items:flex-start;gap:20px;display:flex;position:absolute}.hp-panel{background:#102128dd;border:1px solid #49616888;border-radius:10px;width:230px;padding:13px 15px}.hp-panel>span{color:#9db0b1;letter-spacing:.05em;justify-content:space-between;align-items:center;font-size:8px;display:flex}.hp-panel b{color:#e5eee8;font-size:11px}.hp-panel>small{color:#95b9ba;margin:10px 0 5px;font-size:7px;display:block}.meter{background:#2b4449;border-radius:4px;height:6px;margin-top:7px;overflow:hidden}.meter i{background:#9dd3ac;border-radius:4px;width:100%;height:100%;transition:width 80ms linear;display:block}.meter.xp{height:3px}.meter.xp i{background:#6bcfca}.wave-panel{text-align:center;background:#102128c9;border:1px solid #49616866;border-radius:10px;padding:11px 20px;position:absolute;left:50%;transform:translate(-50%)}.wave-panel small{color:#91adb1;text-transform:uppercase;letter-spacing:.1em;font-size:8px;display:block}.wave-panel>b{margin:6px 0;font-size:18px;display:block}.wave-panel>span{color:var(--amber);font-size:12px}.battle-top>.icon-button{color:#ccd9d3;background:#13242de0;width:46px;height:46px;margin-left:auto}.battle-bottom{bottom:max(25px, env(safe-area-inset-bottom));left:max(25px, env(safe-area-inset-left));right:max(25px, env(safe-area-inset-right));justify-content:space-between;align-items:flex-end;display:flex;position:absolute}.move-hint{color:#adc4bb;letter-spacing:.08em;background:#14242bb0;border-radius:8px;padding:12px;font-size:9px}.move-hint span{color:#7d9e9e;letter-spacing:0;margin-top:7px;font-size:8px;display:block}.pulse-panel{background:#15262de8;border:1px solid #56716c;border-radius:10px;width:175px;padding:12px}.pulse-panel>div:first-child{color:var(--amber);letter-spacing:.07em;justify-content:space-between;font-size:8px;display:flex}.load i{background:var(--amber)}#pulse-button{color:#172a2d;touch-action:manipulation;background:#e5b569;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:10px;padding:10px 6px;font-size:11px;font-weight:800;display:flex}#pulse-button svg{width:16px;height:16px}#pulse-button small{margin-left:4px;font-size:7px;font-weight:400}#boss-hud{text-align:center;color:#efb09a;letter-spacing:.07em;width:min(320px,35vw);font-size:9px;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.meter.boss i{background:#dd7f68}#overlay{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#061218bb;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0;overflow:auto}.dialog{text-align:center;background:linear-gradient(145deg,#243b43,#142830);border:1px solid #4a6669;border-radius:16px;width:min(760px,100%);padding:36px;animation:.2s ease-out dialog-in;position:relative;box-shadow:0 30px 120px #0007}.compact{width:420px}.dialog h2{letter-spacing:-.04em;margin:13px 0 12px;font-size:30px}.dialog>p{margin-bottom:18px;font-size:12px}.dialog>small{color:#819ca1;margin:14px 0 0;font-size:10px;line-height:1.5;display:block}.dialog-close{color:var(--muted);background:0 0;padding:8px;position:absolute;top:12px;right:12px}.dialog-close svg{width:20px;height:20px}.choices{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px;display:grid}.mod-card{text-align:left;background:linear-gradient(140deg,#304b4d,#1d353d);border:1px solid #54736f;border-radius:10px;flex-direction:column;min-height:238px;padding:20px 17px;transition:transform .15s,border-color .15s;display:flex}.mod-card:hover{border-color:var(--amber);transform:translateY(-6px)}.mod-category{color:#9ab6b7;text-transform:uppercase;letter-spacing:.12em;font-size:8px}.mod-icon{color:var(--amber);margin:20px 0;font-size:38px}.mod-card strong{font-size:14px;line-height:1.3}.mod-card p{color:#acbfbd;margin:10px 0 22px;font-size:11px}.mod-card small{color:var(--amber);justify-content:space-between;align-items:center;margin-top:auto;font-size:8px;display:flex}.mod-card small svg{width:14px;height:14px}.success-symbol{color:#a0e0b9;background:#31534c;border:1px solid #638f7c;border-radius:17px;place-items:center;width:65px;height:65px;margin:0 auto 22px;display:grid;transform:rotate(-5deg)}.success-symbol svg{width:34px;height:34px}.success-symbol.danger{color:#eaa88a;background:#563b36;border-color:#886752}.reward-preview{color:var(--amber);justify-content:center;gap:25px;margin:20px 0;font-size:12px;display:flex}.reward-preview span{align-items:center;gap:6px;display:flex}.result-dialog{max-width:480px}.result-stats{border-top:1px solid #38535a;border-bottom:1px solid #38535a;justify-content:space-around;margin:22px 0;padding:20px 0;display:flex}.result-stats span{letter-spacing:.08em;color:#8ba9ad;font-size:7px}.result-stats b{color:#dde9df;letter-spacing:0;margin-bottom:9px;font-size:25px;display:block}.reward-box{background:#101f2770;border:1px solid #3e5558;border-radius:10px;padding:20px}.reward-box>small{letter-spacing:.13em;color:#9baea8;font-size:8px}.reward-box>div{justify-content:center;gap:30px;margin-top:18px;display:flex}.reward-box span{color:var(--amber);align-items:center;gap:8px;font-size:17px;display:flex}.reward-box svg{width:25px;height:25px}.save-status{color:var(--mint);margin:14px 0!important;font-size:10px!important}.big-chest{width:130px;height:130px;color:var(--amber);filter:drop-shadow(0 8px 20px #e4b86033);background:radial-gradient(#ba995966,#0000);border-radius:25px;place-items:center;margin:30px auto;animation:3s ease-in-out infinite chest-float;display:grid;transform:rotate(-7deg)}.big-chest svg{stroke-width:1px;width:110px;height:110px}.guarantee{color:var(--amber)!important;margin-bottom:20px!important;font-size:8px!important}.loot-dialog{width:460px}.loot-dialog h2{margin-top:10px}.loot-rewards{border-top:1px solid #425a61;border-bottom:1px solid #425a61;justify-content:center;gap:20px;margin-bottom:20px;padding:18px 0;display:flex}.loot-rewards>span{color:var(--mint);font-size:13px}.loot-rewards svg{width:18px;height:18px}.loot-rewards small{color:var(--muted);margin-top:7px;font-size:8px;display:block}.help-list{text-align:left}.help-list p{color:#adc0be;border-bottom:1px solid #385158;padding:10px 0;font-size:12px}.help-list b{color:var(--amber);margin-bottom:5px;display:block}#toast{color:#e2efdf;z-index:60;pointer-events:none;opacity:0;text-align:center;background:#365349;border:1px solid #7cad97;border-radius:10px;width:max-content;max-width:90vw;padding:13px 22px;font-size:12px;transition:opacity .2s,transform .2s;position:fixed;bottom:100px;left:50%;transform:translate(-50%,15px)}#toast.show{opacity:1;transform:translate(-50%)}#host-pause{z-index:80;color:#c6d8d2;background:#07151bd9;place-items:center;font-size:14px;display:grid;position:fixed;inset:0}.boot-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100vh;padding:30px;display:flex}.boot-screen h1{letter-spacing:.12em;font-size:28px}.boot-screen p{font-size:13px}.boot-screen button{background:var(--amber);color:#162a2c;border-radius:8px;padding:15px 25px}@keyframes machine-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes chest-float{50%{transform:rotate(4deg)translateY(-5px)}}@media (max-width:850px){.wave-panel{padding:10px 15px;left:auto;right:66px;transform:none}.battle-top{gap:10px}.hp-panel{width:180px}}@media (max-width:600px){.hp-panel{width:148px;padding:10px}.hp-panel b{font-size:9px}.hp-panel>span,.hp-panel>small{font-size:6px}.wave-panel{padding:9px 11px;right:45px}.wave-panel>b{margin:6px 0;font-size:13px}.wave-panel small{font-size:6px}.wave-panel>span{font-size:10px}.battle-top{left:12px;right:12px;top:max(12px, env(safe-area-inset-top));gap:7px}.battle-top>.icon-button{width:35px;height:36px}.battle-bottom{left:14px;right:14px;bottom:max(20px, env(safe-area-inset-bottom))}.pulse-panel{width:133px;padding:10px}.move-hint{opacity:.65;max-width:150px;font-size:8px;line-height:1.5}.move-hint span{max-width:110px;font-size:7px}.move-hint{font-size:0}.move-hint span{margin:0;font-size:9px}#pulse-button{font-size:9px}#pulse-button small{font-size:6px}#boss-hud{width:65vw;font-size:8px;bottom:160px}#overlay{align-items:safe center;padding:14px}.dialog{border-radius:13px;padding:26px 20px}.dialog h2{font-size:25px}.dialog>p{font-size:11px}.choices{grid-template-columns:1fr;gap:9px;margin-top:20px}.mod-card{text-align:left;grid-template-columns:42px 1fr;gap:5px 12px;min-height:100px;padding:15px;display:grid}.mod-category{grid-column:2;font-size:7px}.mod-icon{grid-area:1/1/5;align-self:center;margin:0;font-size:31px}.mod-card strong{grid-column:2;font-size:13px}.mod-card p{grid-column:2;margin:0;font-size:10px}.mod-card small{grid-column:2;margin-top:4px;font-size:6px}.mod-card:hover{transform:none}.choice-dialog h2{margin:9px 0}.choice-dialog>p{margin-bottom:0}.loot-rewards{gap:14px}.loot-rewards>span{font-size:12px}.loot-rewards small{font-size:7px}.loot-dialog .tank-art{height:175px}.help-list p{font-size:11px}.dialog .eyebrow{font-size:8px}.result-stats b{font-size:23px}.result-stats{margin:18px 0;padding:16px 0}.reward-box{padding:17px}.reward-box>div{gap:20px}.reward-box span{font-size:15px}.success-symbol{width:55px;height:55px;margin-bottom:17px}}@media (max-height:560px) and (orientation:landscape){#overlay{align-items:flex-start}.dialog{margin:5px auto}.choice-dialog{max-width:760px}.choices{grid-template-columns:repeat(3,1fr)}.mod-card{min-height:160px;padding:15px;display:flex}.mod-icon{margin:10px 0;font-size:27px}.battle-top{top:10px}.hp-panel{padding:8px 12px}.battle-bottom{bottom:12px}.pulse-panel{width:140px;padding:8px}#boss-hud{bottom:14px}.dialog h2{font-size:23px}.success-symbol{display:none}.big-chest{width:80px;height:80px;margin:15px auto}.big-chest svg{width:80px;height:80px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.compact,.loot-dialog{width:min(440px,100%)}.rarity-pill{color:var(--rarity);border:1px solid color-mix(in srgb, var(--rarity) 35%, transparent);background:color-mix(in srgb, var(--rarity) 10%, transparent);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:5px 9px;font-size:10px;font-weight:800;display:inline-block}.loot-dialog .tank-art{height:190px;margin:5px 0}#overlay[data-kind=part]{flex-direction:column;justify-content:flex-start;align-items:center}.item-dialog{border-color:color-mix(in srgb, var(--rarity) 55%, #4a6669);width:min(440px,100%);margin:auto 0;padding:24px 20px 20px}.item-showcase{aspect-ratio:1;border:2px solid var(--rarity);background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--rarity) 30%, transparent), #13232a 72%);border-radius:24px;width:min(190px,52vw);margin:10px auto 4px;position:relative}.item-showcase .part-art{width:100%;height:100%}.item-showcase .item-level{font-size:11px;top:8px;left:8px}.item-dialog h2{margin:8px 0 4px}.item-dialog>p{margin-bottom:12px}.detail-stat{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:12px 0;font-size:13px;display:flex}.detail-stat b{color:#e8eeea;font-size:19px}.detail-stat em{color:var(--mint);font-size:15px;font-style:normal}.equipped-now{margin:10px 0 0!important;font-size:12px!important}.equipped-now b{color:#d4e0df}.upgrade-box{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.upgrade-box>div{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.upgrade-cost{justify-content:center;align-items:center;gap:22px;margin-top:10px;font-size:14px;font-weight:800;display:flex}.upgrade-cost>span{color:var(--mint);align-items:center;gap:5px;display:flex}.upgrade-cost small{color:var(--muted);font-weight:400}.upgrade-cost svg{width:17px;height:17px}.upgrade-cost .missing{color:#e6a286}.blueprint-note{color:#819ca1;margin-top:6px;font-size:10px;display:block}@keyframes marker-pulse{50%{box-shadow:0 0 0 12px color-mix(in srgb, var(--accent) 8%, transparent)}}@keyframes slot-wait{50%{box-shadow:0 0 18px #8edac555}}@keyframes shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes sheet-in{0%{opacity:.4;transform:translateY(40px)}}@media (min-width:700px){:root{--shell-w:480px}.shell{background:#0f1c21;border-left:1px solid #1f3238;border-right:1px solid #1f3238;box-shadow:0 0 80px #0008}.level-card{height:210px}}@media (max-width:600px){#overlay[data-kind=part]{padding:40px 0 0}.item-dialog{width:100%;padding:22px 18px max(18px, env(safe-area-inset-bottom));border-bottom:0;border-radius:22px 22px 0 0;margin:auto 0 0;animation:.22s ease-out sheet-in}}@media (max-width:360px){.shell{padding-left:10px;padding-right:10px}.topbar{margin:0 -10px;padding-left:10px;padding-right:10px}.brand small{display:none}.brand{letter-spacing:.06em;font-size:14px}.icon-button{width:34px;height:34px}.wallet{padding:5px 9px 5px 6px;font-size:14px}.level-heading h1{font-size:22px}.mode{gap:6px;padding:8px}.mode b{font-size:12px}.mode small{font-size:9px}.mode-icon{display:none}.launch{height:58px;font-size:18px}.owned-grid{gap:6px}.owned-item b{font-size:11px}.equipment-filters button,.bottom-nav button{font-size:10px}}@media (max-height:720px) and (max-width:600px){.mission-screen{gap:7px;padding-top:8px}.level-heading p{display:none}.level-card{height:clamp(128px,24vh,180px)}.mode{min-height:52px}.under-button{margin:5px 0 7px}}.topbar .wallet{margin-right:auto}.lang-button{letter-spacing:.04em;color:var(--amber);font-size:12px}.campaign-line{background:#24383e;border-radius:2px;width:min(220px,70%);height:4px;margin:6px auto 0;overflow:hidden}.campaign-line i{height:100%;width:var(--done);background:linear-gradient(90deg, var(--amber), #9fd8ef);display:block}.mission-screen[data-location=ice] .eyebrow{color:#9fd8ef}img.chest-art{object-fit:contain;vertical-align:middle;filter:drop-shadow(0 2px 3px #0007);display:inline-block}.big-chest img.chest-art{width:96px;height:96px}.mission-info{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.chip{color:#d4e0df;background:#1b2f36;border:1px solid #36525a;border-radius:999px;align-items:center;gap:4px;max-width:100%;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.chip svg{width:13px;height:13px;color:var(--amber)}.boss-chip{color:#f3b3a3;background:#2c1e1d;border-color:#7a443c}.boss-chip svg{color:#f08a6c}.boss-chip.elite{color:#ffd98a;background:#33291a;border-color:#b8913e;box-shadow:0 0 12px #ffc94a33}.level-locked small{letter-spacing:.04em;color:#c9d6d8;font-size:11px;font-weight:400}.level-card.ice .factory,.level-card.ice .map-crane,.level-card.ice .map-crane:after{background:#2e4b5b}.level-card.ice .factory:after{background:#9fd8ef77}.level-card.ice .sun{background:#d8f3ff60;box-shadow:0 0 60px #9fd8ef88}.level-card.ice .map-road{background:#3f5868bb;border-top-color:#d8f3ff55}.first-clear{background:linear-gradient(#2e2b20,#1c2522);border:1px solid #b69458;border-radius:12px;padding:8px 10px 9px}.first-clear.claimed{opacity:.8;background:#15252a;border-color:#3a555b}.first-clear-head{justify-content:space-between;align-items:center;gap:6px;display:flex}.first-clear-head b{letter-spacing:.1em;color:var(--amber);align-items:center;gap:4px;font-size:10px;display:flex}.first-clear-head small{color:var(--muted);align-items:center;gap:3px;font-weight:800;display:flex}.first-clear.claimed .first-clear-head small{color:var(--mint)}.first-clear-head svg{width:13px;height:13px}.first-clear-items{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:5px;font-size:13px;font-weight:800;display:flex}.first-clear-items>span,.reward-chest{align-items:center;gap:4px;display:inline-flex}.first-clear-items svg{width:18px;height:18px}.first-clear-items .chest-art,.reward-chest-static .chest-art{width:26px;height:26px}.reward-chest{background:0 0;border:1px dashed #5d7479;border-radius:6px;padding:2px 4px;font-size:13px;font-weight:800}.reward-chest>svg:last-child{width:14px;height:14px;color:var(--muted)}.reward-part{color:var(--rarity)}.reward-module{color:#8ce9d0}.chest-strip small{flex-wrap:wrap;gap:2px 8px;display:flex}.tier-dot{white-space:nowrap;font-style:normal}.tier-dot:before{content:"";background:var(--tier);border-radius:2px;width:7px;height:7px;margin-right:3px;display:inline-block}.tier-supply{--tier:#c9a56a}.tier-arsenal{--tier:#5fb4ff}.tier-command{--tier:#ffc94a}.strip-arrow em{background:var(--amber);color:#1a282b;border-radius:6px;margin-left:3px;padding:1px 5px;font-style:normal}.equipment-screen .chest-strip{margin-bottom:14px}.deploy-area .chest-strip{margin-top:10px}.slot-module .module-art,.module-row .module-art{color:var(--rarity);flex:1;place-items:center;display:grid}.slot-module .module-art svg{width:30px;height:30px}.machine-module{width:28px;height:28px;color:var(--rarity);border:2px solid var(--rarity);box-shadow:0 0 12px color-mix(in srgb, var(--rarity) 50%, transparent);background:#0f1c21dd;border-radius:8px;place-items:center;display:grid;position:absolute;bottom:22%;right:18%}.machine-module svg{width:16px;height:16px}.module-dialog,.chest-dialog{width:min(460px,100%)}.module-list{text-align:left;gap:8px;margin-top:14px;display:grid}.module-row{border:1px solid color-mix(in srgb, var(--rarity) 45%, #2b4148);background:#15252a;border-radius:12px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.module-row.on{background:color-mix(in srgb, var(--rarity) 12%, #15252a);border-color:var(--rarity)}.module-row.locked{opacity:.65;color:var(--muted);grid-template-columns:40px minmax(0,1fr)}.module-row .module-art svg{width:30px;height:30px}.module-row b{font-size:14px;display:block}.module-row small{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.4;display:block}.module-row .module-stats{color:#b9cfd2}.module-row .lock-note{color:#e6c27e}.module-row button{min-height:38px;padding:8px 12px;font-size:12px}@media (max-width:460px){.module-row{grid-template-columns:34px minmax(0,1fr);gap:4px 10px}.module-row button{grid-column:1/-1;width:100%}}.tier-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0 10px;display:grid}.tier-tab{background:#15252a;border:2px solid #2b4148;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:8px 4px;display:flex}.tier-tab.active{border-color:var(--tier);background:color-mix(in srgb, var(--tier) 12%, #15252a)}.tier-tab .chest-art{width:48px;height:48px}.tier-tab b{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11px;overflow:hidden}.tier-tab small{color:var(--muted)}.odds-title{text-align:left;color:#c4d4d6;margin:0 0 6px;font-size:12px}.odds-list{gap:3px;margin:0;padding:0;list-style:none;display:grid}.odds-list li{border-left:4px solid var(--rarity);background:color-mix(in srgb, var(--rarity) 9%, #13232a);color:var(--rarity);border-radius:7px;justify-content:space-between;padding:5px 9px;font-size:12px;display:flex}.odds-list li b{color:#e8eeea}.odds-list li.zero{opacity:.4}.dialog>p.odds-note,.odds-note{text-align:left;margin:6px 0 0;font-size:10px}.qty-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:12px;display:flex}.qty-row output{text-align:center;min-width:42px;font-size:20px;font-weight:800}.qty{background:#20363e;border:1px solid #3e5960;border-radius:10px;justify-content:center;align-items:center;min-width:44px;min-height:40px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.qty.active{border-color:var(--amber);color:var(--amber)}.qty svg{width:16px;height:16px}.chest-note{color:var(--muted);margin-top:8px;display:block}.odds-head{text-align:left;align-items:center;gap:12px;margin-bottom:12px;display:flex}.odds-head .chest-art{width:64px;height:64px}.odds-head small{color:var(--muted)}.loot-list{text-align:left;gap:6px;max-height:46vh;margin:12px 0;padding:0;list-style:none;display:grid;overflow-y:auto}.loot-item{border:1px solid color-mix(in srgb, var(--rarity) 55%, transparent);background:color-mix(in srgb, var(--rarity) 10%, #13232a);border-radius:10px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;display:grid}.loot-item .part-art{width:48px;height:48px}.loot-item b{font-size:13px;display:block}.loot-item small{color:var(--rarity);text-transform:uppercase;font-size:10px;font-weight:800}.new-tag,.dup-tag{white-space:nowrap;border-radius:6px;align-items:center;gap:2px;padding:3px 6px;font-size:10px;font-weight:800;display:inline-flex}.new-tag{background:var(--rarity);color:#10191c}.dup-tag{color:var(--mint);border:1px solid #3e5960}.dup-tag svg{width:12px;height:12px}.rarity-gems{letter-spacing:-.1em;margin-right:3px;font-size:.85em}.owned-item.rarity-legendary,.loot-item.rarity-legendary{background-image:linear-gradient(115deg, transparent 30%, #fff3c455 45%, transparent 60%), radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--rarity) 30%, transparent), transparent 68%), linear-gradient(#2a2716, #13232a);background-size:250% 100%,100% 100%,100% 100%;animation:3.2s linear infinite legendary-sheen}.owned-item.rarity-epic,.loot-item.rarity-epic{box-shadow:0 0 14px color-mix(in srgb, var(--rarity) 35%, transparent), 0 4px 10px #0004}@keyframes legendary-sheen{0%{background-position:120% 0,0 0,0 0}to{background-position:-120% 0,0 0,0 0}}.detail-stat .small-b{font-size:14px}.item-dialog>p small{margin-top:4px;font-size:10px;display:block}.reward-box.first{background:#2b281d;border-color:#b69458;margin-top:10px}.reward-box .muted{color:var(--muted);font-size:13px}.reward-chest-static{align-items:center;gap:4px;display:inline-flex}.dialog p.unlock-note,.unlock-note{color:#b9cfd2;justify-content:center;align-items:center;gap:5px;margin:8px 0 0;font-size:11px;display:flex}.unlock-note svg{width:14px;height:14px}.reward-box>div{flex-wrap:wrap}#wave-banner{left:50%;top:max(96px, calc(env(safe-area-inset-top) + 86px));z-index:3;color:#dff5ee;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;background:#0f1c21dd;border:1px solid #8edac566;border-radius:999px;max-width:calc(100vw - 24px);padding:8px 14px;font-size:12px;font-weight:800;position:fixed;overflow:hidden;transform:translate(-50%)}.meter.load{position:relative}#load-need{background:#fffc;width:2px;position:absolute;top:-2px;bottom:-2px}#pulse-button.active-module{box-shadow:0 0 0 2px #8edac5,0 0 18px #8edac577}@media (max-width:600px){#wave-banner{top:max(84px, calc(env(safe-area-inset-top) + 76px));font-size:10px}}@media (max-height:720px) and (max-width:600px){.level-heading h1{margin:2px 0 0;font-size:21px}.level-card{height:clamp(100px,18vh,150px)}.first-clear{padding:6px 9px 7px}.first-clear-items{margin-top:3px;font-size:12px}.launch{height:54px}.deploy-area .chest-strip{margin-top:8px;padding:7px 10px}}@media (max-width:360px){.chip{padding:3px 7px;font-size:10px}.first-clear-items{gap:4px 9px}}.loot-item{animation:.32s ease-out backwards loot-in}.loot-item:nth-child(2){animation-delay:50ms}.loot-item:nth-child(3){animation-delay:.1s}.loot-item:nth-child(n+4){animation-delay:.15s}.tier-tab.active img.chest-art{animation:2.4s ease-in-out infinite chest-bob}.result-dialog.victory .success-symbol{animation:.4s ease-out pop-in}.primary:active:not(:disabled),.qty:active:not(:disabled){transform:translateY(1px)scale(.98)}@keyframes loot-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes chest-bob{50%{transform:translateY(-3px)}}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}}@media (prefers-reduced-motion:reduce){.loot-item,.tier-tab.active img.chest-art,.result-dialog.victory .success-symbol,.owned-item.rarity-legendary,.loot-item.rarity-legendary,.map-marker{animation:none!important}.primary,.qty,.owned-item{transition:none!important}.primary:active:not(:disabled),.qty:active:not(:disabled){transform:none}}@property --n{syntax:"<integer>";inherits:false;initial-value:0}.primary{text-shadow:0 1px #fff5;position:relative;overflow:hidden;box-shadow:inset 0 2px #fff7,inset 0 -5px #b97b33,0 4px #8a5a24,0 10px 22px #0006}.primary:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#fff6,#0000);width:40%;position:absolute;inset:0 auto 0 -60%;transform:skew(-18deg)}.primary.launch:not(:disabled):after{animation:3.6s ease-in-out 1.2s infinite shine}.primary:active:not(:disabled){transform:translateY(3px);box-shadow:inset 0 2px #fff7,inset 0 -3px #b97b33,0 1px #8a5a24,0 4px 10px #0006}.secondary{transition:transform .12s,box-shadow .12s,filter .15s;box-shadow:inset 0 1px #ffffff14,0 3px #0b171b}.secondary:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 1px #ffffff14}.icon-button,.carousel-arrow,.bottom-nav button,.owned-item,.equipment-slot,.mod-card,.tier-tab{transition:transform .12s,filter .15s}.icon-button:active:not(:disabled),.carousel-arrow:active:not(:disabled),.bottom-nav button:active:not(:disabled),.owned-item:active:not(:disabled),.equipment-slot:active:not(:disabled),.tier-tab:active:not(:disabled){transform:scale(.94)}.bottom-nav button.active svg{animation:.35s cubic-bezier(.3,1.6,.5,1) nav-pop}.screen-enter{animation:.32s cubic-bezier(.2,.9,.3,1) both screen-in}.screen-enter.from-left{--from:-28px}.screen-enter.from-right{--from:28px}.dialog{animation:.28s cubic-bezier(.25,1.4,.5,1) both dialog-pop}#overlay:not([hidden]){animation:.2s ease-out fade-in}.wallet.bump{animation:.5s cubic-bezier(.3,1.8,.5,1) bump}.wallet.bump svg{animation:.6s ease-out coin-spin}.equipment-slot.just-equipped{animation:.7s ease-out slot-flash}.item-showcase.just-upgraded{animation:.6s cubic-bezier(.3,1.6,.5,1) upgrade-pop}.item-showcase.just-upgraded:before{content:"";background:radial-gradient(circle, #fff8 0, var(--rarity,#eebd68) 30%, transparent 65%);pointer-events:none;border-radius:50%;animation:.8s ease-out forwards burst-fade;position:absolute;inset:-20%}.item-showcase{position:relative}.loot-dialog{overflow:hidden}.chest-stage{place-items:center;height:112px;margin:-6px auto 2px;animation:.45s ease-in-out .95s both stage-shrink;display:grid;position:relative}.chest-stage .chest-art{object-fit:contain;z-index:2;filter:drop-shadow(0 10px 10px #0008);width:132px;height:132px;animation:.35s cubic-bezier(.3,1.5,.5,1) both chest-drop,.4s ease-in-out .35s chest-rattle,.5s cubic-bezier(.3,1.6,.5,1) .75s both chest-open;position:relative}.chest-rays{background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--rarity,#eebd68) 55%, transparent) 0 8deg, transparent 8deg 22deg);opacity:0;border-radius:50%;width:260px;height:260px;animation:.4s ease-out .75s forwards rays-in,9s linear .75s infinite spin;position:absolute;-webkit-mask:radial-gradient(circle,#000 18%,#0000 68%);mask:radial-gradient(circle,#000 18%,#0000 68%)}.chest-flash{background:radial-gradient(circle, #fff 0, color-mix(in srgb, var(--rarity,#eebd68) 70%, #fff) 25%, transparent 65%);opacity:0;z-index:3;pointer-events:none;border-radius:50%;width:220px;height:220px;animation:.6s ease-out .75s both flash;position:absolute}.chest-stage .spark{background:color-mix(in srgb, var(--rarity,#eebd68) 60%, #fff);width:8px;height:8px;box-shadow:0 0 8px var(--rarity,#eebd68);opacity:0;z-index:3;border-radius:2px;animation:.9s ease-out .8s both spark;position:absolute}.spark.s1{--x:-120px;--y:-40px}.spark.s2{--x:110px;--y:-60px}.spark.s3{--x:-80px;--y:50px;animation-delay:.85s}.spark.s4{--x:130px;--y:30px;animation-delay:.85s}.spark.s5{--x:-30px;--y:-90px;animation-delay:.9s}.spark.s6{--x:40px;--y:80px;animation-delay:.9s}.loot-dialog .loot-item{animation:card-flip .45s cubic-bezier(.25, 1.3, .5, 1) var(--d,0s) backwards}.loot-dialog .loot-item.rarity-epic,.loot-dialog .loot-item.rarity-legendary,.loot-dialog .loot-item.rarity-rare{animation:card-flip .45s cubic-bezier(.25, 1.3, .5, 1) var(--d,0s) backwards, rare-glow 1.2s ease-out calc(var(--d,0s) + .3s) backwards}.loot-dialog>.eyebrow,.loot-dialog>h2{animation:.35s ease-out .9s backwards fade-up}.loot-dialog .loot-rewards,.loot-dialog>p,.loot-dialog>.wide{animation:fade-up .35s ease-out var(--tail,1.4s) backwards}.loot-dialog.revealed *,.loot-dialog.revealed{animation-duration:10ms!important;animation-delay:0s!important}.loot-dialog.revealed .chest-rays{opacity:.6;animation:none!important}.count-up{counter-reset:n var(--n);animation:1s cubic-bezier(.2,.7,.3,1) .15s both count;display:inline-block;position:relative}.count-up:after{content:counter(n)}.count-real{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.result-dialog{overflow:hidden}.result-rays{background:repeating-conic-gradient(#eebd6833 0 9deg, transparent 9deg 24deg);pointer-events:none;border-radius:50%;width:380px;height:380px;margin-left:-190px;animation:.6s ease-out both rays-in,14s linear infinite spin;position:absolute;top:-110px;left:50%;-webkit-mask:radial-gradient(circle,#000 10%,#0000 64%);mask:radial-gradient(circle,#000 10%,#0000 64%)}.result-dialog>:not(.result-rays){position:relative}.result-dialog.victory h2{animation:.5s cubic-bezier(.3,1.6,.5,1) .1s backwards title-slam}.result-dialog.dead .success-symbol{animation:.6s ease-out sink}.result-stats>span,.result-dialog .reward-box{animation:.35s ease-out backwards fade-up}.result-stats>span:nth-child(2){animation-delay:80ms}.result-stats>span:nth-child(3){animation-delay:.16s}.result-dialog .reward-box{animation-delay:.25s}.result-dialog .reward-box.first{animation-delay:.4s}.choice-dialog>.eyebrow{animation:.45s cubic-bezier(.3,1.6,.5,1) backwards title-slam;display:inline-block}.choice-dialog:before{content:"";pointer-events:none;background:radial-gradient(circle,#8edac555 0,#0000 60%);border-radius:50%;width:420px;height:420px;margin-left:-210px;animation:1s ease-out forwards burst-fade;position:absolute;top:-150px;left:50%}.choice-dialog .mod-card{animation:.4s cubic-bezier(.25,1.3,.5,1) backwards card-flip}.choice-dialog .mod-card:nth-child(2){animation-delay:80ms}.choice-dialog .mod-card:nth-child(3){animation-delay:.16s}.choice-dialog .mod-card:hover:not(:disabled){transform:translateY(-3px)}.choice-dialog .mod-card:active:not(:disabled){transform:scale(.97)}@keyframes screen-in{0%{opacity:0}}@keyframes dialog-pop{0%{opacity:0;transform:translateY(14px)scale(.94)}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}}@keyframes shine{0%,70%{left:-60%}to{left:130%}}@keyframes nav-pop{50%{transform:scale(1.3)translateY(-2px)}}@keyframes bump{40%{transform:scale(1.15)}}@keyframes coin-spin{0%{transform:rotateY(0)}to{transform:rotateY(720deg)}}@keyframes slot-flash{0%{box-shadow:0 0 0 0 var(--rarity,#eebd68);filter:brightness(1.6);transform:scale(1.08)}to{box-shadow:0 0 0 14px #0000}}@keyframes upgrade-pop{0%{filter:brightness(2);transform:scale(.85)}}@keyframes burst-fade{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.2)}}@keyframes stage-shrink{to{height:100px}}@keyframes chest-drop{0%{opacity:0;transform:translateY(-60px)scale(.6)}}@keyframes chest-rattle{20%{transform:rotate(-7deg)scale(1.03)}40%{transform:rotate(6deg)}60%{transform:rotate(-5deg)scale(1.05)}80%{transform:rotate(4deg)}}@keyframes chest-open{0%{filter:brightness(2.2) drop-shadow(0 0 30px var(--rarity,#eebd68));transform:scale(1.25)}to{filter:drop-shadow(0 6px 8px #0008);transform:scale(.62)translateY(-6px)}}@keyframes rays-in{0%{opacity:0;transform:scale(.3)}to{opacity:.9}}@keyframes spin{to{rotate:360deg}}@keyframes flash{0%{opacity:0;transform:scale(.3)}25%{opacity:1}to{opacity:0;transform:scale(1.6)}}@keyframes spark{0%{opacity:1;transform:translate(0)rotate(0)scale(1.2)}to{opacity:0;transform:translate(var(--x), var(--y)) rotate(200deg) scale(.4)}}@keyframes card-flip{0%{opacity:0;transform:perspective(500px)rotateX(70deg)translateY(16px)scale(.9)}}@keyframes rare-glow{0%{box-shadow:0 0 0 0 var(--rarity), 0 0 30px var(--rarity);filter:brightness(1.5)}}@keyframes count{0%{--n:0}to{--n:var(--to)}}@keyframes title-slam{0%{opacity:0;transform:scale(1.8)}}@keyframes sink{0%{opacity:0;transform:translateY(-14px)rotate(-12deg)}}@media (prefers-reduced-motion:reduce){.screen-enter,.dialog,#overlay:not([hidden]),.wallet.bump,.wallet.bump svg,.equipment-slot.just-equipped,.item-showcase.just-upgraded,.item-showcase.just-upgraded:before,.chest-stage,.chest-stage *,.loot-dialog *,.result-dialog *,.choice-dialog *,.choice-dialog:before,.primary:after,.bottom-nav button.active svg{animation:none!important}.chest-rays,.chest-flash,.chest-stage .spark,.choice-dialog:before{display:none}.chest-stage{height:100px}.chest-stage .chest-art{transform:scale(.62)}}.hangar-bay{background:0 0;flex:1 1 0;place-items:center;min-height:0;padding:0;display:grid;position:relative;container-type:size}.hangar-bay .tank-art{width:auto;max-width:80%;height:min(100cqh,230px);animation:3.2s ease-in-out infinite idle}.bay-floor{background:radial-gradient(closest-side,#8edac522,#0000),repeating-radial-gradient(closest-side,#0000 0 18px,#8edac51c 19px 20px);border:2px solid #8edac52e;border-radius:50%;width:min(78%,330px);height:34%;position:absolute;bottom:6%;left:50%;translate:-50%}.bay-power{color:var(--amber);background:#0b171bcc;border:1px solid #eebd6855;border-radius:999px;align-items:center;gap:4px;padding:5px 10px;font-size:13px;display:flex;position:absolute;top:12%;right:4%}.bay-power svg{width:15px;height:15px}.bay-power small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px}@container (height<=72px){.hangar-bay .tank-art,.bay-floor,.bay-power{display:none}}@keyframes idle{50%{transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.hangar-bay .tank-art{animation:none}}.shell,#overlay{overflow-x:clip}@media (min-width:700px){body:not(.in-battle){background:0 0}body:not(.in-battle):before{content:"";z-index:-1;background:radial-gradient(40% 60% at 50% 35%,#2a4a4d88,#0000 70%),linear-gradient(90deg,#0a1316 0,#0000 22% 78%,#0a1316 100%),repeating-linear-gradient(90deg,#ffffff06 0 2px,#0000 2px 160px),repeating-linear-gradient(0deg,#ffffff05 0 2px,#0000 2px 120px),linear-gradient(#0f1d21,#0a1316);position:fixed;inset:0}body:not(.in-battle):after{content:"";z-index:-1;background:repeating-linear-gradient(-45deg,#eebd6830 0 18px,#0a131600 18px 36px);border-top:2px solid #eebd6840;height:26px;position:fixed;bottom:0;left:0;right:0}.shell{background:#0c161acc;box-shadow:0 0 0 1px #2b414866,0 30px 80px #000a}}#callout{z-index:4;text-align:center;pointer-events:none;letter-spacing:.06em;text-transform:uppercase;color:#fff3d6;-webkit-text-stroke:2px #2a1a08;paint-order:stroke fill;text-shadow:0 4px #2a1a08,0 0 26px #eebd68aa;opacity:0;font-size:clamp(30px,9vw,54px);font-weight:800;position:fixed;top:30%;left:0;right:0}#callout.show{animation:1.8s cubic-bezier(.2,1.2,.4,1) forwards callout}#callout.boss{color:#ffd7c9;text-shadow:0 4px #2a0b08,0 0 30px #ff5a3cdd;font-size:clamp(40px,13vw,72px)}#callout.warn{color:#ffb3a1;font-size:clamp(20px,6vw,32px);top:36%}#callout.win{color:#d6fff1;text-shadow:0 4px #082a20,0 0 30px #8edac5cc}#callout.show:before,#callout.show:after{content:"";background:linear-gradient(90deg,#0000,currentColor,#0000);width:0;height:3px;margin:6px auto;animation:1.8s ease-out forwards callout-line;display:block}body[data-paused=true] #callout,body[data-paused=true] #callout:before,body[data-paused=true] #callout:after,body[data-paused=true] #danger{animation-play-state:paused}#danger{z-index:1;pointer-events:none;opacity:0;background:radial-gradient(75% 70%,#0000 70%,#ff2a1a40 100%);transition:opacity .4s;position:fixed;inset:0}#danger.on{animation:1.1s ease-in-out infinite danger}.battle-top,.battle-bottom,#boss-hud{animation:.45s cubic-bezier(.2,1.2,.4,1) backwards hud-in}.battle-bottom{--hud-from:30px}#boss-hud:not([hidden]){animation:.6s cubic-bezier(.2,1.4,.4,1) boss-in}@keyframes callout{0%{opacity:0;transform:scale(2.4)}12%{opacity:1;transform:scale(.94)}20%{transform:scale(1)}80%{opacity:1}to{opacity:0;transform:translateY(-16px)scale(1)}}@keyframes callout-line{15%{width:0}35%,to{width:min(70%,380px)}}@keyframes danger{0%,to{opacity:.45}50%{opacity:1}}@keyframes hud-in{0%{opacity:0;transform:translateY(var(--hud-from,-30px))}}@keyframes boss-in{0%{opacity:0;transform:translate(-50%)scaleX(.2)}}@media (prefers-reduced-motion:reduce){#callout.show{opacity:1;animation:none}#callout.show:before,#callout.show:after,#danger.on,.battle-top,.battle-bottom,#boss-hud:not([hidden]){animation:none}#danger.on{opacity:.6}}.settings-dialog{text-align:left}.settings-dialog h2{text-align:center}.settings-group{border:1px solid var(--line);background:#0b171b88;border-radius:12px;gap:8px;margin-top:14px;padding:10px 12px 12px;display:grid}.settings-group h3{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:10px}.setting-row{justify-content:space-between;align-items:center;gap:10px;min-height:34px;display:flex}.audio-row{flex-wrap:wrap}.audio-row .volume-row{flex-basis:100%}.audio-row.off .volume-row{opacity:.45}.setting-name{align-items:center;gap:7px;font-size:14px;font-weight:800;display:flex}.setting-name small{color:var(--muted);margin-left:6px;font-size:11px;font-weight:400;display:block}.setting-name svg{width:17px;height:17px}.switch{color:var(--muted);background:#1a2c33;border:1px solid #3e5960;border-radius:999px;align-items:center;gap:8px;min-width:78px;padding:4px 10px 4px 4px;font-size:12px;font-weight:800;transition:background .15s;display:inline-flex}.switch i{background:#0b171b;border-radius:999px;width:34px;height:22px;position:relative;box-shadow:inset 0 2px 3px #0008}.switch i:after{content:"";background:#8b9fa5;border-radius:50%;width:16px;height:16px;transition:transform .18s cubic-bezier(.3,1.5,.5,1),background .15s;position:absolute;top:3px;left:3px}.switch.on{color:#1a282b;background:linear-gradient(#f4ca7c,#e2a954);border-color:#b97b33}.switch.on i:after{background:#fff7e3;transform:translate(12px)}.segmented{background:#0b171b;border:1px solid #2b4148;border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.segmented button{min-height:38px;color:var(--muted);background:0 0;border-radius:9px;padding:6px 4px;font-size:13px;font-weight:800;transition:background .15s,color .15s,transform .12s}.segmented button.active{color:#1a282b;background:linear-gradient(#f4ca7c,#e2a954);box-shadow:0 2px #8a5a24}.segmented button:active:not(:disabled){transform:scale(.96)}.volume-row{grid-template-columns:1fr 44px;align-items:center;gap:10px;display:grid}.volume-row output{text-align:right;color:var(--amber);font-size:12px;font-weight:800}.volume-row input[type=range]{width:100%;accent-color:var(--amber);height:28px}.settings-note{color:var(--muted);font-size:11px;line-height:1.45}@media (prefers-reduced-motion:reduce){.switch i:after,.segmented button{transition:none}}.switch.on i{background:#2f7d64}.setting-name:has(small){flex-wrap:wrap;row-gap:0}.setting-name small{flex-basis:100%;margin-left:0}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior:none}input,textarea{-webkit-user-select:auto;user-select:auto}
