:root{--panel: rgba(255, 255, 255, .045);--panel-edge: rgba(255, 255, 255, .09);--slate: #0e1a17;--chalk: #eef4ec;--chalk-dim: #a7bdb2;--chalk-faint: #6c857a;--gold: #ffd23f;--gold-deep: #b38f12;--gold-ink: #3b2d00;--good: #5fe0a2;--bad: #ff6b7a;--blue: #7db6ff;--violet: #b99dff;--ink: #1d2230;--ivory: #fbf5e6;--ivory-2: #ece2c8;--ivory-edge: #c4b38a;--card-paper: #f4efe2;--op-add: #2fb276;--op-sub: #e65656;--op-mul: #3c82f0;--op-div: #9a68f0;--op-dbl: #ef8a24;--op-sq: #11a39a;--op-root: #5b6f93;--op-mirror: #d6457a;--op-fact: #b8860b;--op-pow: #e0482f;--sanity: #ff9fc4;--f-display: "Lilita One", "Arial Rounded MT Bold", system-ui, sans-serif;--f-body: "Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono: "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:dark}@property --bg-glow{syntax: "<color>"; inherits: true; initial-value: #1f3a34;}@property --bg{syntax: "<color>"; inherits: true; initial-value: #12201d;}@property --bg-deep{syntax: "<color>"; inherits: true; initial-value: #0a1311;}body{--bg-glow: #1f3a34;--bg: #12201d;--bg-deep: #0a1311}body[data-mood=elite]{--bg-glow: #283478;--bg: #12173a;--bg-deep: #080a1c}body[data-mood=boss]{--bg-glow: #6e2213;--bg: #300e08;--bg-deep: #170604}body[data-mood=final]{--bg-glow: #4a3a14;--bg: #231c0d;--bg-deep: #110d06}body[data-mood=shop]{--bg-glow: #44361a;--bg: #211b10;--bg-deep: #100d08}body[data-mood=reward]{--bg-glow: #3e3618;--bg: #1c1a10;--bg-deep: #0d0c07}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:radial-gradient(130% 90% at 50% -10%,var(--bg-glow) 0%,var(--bg) 50%,var(--bg-deep) 100%) fixed var(--bg);transition:--bg-glow 2.75s ease,--bg 2.75s ease,--bg-deep 2.75s ease;color:var(--chalk);font:15px/1.45 var(--f-body);overflow-x:hidden;-webkit-tap-highlight-color:transparent}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:2;background:radial-gradient(120% 100% at 50% 40%,transparent 55%,rgba(0,0,0,.45) 100%)}#bg{position:fixed;inset:0;z-index:0;pointer-events:none}#app{position:relative;z-index:1;min-height:100%}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}h1,h2,h3{font-family:var(--f-display);font-weight:400;margin:0;letter-spacing:.01em;text-wrap:balance}p{margin:0}code{font-family:var(--f-mono)}.muted{color:var(--chalk-dim)}.small{font-size:13px}.empty{color:var(--chalk-faint);font-style:italic;padding:10px 0}.mini-h{font:800 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--chalk-faint)}.lbl{font:800 10.5px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--chalk-dim)}[hidden]{display:none!important}.screen{min-height:100%;padding-block:14px 32px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));animation:screen-in calc(.45s / var(--speed, 1)) ease both}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.panel{background:linear-gradient(180deg,#ffffff0e,#ffffff05);border:1.5px solid var(--panel-edge);border-radius:22px;box-shadow:0 20px 40px -24px #000000b3,inset 0 1px #ffffff0f}.btn{border:0;cursor:pointer;border-radius:14px;padding:13px 20px;font:700 16px/1 var(--f-body);color:var(--ink);background:var(--chalk);box-shadow:0 5px #8fa59a,0 12px 18px -6px #00000080;transition:transform .1s ease,box-shadow .1s ease,filter .2s ease}.btn:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.06)}.btn{position:relative}.btn:after,button.tile:after,button.op:after,.slot-total:after{content:"";position:absolute;inset:0;border-radius:inherit}.btn:hover:not(:disabled):after{inset:-2px -2px -6px}button.tile:not(:disabled):hover:after{inset:-10px -10px -22px}button.op:not(:disabled):hover:after{inset:-12px -12px -26px}.slot-total.target:hover:after{inset:-4px -4px -10px}.btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px #8fa59a,0 4px 8px #0006}.btn.primary{background:linear-gradient(180deg,#ffe17a,var(--gold));color:var(--gold-ink);box-shadow:0 5px 0 var(--gold-deep),0 12px 18px -6px #00000080}.btn.primary:active:not(:disabled){box-shadow:0 1px 0 var(--gold-deep),0 4px 8px #0006}.btn.big{font-size:19px;padding:17px 30px;border-radius:16px}.btn:disabled{cursor:not-allowed;filter:grayscale(1) brightness(.55);box-shadow:none;transform:translateY(5px)}.link{background:none;border:0;color:var(--gold);cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:4px}.tile{--rx: 0deg;--ry: 0deg;--lift: 0px;--tc: var(--ink);position:relative;width:64px;height:74px;flex:none;padding:0;border:0;border-radius:14px;display:grid;place-items:center;color:var(--tc);font:38px/1 var(--f-display);background:linear-gradient(180deg,var(--ivory) 0%,var(--ivory-2) 100%);box-shadow:0 6px 0 var(--ivory-edge),0 12px 18px -4px #00000073,inset 0 2px #fff,inset 0 -3px #0000000f;transform:perspective(520px) translateY(var(--lift)) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .18s ease,box-shadow .18s ease;user-select:none}.tile:before{content:"";position:absolute;inset:6px;border-radius:10px;border:1.5px solid color-mix(in srgb,var(--tc) 18%,transparent);pointer-events:none}.tile .num{position:relative;text-shadow:0 1px 0 rgba(255,255,255,.85)}.tile .key{position:absolute;top:5px;left:7px;font:800 9px/1 var(--f-mono);color:#1d223059}button.tile{cursor:default}button.tile:not(:disabled){cursor:pointer}button.tile:not(:disabled):hover{--lift: -9px;box-shadow:0 10px 0 var(--ivory-edge),0 18px 24px -6px #00000080,inset 0 2px #fff}.tile.v0{--tc: #6b7280}.tile.v1{--tc: #2563d9}.tile.v2{--tc: #15925a}.tile.v3{--tc: #d33c36}.tile.v4{--tc: #7446d4}.tile.v5{--tc: #dd7410}.tile.v6{--tc: #0e8a84}.tile.v7{--tc: #c02f76}.tile.v8{--tc: #4652d0}.tile.v9{--tc: #95660c}.tile.big{--tc: var(--ink);font-size:30px}.tile.neg{--tc: var(--ivory);background:linear-gradient(180deg,#3b4256,#232838);box-shadow:0 6px #10131c,0 12px 18px -4px #00000073,inset 0 2px #ffffff26}.tile.neg .num{text-shadow:none}.tile.temp{background:repeating-linear-gradient(-45deg,var(--ivory) 0 7px,#f1e6cb 7px 14px)}.tile.sm{width:38px;height:44px;border-radius:10px;font-size:22px;box-shadow:0 4px 0 var(--ivory-edge),0 6px 10px -2px #0006,inset 0 1.5px #fff}.tile.sm:before{inset:4px;border-radius:7px}.tile.xl{width:88px;height:100px;border-radius:18px;font-size:54px;box-shadow:0 8px 0 var(--ivory-edge),0 18px 28px -6px #0000008c,inset 0 2px #fff}.tile.xl:before{inset:8px;border-radius:12px}.tile.drawn{animation:float 2.2s ease-in-out infinite}.tile.target{animation:target-pulse var(--pulse) ease-in-out infinite}.tile.merged{animation:none;box-shadow:0 6px 0 var(--ivory-edge),0 0 0 4px var(--gold),0 0 30px #ffd23f99}.tile.flying{animation:none}:root{--pulse: 2.6s}@keyframes target-pulse{0%,to{box-shadow:0 6px 0 var(--ivory-edge),0 0 #ffd23f00,0 0 #ffd23f00,0 12px 18px -4px #00000073,inset 0 2px #fff}50%{box-shadow:0 6px 0 var(--ivory-edge),0 0 0 3px #ffd23ff2,0 0 24px 6px #ffd23f80,0 12px 18px -4px #00000073,inset 0 2px #fff}}@keyframes op-glow{0%,to{box-shadow:0 6px color-mix(in srgb,var(--c) 50%,#000),0 0 #ffd23f00,0 0 #ffd23f00,0 16px 24px -8px #0009,inset 0 0 0 2px #fff3}50%{box-shadow:0 6px color-mix(in srgb,var(--c) 50%,#000),0 0 0 3px #ffd23ff2,0 0 26px 7px #ffd23f80,0 16px 24px -8px #0009,inset 0 0 0 2px #fff3}}@keyframes float{0%,to{translate:0 0;rotate:-2deg}50%{translate:0 -7px;rotate:2deg}}.op{--c: var(--op-add);--rx: 0deg;--ry: 0deg;--lift: 0px;--rot: 0deg;position:relative;width:100px;height:132px;flex:none;border:0;border-radius:16px;padding:12px 8px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:radial-gradient(circle at 1px 1px,rgba(255,255,255,.14) 1px,transparent 1.6px) 0 0 / 10px 10px,radial-gradient(120% 85% at 30% 10%,color-mix(in srgb,var(--c) 62%,#fff) 0%,var(--c) 46%,color-mix(in srgb,var(--c) 68%,#000) 100%);box-shadow:0 6px color-mix(in srgb,var(--c) 50%,#000),0 16px 24px -8px #0009,inset 0 0 0 2px #fff3,inset 0 0 0 6px #0000000f;transform:perspective(620px) translateY(var(--lift)) rotate(var(--rot)) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .18s ease,filter .2s ease,box-shadow .18s ease;user-select:none}button.op{cursor:pointer}.op-add{--c: var(--op-add)}.op-sub{--c: var(--op-sub)}.op-mul{--c: var(--op-mul)}.op-div{--c: var(--op-div)}.op-dbl{--c: var(--op-dbl)}.op-sq{--c: var(--op-sq)}.op-root{--c: var(--op-root)}.op-mirror{--c: var(--op-mirror)}.op-fact{--c: var(--op-fact)}.op-pow{--c: var(--op-pow)}.op-dbl .op-sym,.op-sq .op-sym,.op-fact .op-sym,.op-pow .op-sym{scale:.74}.op-sym{flex:1;display:grid;place-items:center;font:66px/1 var(--f-display);text-shadow:0 4px 0 rgba(0,0,0,.22)}.op-name{font:800 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase}.op .key{position:absolute;top:8px;left:10px;font:800 10px/1 var(--f-mono);opacity:.6}.op-odds{position:absolute;top:-11px;right:-8px;font:800 12px/1 var(--f-mono);padding:6px 8px;border-radius:999px;background:var(--ink);border:2px solid currentColor;box-shadow:0 4px 10px #0006}button.op:not(:disabled):hover{--lift: -12px;--rot: -2.5deg;box-shadow:0 10px color-mix(in srgb,var(--c) 50%,#000),0 26px 30px -10px #000000a6,inset 0 0 0 2px #ffffff4d}button.op:not(:disabled):active{--lift: -4px;transition-duration:.06s}button.op:disabled{cursor:not-allowed;filter:saturate(.25) brightness(.62)}.op.sm{width:66px;height:88px;border-radius:12px;padding:7px 4px 8px}.op.sm .op-sym{font-size:42px}.op.sm .op-name{font-size:8px;letter-spacing:.1em}.icon-btn{cursor:pointer;flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;border:1.5px solid var(--panel-edge);background:#00000038;color:var(--chalk-dim);font:700 18px/1 var(--f-body);transition:border-color .15s,color .15s,background .15s}.icon-btn:hover{border-color:var(--chalk-dim);color:var(--chalk)}.nav-btns{display:flex;gap:8px}.mini-bag{display:inline-grid;width:22px;height:22px;flex:none}.mini-bag svg{width:100%;height:100%}.pips{display:inline-flex;gap:4px;align-items:center}.pips i{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--blue);background:transparent}.pips i.on{background:var(--blue);box-shadow:0 0 8px #7db6ff99}.hud{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:8px 12px;border-radius:18px;background:#00000038;border:1.5px solid var(--panel-edge)}.brand{font:22px/1 var(--f-display);white-space:nowrap}.brand-one{display:inline-grid;place-items:center;width:26px;height:30px;margin-left:2px;border-radius:7px;background:linear-gradient(180deg,var(--ivory),var(--ivory-2));color:#2563d9;box-shadow:0 3px 0 var(--ivory-edge);font-size:20px;transform:rotate(6deg)}.progress{display:flex;gap:6px;align-items:center}.dot{width:12px;height:12px;border-radius:4px;background:#ffffff1f;border:1.5px solid rgba(255,255,255,.2);transition:transform .2s}.dot.elite{border-radius:50%}.dot.shop{border-radius:50%;border-style:dashed}.dot.boss{width:15px;height:15px;border-radius:4px;transform:rotate(45deg);border-color:#ff6b7a99}.dot.done{background:var(--good);border-color:var(--good)}.dot.now{background:var(--gold);border-color:var(--gold);box-shadow:0 0 12px #ffd23fb3}.hud-stats{display:flex;gap:6px 18px;flex-wrap:wrap;align-items:center}.hstat{display:flex;align-items:center;gap:8px}.hstat b{font:22px/1 var(--f-display);font-variant-numeric:tabular-nums}.hstat.moves b{color:var(--blue)}.hstat.kp b{color:var(--gold);display:inline-block}.hstat .lbl .short{display:none}.hud-end{display:flex;gap:8px;align-items:center;margin-left:auto}.hud-btn{cursor:pointer;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border-radius:12px;border:1.5px solid var(--panel-edge);background:#00000038;font:700 14px/1 var(--f-body);color:var(--chalk);transition:border-color .15s,background .15s}.hud-btn b{font:18px/1 var(--f-display)}.hud-btn:hover{border-color:var(--gold);background:#ffd23f12}.screen.game,.screen.mapscreen,.screen.shopscreen{height:100vh;height:100dvh;min-height:0;overflow:hidden;padding-block:max(10px,env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-bottom,0px))}.fit{display:block;white-space:nowrap;line-height:1;font-size:min(var(--fit-h, 78cqh),calc(100cqw / (var(--len, 4) * .6)),var(--fit-max, 400px))}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game{--hud-h: 58px;--gap: 10px;max-width:1440px;margin:0 auto;display:grid;gap:var(--gap);grid-template-columns:clamp(200px,21vw,300px) minmax(0,1fr);grid-template-rows:var(--hud-h) minmax(0,1fr);grid-template-areas:"top top" "enemy table"}@media(min-height:1000px)and (min-aspect-ratio:1/1){.screen.game{padding-block:calc((100dvh - 980px)/2)}}.game>*{min-width:0;min-height:0}.game>.hud{grid-area:top}.game.flash-bad:before{content:"";position:fixed;inset:0;z-index:3;pointer-events:none;background:radial-gradient(circle,transparent 40%,rgba(255,60,80,.35));animation:flash .7s ease forwards}@keyframes flash{0%{opacity:1}to{opacity:0}}.enemy-card{grid-area:enemy;padding:10px;display:grid;grid-template-rows:minmax(0,.9fr) minmax(0,1fr);gap:10px;overflow:hidden}.enemy-stage{position:relative;min-height:0;border-radius:16px;background:radial-gradient(circle at 50% 38%,#fffaf0 0%,var(--card-paper) 52%,#ddd3bb 100%);box-shadow:inset 0 0 0 2px #1d223026,inset 0 -18px 30px -18px #1d223059}.enemy-stage:before,.next-art:before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:linear-gradient(rgba(29,34,48,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(29,34,48,.06) 1px,transparent 1px);background-size:14px 14px;pointer-events:none}.tier-concept.enemy-stage,.tier-concept.next-art,.tier-concept.boss-portrait{background:radial-gradient(circle at 50% 38%,#fbf7ff,#ece4fb 55%,#d4c6f0)}.tier-problem.enemy-stage,.tier-problem.next-art,.tier-problem.boss-portrait{background:radial-gradient(circle at 50% 38%,#fff6f2,#fbe3dc 55%,#efc1b5)}.tier-millennium.enemy-stage,.tier-millennium.next-art,.tier-millennium.boss-portrait{background:radial-gradient(circle at 50% 38%,#fffbea,#fbefc2 55%,#edd27e)}.tier-ai.enemy-stage,.tier-ai.next-art,.tier-ai.boss-portrait{background:radial-gradient(circle at 50% 38%,#f2fffb,#d4f5ec 55%,#9fdcca)}.enemy-art{position:absolute;inset:8% 8% 2%}.enemy-art>svg,.enemy-art>img{position:absolute;inset:0;width:100%;height:100%;overflow:visible;object-fit:contain}.portrait-img{display:block;transform-origin:50% 100%}.enemy-art .body,.companion-art .body,.next-art .body{animation:bob 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 100%}.enemy-art .shadow,.companion-art .shadow{animation:breathe 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.enemy-art .eyes,.companion-art .eyes,.next-art .eyes{animation:blink 5.2s infinite;transform-box:fill-box;transform-origin:center}@keyframes bob{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.015,.985)}}@keyframes breathe{0%,to{transform:scale(1);opacity:.22}50%{transform:scale(.86);opacity:.15}}@keyframes blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}.enemy-art.hurt .body{animation:hurt .6s ease both}.enemy-art.gloat .body{animation:gloat .45s ease 3}.enemy-art.defeated>*{animation:defeated .9s cubic-bezier(.5,-.4,.7,1) forwards}@keyframes hurt{0%{transform:none}20%{transform:translate(-7px) scale(1.1,.88)}45%{transform:translate(7px) scale(.92,1.08)}70%{transform:translate(-3px)}to{transform:none}}@keyframes gloat{0%,to{transform:none}40%{transform:translateY(-12px) scale(.96,1.05) rotate(-3deg)}70%{transform:translateY(0) scale(1.06,.94)}}@keyframes defeated{0%{transform:none;opacity:1}30%{transform:scale(1.12) rotate(-6deg)}to{transform:translateY(30px) scale(.2) rotate(200deg);opacity:0}}.speech{position:absolute;left:50%;top:8px;z-index:4;max-width:94%;width:max-content;padding:8px 12px;border-radius:14px;background:#fff;color:var(--ink);font:700 13.5px/1.25 var(--f-body);box-shadow:0 8px 18px #00000059,0 0 0 2px var(--ink);transform:translate(-50%,-10%) scale(.6);opacity:0;pointer-events:none;transition:transform .25s cubic-bezier(.2,1.6,.4,1),opacity .2s ease}.speech:after{content:"";position:absolute;left:50%;bottom:-8px;width:14px;height:14px;background:#fff;transform:translate(-50%) rotate(45deg);box-shadow:2px 2px 0 var(--ink)}.speech.show{opacity:1;transform:translate(-50%) scale(1)}.enemy-info{display:flex;flex-direction:column;gap:6px;padding:0 2px 2px;min-height:0;overflow:hidden}.enemy-info>*{flex:none;min-width:0}.enemy-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.step{font:800 11px/1 var(--f-mono);color:var(--chalk-faint);white-space:nowrap}.enemy-info h2{font-size:clamp(18px,2.2vw,28px);line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.range-big{display:flex;align-items:baseline;gap:8px;white-space:nowrap;overflow:hidden}.range-big b{font:clamp(20px,2.6vw,34px)/1 var(--f-display);color:var(--good);font-variant-numeric:tabular-nums}.chip{display:inline-flex;align-items:center;font:800 10.5px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;padding:6px 9px;border-radius:999px;border:1.5px solid currentColor;white-space:nowrap}.chip.figure{color:var(--chalk-dim)}.chip.concept{color:var(--violet)}.chip.problem{color:var(--bad)}.chip.shop{color:var(--good)}.chip.millennium{color:var(--gold)}.chip.ai{color:#80ffdb}.rule{display:grid;align-content:start;gap:3px;padding:8px 10px;border-radius:12px;background:#ff6b7a1a;border:1.5px solid rgba(255,107,122,.3);font-size:13.5px;line-height:1.3}.rule b{font:800 10.5px/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--bad)}.rule.plain{background:#ffffff0a;border-color:var(--panel-edge);color:var(--chalk-dim)}.enemy-info>.rule{flex:0 1 auto;min-height:0;overflow:hidden;cursor:help}.enemy-info>.flavor{flex:0 1 auto;min-height:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.board{grid-area:table;display:grid;gap:var(--gap);grid-template-rows:clamp(48px,9.5dvh,80px) minmax(0,1.1fr) minmax(0,1.3fr);min-height:0}.board>*{min-width:0;min-height:0}.row-label{font:800 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--chalk-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ruler{display:grid;align-items:center;padding:0 clamp(18px,2vw,26px);border-radius:18px;background:#0003;border:1.5px solid var(--panel-edge);overflow:hidden}.track{position:relative;height:12px;border-radius:999px;background:#ffffff12;box-shadow:inset 0 2px 4px #0006}.track .zone{position:absolute;top:-4px;bottom:-4px;border-radius:6px;background:linear-gradient(180deg,#7bf0b8,#2fbf7c);box-shadow:0 0 18px #5fe0a28c;transition:left .45s ease,width .45s ease}.track .over-zone{position:absolute;right:0;top:0;bottom:0;border-radius:0 999px 999px 0;background:repeating-linear-gradient(-45deg,rgba(255,107,122,.4) 0 6px,transparent 6px 12px);transition:left .45s ease}.tick{position:absolute;top:18px;transform:translate(-50%);font:800 11px/1 var(--f-mono);color:var(--chalk-faint);white-space:nowrap;transition:left .45s ease}.tick.zero{left:0;transform:none}.tick.lo,.tick.hi{color:var(--good)}.tick.end{opacity:.6;transform:translate(-100%)}.marker{position:absolute;bottom:10px;display:grid;justify-items:center;transition:left .45s cubic-bezier(.3,1.4,.5,1);z-index:2}.marker b{font:14px/1 var(--f-display);padding:4px 7px 3px;border-radius:8px;background:var(--chalk);color:var(--ink);box-shadow:0 4px 10px #0006;font-variant-numeric:tabular-nums;white-space:nowrap}.marker i{width:0;height:0;border:6px solid transparent;border-top-color:var(--chalk);border-bottom:0}.marker.in b{background:var(--good)}.marker.in i{border-top-color:var(--good)}.marker.over b{background:var(--bad);color:#fff}.marker.over i{border-top-color:var(--bad)}.marker.ghost{bottom:auto;top:10px;z-index:3}.marker.ghost i{order:-1;border-top-color:transparent;border-bottom:6px solid var(--chalk);border-top-width:0}.marker.ghost b{outline:2px dashed var(--ink);outline-offset:-4px}.marker.ghost.in i{border-bottom-color:var(--good)}.marker.ghost.over i{border-bottom-color:var(--bad)}.marker.ghost.pv b{outline-color:var(--gold-ink);box-shadow:0 0 0 2px var(--gold),0 4px 10px #0006}.marker.edge-l{justify-items:start}.marker.edge-r{justify-items:end}.eqzone{display:grid;gap:var(--gap);grid-template-columns:minmax(0,.72fr) minmax(0,1.6fr);min-height:0}.eqzone>*{min-width:0;min-height:0}.score{padding:10px 12px 12px;border-radius:20px;display:grid;grid-template-rows:auto minmax(0,1fr) auto clamp(38px,6.5dvh,52px) clamp(40px,7dvh,56px);grid-template-areas:"top" "num" "sub" "eq" "stand";justify-items:stretch;gap:6px;overflow:hidden;background:radial-gradient(120% 120% at 50% 0%,#1b302b,var(--slate));box-shadow:inset 0 0 50px #0000008c,0 20px 30px -22px #000c;transition:border-color .2s}.score.in{border-color:#5fe0a273}.score.over{border-color:#ff6b7a73}.score-top{grid-area:top;display:flex;gap:8px;align-items:center;justify-content:center;min-width:0;overflow:hidden}.score-top .status-chip{min-width:0;overflow:hidden;text-overflow:ellipsis}.slot-total{grid-area:num;position:relative;container-type:size;min-height:0;width:100%;padding:0 8px;border-radius:16px;border:2px dashed transparent;background:none;display:grid;place-items:center;cursor:default;color:var(--chalk);transition:border-color .15s,transform .15s,box-shadow .15s}.total-num{--fit-h: 82cqh;--fit-max: 110px;font-family:var(--f-display);font-variant-numeric:tabular-nums;text-shadow:0 0 22px rgba(238,244,236,.25),0 4px 0 rgba(0,0,0,.35)}.score.in .total-num{color:var(--good);text-shadow:0 0 26px rgba(95,224,162,.45),0 4px 0 rgba(0,0,0,.35)}.score.over .total-num{color:var(--bad)}.score.morph .total-num{animation:morph .42s ease}@keyframes morph{0%{transform:none;filter:none}50%{transform:scaleX(-1) skew(10deg);filter:blur(2px) hue-rotate(90deg)}to{transform:none;filter:none}}.slot-total.target{cursor:pointer;border-color:#ffd23f99;animation:total-pulse var(--pulse) ease-in-out infinite}.slot-total.target:hover{background:#ffd23f0f}.slot-total.selected,.slot-total.selected:hover{animation:none;border-style:solid;border-color:var(--gold);box-shadow:0 0 0 3px #ffd23f4d,0 0 24px #ffd23f4d}@keyframes total-pulse{0%,to{box-shadow:0 0 #ffd23f00,0 0 #ffd23f00}50%{box-shadow:0 0 0 2px #ffd23f99,0 0 24px 6px #ffd23f66}}.status-chip{font:800 10px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;padding:5px 8px;border-radius:999px;border:1.5px solid currentColor;white-space:nowrap}.status-chip.in{color:var(--good)}.status-chip.over{color:var(--bad)}.status-chip.under{color:var(--chalk-faint)}.total-sub{grid-area:sub;height:1.3em;font-size:12.5px;line-height:1.3;color:var(--violet);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn.stand{grid-area:stand;container-type:size;min-width:0;width:100%;height:100%;padding:4px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;overflow:hidden}.stand-in{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;min-width:0}.stand-in>span{font:700 11px/1 var(--f-body);letter-spacing:.04em;opacity:.8;white-space:nowrap}.stand-in>b{--fit-h: 42cqh;--fit-max: 24px;font-family:var(--f-display);font-weight:400;max-width:100%}.stand-cost{font:800 10px/1 var(--f-mono);color:#9c2f45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.stand-cost.danger{color:#c0102c;text-transform:uppercase}@container (max-height: 44px){.stand-in{flex-direction:row;gap:5px}.stand-in>span{flex:none}.stand-in>b{font-size:15px;flex:none;max-width:60%;overflow:hidden;text-overflow:ellipsis}.stand-in>.stand-cost{flex:0 1 auto;min-width:0}}.btn.stand.ready{background:linear-gradient(180deg,#8ff5c5,var(--good));box-shadow:0 5px #239866,0 12px 18px -6px #00000080;animation:ready-good 1.6s ease-in-out infinite}@keyframes ready{0%,to{box-shadow:0 5px 0 var(--gold-deep),0 0 #ffd23f00}50%{box-shadow:0 5px 0 var(--gold-deep),0 0 0 8px #ffd23f33}}@keyframes ready-good{0%,to{box-shadow:0 5px #239866,0 0 #5fe0a200}50%{box-shadow:0 5px #239866,0 0 0 8px #5fe0a233}}.equation{container-type:size;position:relative;border-radius:20px;padding:10px 14px;display:grid;grid-template-rows:minmax(0,auto) auto auto;align-content:center;gap:8px;overflow:hidden;background:radial-gradient(120% 140% at 50% 0%,#ffffff0d,#0000002e);transition:border-color .2s,background .2s}.equation.pick-target,.equation.ready{border-color:#ffd23f59}.eq-line{--slot: clamp(34px, min( calc(100cqh - 92px) , 15.5cqw), 118px);min-height:0;display:grid;grid-template-columns:var(--slot) var(--slot) var(--slot) calc(var(--slot) * .92) minmax(0,1fr);align-items:center;align-content:center;gap:clamp(6px,2cqw,18px)}.eq-cell{display:grid;justify-items:center;gap:4px;min-width:0}.eq-cell.cell-res{justify-items:stretch}.eq-line.swapped .cell-b{order:-2}.eq-line.swapped .cell-op{order:-1}.eq-cap{font:800 9px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--chalk-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center}.eq-slot{position:relative;width:var(--slot);height:var(--slot);display:grid;place-items:center;border-radius:16px;border:2px dashed rgba(255,255,255,.14);background:#0000001f;color:inherit;padding:0;transition:border-color .15s,box-shadow .15s,background .15s}.eq-slot.filled{border-color:transparent;background:none}.eq-q{font:calc(var(--slot) * .42)/1 var(--f-display);color:#fff3}.eq-none{font:800 10px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--chalk-faint)}.eq-slot .tile{width:calc(var(--slot) * .8);height:calc(var(--slot) * .92);font-size:calc(var(--slot) * .5);border-radius:calc(var(--slot) * .16)}.eq-slot .op{width:calc(var(--slot) * .74);height:calc(var(--slot) * .96);padding:calc(var(--slot) * .06) 2px;border-radius:calc(var(--slot) * .14)}.eq-slot .op .op-sym{font-size:calc(var(--slot) * .46)}.eq-slot .op .op-name{display:none}.eq-slot .op .acts{position:absolute;bottom:-8px;left:50%;translate:-50% 0;font:800 9px/1 var(--f-mono);padding:3px 5px;border-radius:999px;background:var(--ink);color:var(--gold);white-space:nowrap}button.eq-a{cursor:default}button.eq-a:not(:disabled){cursor:pointer}.eq-a.wanted,.equation.pick-op .eq-op{border-color:#ffd23fbf;background:#ffd23f0f;animation:total-pulse var(--pulse) ease-in-out infinite}.eq-a.wanted .eq-q,.equation.pick-op .eq-op .eq-q{color:var(--gold)}.eq-a.filled{border-style:solid;border-color:var(--gold);box-shadow:0 0 0 3px #ffd23f40}.eq-a.filled.has-tile{border-color:transparent;background:none;box-shadow:none}.eq-a.has-tile .tile{box-shadow:0 6px 0 var(--ivory-edge),0 0 0 3px var(--gold),0 0 22px 4px #ffd23f73,inset 0 2px #fff}.eq-total{container-type:size;width:100%;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);place-items:center;padding:4px}.eq-total small{font:800 8px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--chalk-dim)}.eq-total b{--fit-h: 70cqh;font-family:var(--f-display);font-weight:400;max-width:100%}.eq-slot.drop-hot{border-color:var(--gold);border-style:solid;background:#ffd23f24}.btn.confirm{width:calc(var(--slot) * .92);height:calc(var(--slot) * .8);min-width:0;padding:0;display:grid;place-items:center}.btn.confirm .eq{font:calc(var(--slot) * .5)/.7 var(--f-display)}.btn.confirm.ready{animation:ready 1.4s ease-in-out infinite}.eq-res{width:100%;container-type:size;padding:0 8px;justify-items:center}.eq-res b{--fit-h: 62cqh;--fit-max: 72px;font-family:var(--f-display);font-weight:400;font-variant-numeric:tabular-nums;color:#fff3}.eq-res.in b{color:var(--good)}.eq-res.over b{color:var(--bad)}.eq-res.under b,.eq-res.part b,.eq-res.neutral b{color:var(--chalk)}.eq-res.in,.eq-res.over,.eq-res.under,.eq-res.part,.eq-res.neutral{border-style:solid;border-color:#ffffff1f}.eq-sub{height:40px;display:flex;align-items:center;justify-content:safe center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;font:700 13px/1 var(--f-mono);color:var(--chalk-dim)}.eq-sub>*{flex:none}.eq-then{display:inline-flex;align-items:baseline;gap:8px}.eq-then-lbl{font:800 13px/1 var(--f-mono);color:var(--chalk-dim)}.eq-then b{font:34px/1 var(--f-display);color:var(--chalk);font-variant-numeric:tabular-nums;text-shadow:0 3px 0 rgba(0,0,0,.35)}.eq-then b.in{color:var(--good)}.eq-then b.over{color:var(--bad)}.pv-tf{font-size:12px;color:var(--violet)}.lp{font:800 10px/1 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;padding:5px 7px;border-radius:6px;background:#ffffff14;color:var(--chalk)}.lp.mul{background:var(--gold);color:var(--gold-ink)}.eq-hint{height:18px;font-size:13px;line-height:18px;color:var(--chalk-dim);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.equation.pick-op .eq-hint,.equation.pick-target .eq-hint,.equation.ready .eq-hint{color:var(--gold)}.eq-hint.note{color:var(--violet)!important}@container (max-height: 170px){.eq-cap{display:none}.eq-line{--slot: clamp(30px, min( calc(100cqh - 70px) , 15.5cqw), 118px)}.eq-then b{font-size:26px}}@container (max-height: 120px){.eq-hint{display:none}.eq-line{--slot: clamp(28px, min( calc(100cqh - 46px) , 15.5cqw), 118px)}.eq-then b{font-size:22px}}.lower{display:grid;gap:var(--gap);grid-template-columns:minmax(0,1fr) clamp(170px,19vw,280px);grid-template-rows:minmax(0,.8fr) minmax(0,1.2fr);grid-template-areas:"hand bag" "ops bag";min-height:0}.lower>*{min-width:0;min-height:0}.hand-row{grid-area:hand;display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px}.ops-row{grid-area:ops;display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px}.hand{container-type:size;display:flex;align-items:center;gap:12px;min-height:0}.hand .tile{--tw: min(70px, calc(100cqh / 1.3), calc((100cqw - (var(--n, 3) - 1) * 12px) / var(--n, 3)));flex:none;width:var(--tw);height:calc(var(--tw) * 1.15);font-size:calc(var(--tw) * .58);border-radius:calc(var(--tw) * .2)}.hand .empty{padding:0}.tile.selected,.tile.selected:not(:disabled):hover{animation:none;--lift: -10px;box-shadow:0 6px 0 var(--ivory-edge),0 0 0 4px var(--gold),0 0 26px #ffd23f8c,inset 0 2px #fff}.tile .order{position:absolute;bottom:3px;right:5px;font:800 11px/1 var(--f-mono);color:var(--gold-deep)}.moves-line{display:flex;align-items:center;gap:12px}.moves-tag{display:inline-flex;align-items:center;gap:8px;color:var(--blue);letter-spacing:.08em}.ops{container-type:size;display:flex;align-items:center;gap:14px;min-height:0;padding-top:6px}.board .ops .op{--ow: min(108px, calc((100cqh - 10px) / 1.3), calc((100cqw - (var(--n, 4) - 1) * 14px - 10px) / var(--n, 4)));flex:none;width:var(--ow);height:calc(var(--ow) * 1.3);padding:calc(var(--ow) * .1) 3px;border-radius:calc(var(--ow) * .16)}.board .ops .op .op-sym{font-size:calc(var(--ow) * .62)}.board .ops .op .op-name{font-size:clamp(7px,calc(var(--ow) * .11),11px);letter-spacing:.06em}.ops.denser .op .op-name{display:none}.ops.your-turn .op:not(:disabled){animation:op-glow var(--pulse) ease-in-out infinite}.ops-row:has(.ops.your-turn) .row-label{color:var(--gold)}.op.banned .op-name{color:#ffd0d5}.op .count{position:absolute;right:-8px;top:-9px;font:800 12px/1 var(--f-mono);padding:5px 7px;border-radius:999px;background:var(--ink);color:var(--chalk);border:2px solid rgba(255,255,255,.5);box-shadow:0 4px 10px #0006}.op.sm .count{font-size:10.5px;padding:3px 5px;right:-7px;top:-7px}.op-odds{position:absolute;top:-11px;left:-8px;font:800 11.5px/1 var(--f-mono);padding:5px 7px;border-radius:999px;background:var(--ink);border:2px solid currentColor;box-shadow:0 4px 10px #0006}.op-odds.good{color:var(--good)}.op-odds.meh{color:var(--gold)}.op-odds.bad{color:var(--bad)}.drag-ghost.fight-drag{position:fixed;z-index:1000;pointer-events:none;margin:0;transition:none}.dragging-src{opacity:.35}.board .hand .tile,.board .ops .op,.eq-slot .tile.drawn,.slot-total{touch-action:none}.eq-slot .tile.drawn{cursor:grab}.drop-ok{outline:2px dashed rgba(255,210,63,.7);outline-offset:3px}.drop-hot{outline:3px solid var(--gold);outline-offset:3px;box-shadow:0 0 24px #ffd23f73}.overlay{z-index:55}.sheet{width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:18px 18px 20px;border-radius:22px;background:linear-gradient(180deg,#1f3832,#142520);border:2px solid var(--panel-edge);box-shadow:0 30px 60px -20px #000c;display:grid;gap:14px;animation:drop-in .4s cubic-bezier(.2,1.4,.4,1) both}.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.sheet-head h2{font-size:28px}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tab{cursor:pointer;border:1.5px solid var(--panel-edge);background:transparent;border-radius:999px;padding:8px 12px;font:700 13.5px/1 var(--f-body);color:var(--chalk-dim)}.tab[aria-pressed=true]{background:var(--chalk);color:var(--ink);border-color:var(--chalk)}.bag-view{display:grid;gap:14px}.bag-groups{display:flex;flex-wrap:wrap;gap:14px 12px;padding-top:6px}.group{position:relative}.badge{position:absolute;right:-8px;top:-8px;font:800 10.5px/1 var(--f-mono);padding:4px 5px;border-radius:999px;background:var(--ink);color:var(--chalk);border:1.5px solid var(--chalk-faint)}.dist{display:grid;gap:5px}.dist-row{display:grid;grid-template-columns:22px 1fr 38px;align-items:center;gap:8px;font:700 12px/1 var(--f-mono)}.dv{text-align:right;color:var(--chalk-dim)}.dbar{height:8px;border-radius:999px;background:#ffffff12;overflow:hidden}.dbar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#b7d6ff)}.dp{color:var(--chalk-faint);text-align:right}.drawn{display:grid;gap:8px}.drawn-row{display:flex;flex-wrap:wrap;gap:8px}.drawn-row .tile{opacity:.6;transform:scale(.85)}.drawn-row.in-hand .tile{opacity:1}.kit-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kit-stats>div{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:#00000038;border:1.5px solid var(--panel-edge)}.kit-stats b{font:28px/1 var(--f-display);color:var(--blue)}.kit-ops,.kit-bag{display:flex;flex-wrap:wrap;gap:12px;padding-top:6px}.options{display:grid;gap:4px}.opt-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 4px;border-bottom:1px solid var(--panel-edge)}.opt-row b{font-size:15.5px}.opt-stack{flex-direction:column;align-items:stretch;gap:8px}.opt-preview{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.opt-foot{display:flex;justify-content:flex-end;padding-top:12px}.small-btn{padding:10px 14px;font-size:14px}.switch{cursor:pointer;flex:none;position:relative;width:50px;height:30px;border-radius:999px;border:1.5px solid var(--panel-edge);background:#00000059;transition:background .15s,border-color .15s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:var(--chalk-faint);transition:transform .18s ease,background .15s}.switch[aria-checked=true]{background:var(--good);border-color:var(--good)}.switch[aria-checked=true]:after{transform:translate(20px);background:#fff}.help .howto{max-width:none}.mapscreen,.shopscreen{max-width:1240px;margin:0 auto;display:grid;gap:12px;grid-template-rows:auto minmax(0,1fr)}.mapscreen>*,.shopscreen>*{min-width:0;min-height:0}.map-board{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(260px,340px);min-height:0}.map-board>*{min-height:0}.map-frame{border-radius:20px;background:#0000002e;border:1.5px solid var(--panel-edge);display:grid;place-items:center;min-height:0;padding:8px}.map-svg{width:100%;height:100%;min-height:0;display:grid;place-items:center}.map-svg svg{width:100%;height:100%;display:block}.edge{fill:none;stroke:#fff3;stroke-width:2.5;stroke-dasharray:1 7;stroke-linecap:round}.edge.taken{stroke:var(--gold);stroke-dasharray:1 6;stroke-width:4;opacity:.9}.edge.live{stroke:#ffd23fb3;stroke-dasharray:4 6;animation:march .9s linear infinite}@keyframes march{to{stroke-dashoffset:-20}}.node .disc{fill:#1a2c27;stroke:var(--chalk-faint);stroke-width:2.5}.node .halo{fill:none;stroke:none}.node .glyph{fill:var(--chalk-dim);font:19px var(--f-display);pointer-events:none}.node.elite .disc{stroke:var(--violet)}.node.elite .glyph{fill:var(--violet)}.node.shop .disc{stroke:var(--good)}.node.shop .glyph{fill:var(--good);font-size:20px}.node.boss .disc{fill:#5a1d26;stroke:var(--bad);stroke-width:3.5}.node.boss{cursor:pointer}.node.boss.closed{opacity:1}.node.boss.picked .disc{fill:#5a1d26;stroke:var(--gold)}.boss-face .boss-bg{fill:#fbe3dc}.boss-face.tier-concept .boss-bg{fill:#ece4fb}.boss-face.tier-millennium .boss-bg{fill:#fbefc2}.boss-face.tier-ai .boss-bg{fill:#d4f5ec}.boss-face .boss-wob{transform-box:fill-box;transform-origin:50% 92%}.nlabel{fill:var(--bad);font:13px var(--f-display);letter-spacing:.02em;pointer-events:none}.nsmall{fill:var(--chalk-faint);font:800 10px var(--f-mono);letter-spacing:.12em}.node.start .disc{fill:var(--chalk-dim);stroke:none}.node.start.here .disc{fill:var(--gold)}.node.closed{opacity:.42}.node.done .disc{fill:#ffd23f2e;stroke:var(--gold)}.node.done .glyph{fill:var(--gold)}.node.here .halo{stroke:var(--gold);stroke-width:2.5}.node.open{cursor:pointer}.node.open .disc{stroke-width:3.5;filter:drop-shadow(0 0 6px rgba(255,210,63,.45))}.node.open .halo{stroke:#ffd23f8c;stroke-width:2;stroke-dasharray:3 5;animation:spin 6s linear infinite;transform-box:fill-box;transform-origin:center}.node.open:hover .disc,.node.open:focus-visible .disc{fill:#26403a}.node.picked .disc{fill:var(--gold);stroke:var(--gold)}.node.picked .glyph{fill:var(--gold-ink)}.node.picked .halo{stroke:var(--gold);stroke-dasharray:none;animation:none}.node:focus{outline:none}@keyframes spin{to{transform:rotate(360deg)}}.map-info{padding:18px;display:grid;gap:12px;align-content:start;overflow:hidden}.map-info h2{font-size:28px;line-height:1}.map-foe{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;align-items:center}.next-art{position:relative;width:104px;aspect-ratio:1 / 1;padding:6px;border-radius:16px;background:radial-gradient(circle at 50% 40%,#fffaf0,var(--card-paper) 60%,#ddd3bb)}.next-art svg,.next-art img{position:relative;width:100%;height:100%;overflow:visible;object-fit:contain}.next-art.companion-mini{background:radial-gradient(circle at 50% 40%,#234a40,#142520)}.next-art.mystery{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#234a40,#142520);font:46px/1 var(--f-display);color:var(--chalk-dim)}.next-art.mystery:before{display:none}.next-art.mystery.elite{color:var(--violet)}.next-info{display:grid;gap:6px;justify-items:start}.goal-num{font:26px/1 var(--f-display);color:var(--good)}.rule-line{font-size:14px}.rule-line b{color:var(--bad)}.map-info .btn{justify-self:start}.legend{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:13.5px;color:var(--chalk-dim)}.map-info .btn+.legend{margin-top:10px;padding-top:12px;border-top:1px solid var(--panel-edge)}.lg{display:inline-flex;align-items:center;gap:6px}.lg i{font:15px/1 var(--f-display);font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--chalk-faint)}.lg.elite i{border-color:var(--violet);color:var(--violet)}.lg.shop i{border-color:var(--good);color:var(--good)}.lg.boss i{border-color:var(--bad);background:#5a1d26;color:#fff}.map-info .link{padding:0}.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:#040a0999;backdrop-filter:blur(3px);animation:fade-in calc(.25s / var(--speed, 1)) ease both;overflow-y:auto}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.result{width:min(500px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:22px 22px 20px;border-radius:24px;background:linear-gradient(180deg,#1f3832,#142520);border:2px solid var(--panel-edge);box-shadow:0 30px 60px -20px #000c;display:grid;gap:14px;animation:drop-in calc(.55s / var(--speed, 1)) cubic-bezier(.2,1.4,.4,1) both}@keyframes drop-in{0%{transform:translateY(-40px) scale(.85);opacity:0}to{transform:none;opacity:1}}.result h2{font-size:clamp(40px,8vw,54px);line-height:.95;text-align:center}.result.hit h2{color:var(--good)}.result.bj h2{color:var(--gold);text-shadow:0 0 30px rgba(255,210,63,.5)}.result.miss h2{color:var(--bad)}.result.bj{border-color:#ffd23f80}.stood{text-align:center;color:var(--chalk-dim)}.stood b{color:var(--chalk);font-family:var(--f-display);font-weight:400;font-size:1.2em}.result-body{display:grid;gap:12px}.kp-rows{display:grid;gap:4px}.kp-row{display:flex;justify-content:space-between;padding:7px 10px;border-radius:9px;background:#ffffff0a;font-size:14.5px}.kp-row b{font:18px/1 var(--f-display);color:var(--blue)}.kp-row.sum{background:#7db6ff1f}.chips{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}.chip-prop{font:800 13px/1 var(--f-mono);padding:9px 11px;border-radius:10px;border:2px solid var(--chalk);background:#ffffff0f}.chip-prop.mul{background:var(--gold);border-color:var(--gold);color:var(--gold-ink)}.kp-row.prop span:before{content:"◆ ";color:var(--gold)}.chip-prop.plain{border-color:var(--chalk-faint);color:var(--chalk-faint)}.kp-mult{display:flex;justify-content:space-between;align-items:baseline;padding:8px 10px;border-radius:9px;background:#ffd23f1a}.kp-mult b{font:700 14px/1.2 var(--f-mono);color:var(--gold)}.kp-total{display:flex;justify-content:center;align-items:baseline;gap:6px;font:54px/1 var(--f-display);color:var(--gold);text-shadow:0 0 30px rgba(255,210,63,.4);font-variant-numeric:tabular-nums}.kp-total .unit{font-size:20px;color:var(--chalk-dim);text-shadow:none}.miss-line{text-align:center;font-size:16px}.run-over{justify-self:center;font:28px/1 var(--f-display);color:var(--bad)}.result-actions{display:flex;justify-content:center;padding-top:4px}.flavor{font-size:13.5px;font-style:italic;color:var(--chalk-faint)}.pop-in{animation:pop-in calc(.42s / var(--speed, 1)) cubic-bezier(.2,1.6,.4,1) both}@keyframes pop-in{0%{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}.spark{position:fixed;z-index:60;pointer-events:none;margin:-14px 0 0 -10px;font:26px/1 var(--f-display);text-shadow:0 2px 0 rgba(0,0,0,.35)}.float{position:fixed;z-index:60;pointer-events:none;font:20px/1 var(--f-display);color:var(--chalk);text-shadow:0 2px 0 rgba(0,0,0,.5),0 0 14px rgba(0,0,0,.5);white-space:nowrap}.float.good{color:var(--good);font-size:26px}.float.rule{color:var(--violet);font-size:28px}.toasts{position:fixed;z-index:70;top:max(14px,env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);display:grid;gap:8px;width:min(420px,calc(100% - 32px));pointer-events:none}.toast{padding:11px 14px;border-radius:12px;background:var(--chalk);color:var(--ink);font-weight:700;box-shadow:0 10px 24px #00000073;animation:pop-in .35s cubic-bezier(.2,1.6,.4,1) both;transition:opacity .3s,transform .3s}.toast.warn{background:var(--gold);color:var(--gold-ink)}.toast.out{opacity:0;transform:translateY(-10px)}.title{position:relative;display:grid;justify-items:center;align-content:center;gap:clamp(12px,2.6dvh,22px);text-align:center;min-height:100vh;min-height:100dvh;padding-block:24px}.title-corner{position:absolute;top:max(12px,env(safe-area-inset-top,0px));right:max(16px,env(safe-area-inset-right,0px))}.logo{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}.carry{font:clamp(54px,11vw,104px)/.9 var(--f-display);text-shadow:0 6px 0 rgba(0,0,0,.35),0 0 40px rgba(238,244,236,.15)}.one-wrap{position:relative;display:inline-grid}.one-wrap .tile{transform:rotate(8deg);animation:one-bounce 2.4s ease-in-out infinite}.hop{position:absolute;top:-26px;right:-18px;z-index:2;font:30px/1 var(--f-display);color:var(--gold);text-shadow:0 3px 0 var(--gold-deep);animation:hop 2.4s ease-in-out infinite}@keyframes one-bounce{0%,to{transform:rotate(8deg) translateY(0)}50%{transform:rotate(4deg) translateY(-8px)}}@keyframes hop{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-14px,-22px) rotate(-20deg)}50%{transform:translate(-30px,-4px) rotate(-30deg)}75%{transform:translate(-14px,-18px) rotate(-10deg)}}.tagline{font-size:19px;color:var(--chalk-dim);max-width:40ch}.howto{margin:0;padding:18px 22px 18px 44px;display:grid;gap:10px;max-width:560px;text-align:left;border-radius:20px;background:#00000038;border:1.5px solid var(--panel-edge)}.howto li::marker{font:800 14px var(--f-mono);color:var(--gold)}.howto b{color:var(--chalk)}.title-actions{display:grid;justify-items:center;gap:12px}.seed-row{display:flex;align-items:center;gap:8px;color:var(--chalk-dim);font-size:14px}.seed-row code{color:var(--chalk);letter-spacing:.12em}.seed-input{width:10ch;padding:7px 9px;border-radius:9px;border:1.5px solid var(--panel-edge);background:#00000047;color:var(--chalk);font:700 14px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase}.seed-input::placeholder{color:var(--chalk-faint);text-transform:none;letter-spacing:.04em}.seed-input:focus{outline:none;border-color:var(--gold)}.fineprint{font-size:12.5px;color:var(--chalk-faint)}.shop-body{display:grid;gap:12px;grid-template-columns:minmax(240px,.85fr) minmax(0,1.6fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"companion counter" "kit counter";min-height:0}.shop-body>*{min-width:0;min-height:0}.companion{grid-area:companion;padding:14px;display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center}.companion-art{width:96px;aspect-ratio:120 / 132}.companion-art svg{width:100%;height:100%;overflow:visible}.companion-art .jet{animation:jet .9s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.companion-art .therefore{animation:think 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 100%}@keyframes jet{0%{opacity:.25;transform:scaleX(.7)}to{opacity:.7;transform:scaleX(1.1)}}@keyframes think{0%,to{transform:rotate(0)}50%{transform:rotate(12deg) translateY(-2px)}}.companion-text{display:grid;gap:8px;justify-items:start}.companion-text h2{font-size:26px}.bubble{position:relative;padding:10px 12px;border-radius:14px;background:var(--card-paper);color:var(--ink);font-weight:700;font-size:14px;box-shadow:0 0 0 2px var(--ink),0 10px 20px #00000059;max-width:34ch}.counter-panel{grid-area:counter;padding:14px;display:grid;gap:12px;grid-template-rows:auto minmax(0,1fr) auto}.panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.counter-panel h3,.kit-panel h3{font-size:22px}.offers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:10px;min-height:0}.offer{cursor:pointer;position:relative;display:grid;justify-items:center;align-content:center;gap:6px;padding:12px 8px 10px;border-radius:16px;border:1.5px solid var(--panel-edge);background:#0000002e;transition:transform .15s ease,border-color .15s,background .15s;perspective:600px;min-height:0;overflow:hidden}.offer:hover:not(:disabled){border-color:var(--gold);background:#ffd23f0f}.offer:hover:not(:disabled)>.tile,.offer:hover:not(:disabled)>.op,.offer:hover:not(:disabled)>.medal,.offer:hover:not(:disabled)>.cons,.offer:hover:not(:disabled)>.voucher-face{translate:0 -4px}.offer>.tile,.offer>.op,.offer>.medal,.offer>.cons,.offer>.voucher-face{transition:translate .15s ease}.offer.picked{border-color:var(--gold);background:#ffd23f1a;box-shadow:0 0 0 2px #ffd23f59}.offer .op,.offer .tile,.offer .voucher-face{pointer-events:none}.offer .tile{margin-block:4px 6px}.offer-name{font-size:14px;font-weight:700;color:var(--chalk);text-align:center}.offer-sub{font-size:12px;color:var(--chalk-faint);text-align:center;line-height:1.25}.offer-voucher{border-color:#7db6ff73;background:#7db6ff14}.offer .tag{position:absolute;top:8px;left:8px;font:800 9.5px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}.voucher-face{width:64px;height:74px;border-radius:14px;display:grid;place-content:center;justify-items:center;gap:2px;background:linear-gradient(160deg,#a9d0ff,#3c82f0);color:#0c1f3d;box-shadow:0 6px #1f4f9e,inset 0 0 0 2px #fff6}.voucher-face span{font:30px/1 var(--f-display)}.voucher-face small{font:800 10px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase}.price{font:800 13px/1 var(--f-mono);padding:6px 10px;border-radius:999px;background:var(--gold);color:var(--gold-ink);white-space:nowrap}.offer.poor .price{background:#ffffff1a;color:var(--chalk-faint)}.offer.sold{cursor:default;opacity:.45}.offer.sold .price{background:transparent;color:var(--chalk-faint);border:1.5px dashed var(--chalk-faint)}.services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.svc{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;padding:10px 12px;border-radius:14px;border:1.5px solid var(--panel-edge);background:#0000002e;font-size:13.5px;color:var(--chalk-dim);transition:border-color .15s,background .15s}.svc b{color:var(--chalk)}.svc:hover:not(:disabled){border-color:var(--chalk-dim)}.svc.on{border-color:var(--bad);background:#ff6b7a1f}.svc:disabled{cursor:not-allowed;opacity:.45}.kit-panel{grid-area:kit;padding:14px;display:grid;gap:10px;grid-template-rows:auto minmax(0,1fr) auto}.kit{display:grid;gap:8px;align-content:start;min-height:0;overflow:hidden}.kit .bag-groups{gap:12px 10px}.kit-bag.removing{gap:10px}.kit-bag.removing .tile{cursor:pointer;animation:wobble .5s ease-in-out infinite alternate}.kit-bag.removing .tile:hover{box-shadow:0 4px 0 var(--ivory-edge),0 0 0 3px var(--bad)}@keyframes wobble{0%{rotate:-4deg}to{rotate:4deg}}.leave-row{display:flex;justify-content:flex-end}.screen.end{display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding-block:20px}.end-card{width:min(520px,100%);padding:26px 22px;display:grid;gap:14px;justify-items:center;text-align:center}.end-card .companion-art{width:130px}.end-card h1{font-size:clamp(54px,12vw,88px);line-height:.9}.end.won h1{color:var(--gold);text-shadow:0 0 40px rgba(255,210,63,.4)}.end.lost h1{color:var(--bad)}.lede{font-size:17px;color:var(--chalk-dim);max-width:40ch}.stats{margin:4px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}.stats div{padding:12px;border-radius:14px;background:#0003;border:1.5px solid var(--panel-edge)}.stats dt{font:800 10.5px/1.2 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--chalk-faint)}.stats dd{margin:6px 0 0;font:26px/1 var(--f-display)}.end-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}@media(max-width:1000px)and (min-aspect-ratio:1/1){.map-board{grid-template-columns:minmax(0,1fr) minmax(230px,300px)}}@media(max-height:560px)and (min-aspect-ratio:1/1){.screen.game,.screen.mapscreen,.screen.shopscreen{padding-block:max(6px,env(safe-area-inset-top,0px)) max(6px,env(safe-area-inset-bottom,0px))}.hud{padding:4px 10px;gap:4px 14px}.brand{display:none}.hstat b{font-size:17px}.hstat .lbl{font-size:9px}.hud-btn{height:32px;padding:0 10px;font-size:13px}.icon-btn{width:32px;height:32px}.map-info{padding:12px;gap:8px}.map-info h2{font-size:22px}.map-foe{grid-template-columns:72px minmax(0,1fr)}.next-art{width:72px}.flavor,.map-info .btn+.legend{display:none}.companion{grid-template-columns:56px minmax(0,1fr);padding:8px}.companion-art{width:56px}.companion-text h2{display:none}.offer{padding:6px;gap:3px}.offer .tile{width:40px;height:46px;font-size:24px;margin:0}.offer .op.sm{width:46px;height:60px}.offer .op.sm .op-sym{font-size:30px}.voucher-face{width:44px;height:50px}.offer-sub,.offer .tag{display:none}.kit-panel h3,.counter-panel h3{font-size:17px}.kit .tile.sm{width:30px;height:34px;font-size:18px}.kit .op.sm{width:46px;height:60px}.kit .op.sm .op-sym{font-size:30px}}@media(max-aspect-ratio:1/1){.hud{gap:6px 12px;padding:7px 10px}.brand{display:none}.hud-stats{gap:6px 12px}.hstat b{font-size:18px}.hstat .lbl{font-size:9px}.hud-btn{height:36px;padding:0 10px}.icon-btn{width:36px;height:36px}.map-board{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:10px}.map-info{padding:12px 14px;gap:8px}.map-info h2{font-size:22px}.map-foe{grid-template-columns:76px minmax(0,1fr);gap:10px}.next-art{width:76px}.map-info .flavor,.map-info .btn+.legend,.map-info .rule-line+.flavor+p+.legend{display:none}.map-info .btn{justify-self:stretch}.shop-body{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"companion" "counter" "kit";gap:8px}.companion{grid-template-columns:60px minmax(0,1fr);padding:8px 10px}.companion-art{width:60px}.companion-text h2{display:none}.counter-panel{padding:10px;gap:8px}.offers{gap:8px}.offer{padding:8px 4px 6px;gap:3px}.offer .tile{width:44px;height:50px;font-size:26px;margin:2px 0}.offer .op.sm{width:50px;height:66px}.offer .op.sm .op-sym{font-size:32px}.voucher-face{width:48px;height:54px}.voucher-face span{font-size:24px}.offer-name{font-size:12.5px}.offer-sub,.offer .tag{display:none}.services{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.svc{padding:8px 10px;font-size:12px}.svc span:first-child{display:grid}.kit-panel{padding:10px;gap:6px}.kit-panel h3{display:none}.kit .tile.sm{width:30px;height:34px;font-size:18px}.kit .op.sm{width:44px;height:58px}.kit .op.sm .op-sym{font-size:28px}.kit .bag-groups,.kit .kit-ops{gap:10px 8px;padding-top:4px}.leave-row .btn{flex:1}}@media(max-height:620px){.title .howto,.end-card .companion-art{display:none}.end-card{padding:16px;gap:10px}}@media(max-aspect-ratio:1/1)and (max-width:440px){.hstat .lbl .long{display:none}.hstat .lbl .short{display:inline}}.calm *,.calm *:before,.calm *:after{animation:none!important;transition:none!important}.kit-strip{display:flex;align-items:center;gap:10px}.strip-maths,.strip-cons{display:flex;gap:5px;align-items:center}.strip-cons{padding-left:10px;border-left:1.5px solid var(--panel-edge)}.slot{display:inline-block;flex:none;border:1.5px dashed rgba(255,255,255,.16)}.slot.math-slot{width:34px;height:34px;border-radius:50%}.slot.cons-slot{width:28px;height:36px;border-radius:7px}.strip-btn{cursor:pointer;padding:0;border:0;background:none;border-radius:50%;display:grid;transition:transform .15s ease}.strip-btn:hover{transform:translateY(-2px) scale(1.06)}.medal{--rc: var(--chalk-dim);position:relative;flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#fff8e6,#e6d7b4);color:var(--ink);box-shadow:0 0 0 2.5px var(--rc),0 3px #00000059,inset 0 -3px #00000014;font:800 12px/1 var(--f-mono)}.medal .g{white-space:nowrap;letter-spacing:-.02em}.medal.long .g{font-size:8px}.medal.uncommon{--rc: var(--good)}.medal.rare{--rc: var(--blue)}.medal.common{--rc: #c9b98f}.medal.used{filter:grayscale(1) brightness(.6)}.medal .stack{position:absolute;right:-8px;bottom:-6px;font:800 9.5px/1 var(--f-mono);padding:3px 4px;border-radius:999px;background:var(--gold);color:var(--gold-ink)}.medal.lg{width:58px;height:58px;font-size:18px;box-shadow:0 0 0 3.5px var(--rc),0 5px #00000059,inset 0 -4px #00000014}.medal.lg.long .g{font-size:12px}.cons{--cc: var(--bad);flex:none;width:28px;height:36px;border-radius:7px;display:grid;place-items:center;color:#fff;font:800 12px/1 var(--f-mono);background:radial-gradient(120% 90% at 30% 10%,color-mix(in srgb,var(--cc) 60%,#fff),var(--cc) 55%,color-mix(in srgb,var(--cc) 60%,#000));box-shadow:0 3px color-mix(in srgb,var(--cc) 45%,#000),inset 0 0 0 1.5px #ffffff59}.cons.lifeline{--cc: #e2566a}.cons.formula{--cc: #3c82f0}.cons.theorem{--cc: #c99a06}.cons.lg{width:50px;height:64px;border-radius:11px;font-size:18px}.chip.rarity.common{color:#c9b98f}.chip.rarity.uncommon{color:var(--good)}.chip.rarity.rare{color:var(--blue)}.chip.group.lifeline{color:#ff8394}.chip.group.formula{color:var(--blue)}.chip.group.theorem{color:var(--gold)}.item-sheet{display:grid;gap:12px}.item-head{display:flex;gap:16px;align-items:center}.item-head>div{display:grid;gap:8px;justify-items:start}.item-text{font-size:15.5px}.item-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.picker-wrap{display:grid;gap:10px}.picker{display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}.picker .tile{cursor:pointer}.item-list{display:grid;gap:8px}.item-row{display:flex;gap:10px;align-items:center;font-size:13.5px;color:var(--chalk-dim)}.item-row b{color:var(--chalk)}.opt-group{padding:14px 4px 2px}.opt-group:first-child{padding-top:0}.track .zone.next{background:transparent;box-shadow:none;border:2px dashed rgba(125,182,255,.85);top:-7px;bottom:-7px;z-index:0}.track .zone.next em{position:absolute;left:50%;top:-17px;transform:translate(-50%);font:800 9.5px/1 var(--f-mono);font-style:normal;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);white-space:nowrap}.goal-next{font:800 11px/1 var(--f-mono);color:var(--blue);letter-spacing:.04em;margin-left:2px}.goal-next b{font:18px/1 var(--f-display);color:var(--blue)}.range-big{flex-wrap:wrap;row-gap:4px}.pv-line.neutral b{color:var(--chalk)}.stage-note{font-size:12.5px;color:var(--violet);text-align:center;max-width:30ch}.chip-prop.math{border-color:var(--blue);color:var(--blue)}.chip-prop.math.mul{background:var(--blue);color:#0c1f3d}.kp-row.interest{background:#ffd23f1a}.kp-row.interest b{color:var(--gold)}.pascal{display:flex;gap:12px;align-items:center;justify-content:center;font-weight:700}.companion{grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto}.offer-detail{grid-column:1 / -1;display:grid;gap:8px;padding:12px;border-radius:14px;background:#00000040;border:1.5px solid var(--panel-edge);min-height:0}.offer-detail .btn{justify-self:start}.detail-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.detail-head b{font:20px/1 var(--f-display)}.detail-tag{color:var(--chalk-dim)}.offer .medal.lg,.offer .cons.lg{margin-block:2px 4px}.offer-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.offer-math .offer-sub{text-transform:capitalize}@media(max-aspect-ratio:1/1){.kit-strip{order:10;flex-basis:100%;justify-content:center}.game .hud,.game .hud-stats{flex-wrap:wrap}.medal{width:30px;height:30px;font-size:11px}.slot.math-slot{width:30px;height:30px}.cons{width:24px;height:32px;font-size:11px}.slot.cons-slot{width:24px;height:32px}.offers{gap:6px}.offer .medal.lg{width:40px;height:40px;font-size:14px}.offer .medal.lg.long .g{font-size:9px}.offer .cons.lg{width:34px;height:44px;font-size:14px}.companion{grid-template-columns:52px minmax(0,1fr)}.offer-detail{padding:8px 10px;gap:6px}.offer-detail .item-text{font-size:13px}}@media(max-height:560px)and (min-aspect-ratio:1/1){.medal{width:28px;height:28px;font-size:10.5px}.slot.math-slot{width:28px;height:28px}.cons{width:22px;height:28px;font-size:10px}.slot.cons-slot{width:22px;height:28px}.offer .medal.lg{width:34px;height:34px;font-size:12px}.offer .cons.lg{width:28px;height:36px;font-size:12px}.offer-detail{padding:6px 8px;gap:4px}.offer-detail .item-text{font-size:12px}}@media(max-aspect-ratio:1/1)and (max-width:440px){.bag-word{display:none}.game .hud{flex-wrap:wrap;row-gap:6px}.game .hud-stats{flex-wrap:nowrap}.game .hud-end{gap:6px}}.hstat.sanity b{color:var(--sanity)}.hstat.sanity b small{font:13px/1 var(--f-display);opacity:.6}.san-bar{display:inline-block;width:46px;height:8px;border-radius:999px;background:#ffffff1a;overflow:hidden;box-shadow:inset 0 1px 2px #0006}.san-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff7eb0,var(--sanity));transition:width .6s cubic-bezier(.3,1.2,.5,1)}.san-bar.big{width:min(180px,40vw);height:12px}.hstat.sanity.low b{color:var(--bad)}.hstat.sanity.low .san-bar i{background:var(--bad);animation:low-pulse 1.1s ease-in-out infinite}@keyframes low-pulse{50%{opacity:.45}}.floor-tag{font:800 11px/1 var(--f-mono);letter-spacing:.06em;padding:4px 6px;border-radius:6px;background:#ffd23f24;color:var(--gold);margin-right:3px;white-space:nowrap}.rule-now{font-weight:700;color:var(--gold)}.total-sub.danger{color:var(--bad);font-weight:700}.status-chip.rule{color:var(--violet)}.kp-row.adjust b{color:var(--bad)}.sanity-hit{display:flex;align-items:center;justify-content:center;gap:12px;font:800 12px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sanity)}.sanity-hit b{font:30px/1 var(--f-display);color:var(--bad);letter-spacing:0}.floor-clear{text-align:center;font-weight:700;color:var(--gold)}.bag-panel{grid-area:bag;container-type:size;display:grid;align-content:start;gap:8px;padding:10px 12px;border-radius:18px;background:#0000002e;border:1.5px solid var(--panel-edge);min-height:0;overflow:hidden}.bp-head{cursor:pointer;display:flex;align-items:center;gap:8px;padding:2px;border:0;background:none;color:var(--chalk);font:800 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;text-align:left}.bp-head .mini-bag{width:22px;height:22px;display:inline-grid}.bp-head .mini-bag svg{width:100%;height:100%}.bp-head b{font:20px/1 var(--f-display);letter-spacing:0}.bp-more{margin-left:auto;color:var(--gold);letter-spacing:.06em}.bp-head:hover .bp-more{text-decoration:underline}.bp-groups{display:flex;flex-wrap:wrap;gap:12px 10px;padding-top:6px}.bp-group{position:relative;display:grid;justify-items:center;gap:4px}.bp-tile{position:relative}.bp-bar{display:flex;align-items:flex-end;width:16px;height:clamp(14px,calc(100cqh - 150px),76px);border-radius:5px;background:#ffffff0f;overflow:hidden}.bp-bar i{display:block;width:100%;border-radius:5px 5px 0 0;background:linear-gradient(0deg,var(--blue),#b7d6ff);transition:height .35s cubic-bezier(.3,1.2,.5,1)}.bp-groups{align-items:end}.bp-group .tile.sm{width:34px;height:39px;font-size:20px}.bp-count{position:absolute;top:-7px;right:-9px;font:800 10px/1 var(--f-mono);padding:3px 5px;border-radius:999px;background:var(--ink);color:var(--chalk);border:1.5px solid rgba(255,255,255,.45)}.bp-odds{font:800 10px/1 var(--f-mono);color:var(--chalk-dim)}.bp-note{font-size:12px;color:var(--violet)}.bp-hidden{font:28px/1 var(--f-display);letter-spacing:.3em;color:var(--chalk-faint);padding:10px 2px}.bp-drawn{display:grid;gap:6px;padding-top:8px;border-top:1.5px dashed rgba(255,255,255,.08)}.bp-drawn-row{display:flex;flex-wrap:wrap;gap:6px}.bp-drawn-row .tile.sm{width:26px;height:30px;font-size:16px;opacity:.75}.screen.rewardscreen{height:100vh;height:100dvh;overflow:hidden;max-width:1380px;margin:0 auto;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding-block:max(10px,env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-bottom,0px))}.reward-panel{align-self:center;justify-self:center;width:min(1100px,100%);padding:18px;display:grid;gap:14px;min-height:0}.reward-head{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;align-items:center}.reward-head .companion-art{width:84px}.reward-head .reward-bubble{grid-column:1 / -1;justify-self:start}.reward-head h2{font-size:clamp(26px,3.4vw,40px);line-height:1;margin:4px 0}.rewards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reward{cursor:pointer;position:relative;display:grid;justify-items:center;align-content:center;gap:8px;padding:28px 10px 14px;border-radius:18px;border:1.5px solid var(--panel-edge);background:#0003;color:var(--chalk);transition:border-color .15s,background .15s,translate .15s;animation:deal-in .45s cubic-bezier(.2,1.4,.4,1) both;animation-delay:calc(var(--i) * 90ms)}@keyframes deal-in{0%{opacity:0;translate:0 24px;rotate:-4deg}to{opacity:1;translate:0 0;rotate:0deg}}.reward:hover{border-color:var(--gold);background:#ffd23f0f}.reward.picked{border-color:var(--gold);background:#ffd23f1a;box-shadow:0 0 0 2px #ffd23f59}.reward .tag{position:absolute;top:9px;left:10px;right:10px;text-align:center;font:800 9.5px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}.sanity-up{display:flex;align-items:center;gap:8px;margin:4px 0 0;color:var(--sanity);font-weight:700;font-size:14px}.sanity-up .san-bar{width:56px;flex:none}.reward .op,.reward .tile,.reward .voucher-face,.reward .reward-face{pointer-events:none}.reward-face{width:64px;height:74px;border-radius:14px;display:grid;place-content:center;justify-items:center;gap:2px}.reward-face span{font:28px/1 var(--f-display)}.reward-face small{font:800 10px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase}.kp-face{background:linear-gradient(160deg,#ffe58a,var(--gold));color:var(--gold-ink);box-shadow:0 6px 0 var(--gold-deep),inset 0 0 0 2px #ffffff73}.reward-detail{min-height:3.4em;display:grid;align-content:center;text-align:center}.reward-detail b{font-size:17px}.reward-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px}.reward-foot .reward-detail{flex:1 1 260px;max-width:520px}@media(max-aspect-ratio:1/1){.rewards{gap:8px}.reward .offer-name{font-size:13px}.reward{padding:24px 6px 10px}.reward-head{grid-template-columns:56px minmax(0,1fr)}.reward-head .companion-art{width:56px}}@media(max-height:560px)and (min-aspect-ratio:1/1){.reward-panel{padding:10px 14px;gap:8px}.reward-head{grid-template-columns:52px minmax(0,1fr)}.reward-head .companion-art{width:52px}.reward-head p{display:none}.reward-head p.sanity-up{display:flex;margin:0;font-size:13px}.reward{padding:22px 6px 8px;gap:4px}.reward .op.sm{width:46px;height:60px}.reward-detail{min-height:2.6em;font-size:13px}}.offer,.strip-btn{touch-action:none}.dragging{opacity:.35}.drag-ghost{position:fixed!important;margin:0!important;z-index:80;pointer-events:none;transition:none!important;animation:none!important;translate:none!important;opacity:.92;filter:drop-shadow(0 18px 24px rgba(0,0,0,.55))}.drop-dock{position:fixed;left:50%;bottom:max(14px,env(safe-area-inset-bottom,0px));z-index:75;translate:-50% 0;display:flex;gap:12px;padding:12px;border-radius:24px;background:#080f0df5;border:1.5px solid var(--panel-edge);box-shadow:0 20px 40px #0009;animation:dock-in .22s cubic-bezier(.2,1.4,.4,1) both}@keyframes dock-in{0%{opacity:0;translate:-50% 20px}to{opacity:1;translate:-50% 0}}.drop-zone{min-width:min(170px,40vw);display:grid;justify-items:center;align-content:center;gap:6px;padding:22px 20px;border-radius:18px;border:2.5px dashed currentColor;color:var(--good);transition:background .12s,scale .12s}.drop-zone b{font:26px/1 var(--f-display)}.drop-zone span{font:800 12px/1 var(--f-mono);letter-spacing:.08em}.drop-zone small{font-size:11.5px;color:var(--chalk-dim);max-width:22ch;text-align:center}.drop-zone.use{color:var(--gold)}.drop-zone.sell{color:var(--sanity)}.drop-zone.hot{background:color-mix(in srgb,currentColor 18%,transparent);border-style:solid;scale:1.06}.drop-zone.off{color:var(--chalk-faint)}.wavy{display:inline}.wavy .ch,.wavy .sp{display:inline-block}.wavy .sp{width:.28em}.wob-text .wavy .ch{animation:wob-ch 2.6s ease-in-out infinite;animation-delay:calc(var(--i) * -.13s)}@keyframes wob-ch{0%,to{translate:0 0;rotate:calc(var(--wob, 1) * -2deg)}50%{translate:0 calc(var(--wob, 1) * -2px);rotate:calc(var(--wob, 1) * 2.5deg)}}.wob-tiles .hand .tile{animation:wob-tile 3.4s ease-in-out infinite;animation-delay:calc(var(--i) * -.8s)}.wob-tiles .hand .tile.target{animation:target-pulse var(--pulse) ease-in-out infinite,wob-tile 3.4s ease-in-out infinite;animation-delay:0s,calc(var(--i) * -.8s)}.wob-tiles .hand .tile.target.selected{animation:wob-tile 3.4s ease-in-out infinite;animation-delay:calc(var(--i) * -.8s)}.wob-tiles .hand .tile.merged,.wob-tiles .hand .tile.flying{animation:none}@keyframes wob-tile{0%,to{rotate:calc(var(--wob, 1) * -1.6deg);translate:0 0}50%{rotate:calc(var(--wob, 1) * 1.6deg);translate:0 calc(var(--wob, 1) * -2px)}}.wob-ops .ops .op{animation:wob-op 3.9s ease-in-out infinite;animation-delay:calc(var(--i) * -1.1s)}.wob-ops .ops.your-turn .op:not(:disabled){animation:wob-op 3.9s ease-in-out infinite,op-glow var(--pulse) ease-in-out infinite;animation-delay:calc(var(--i) * -1.1s),0s}@keyframes wob-op{0%,to{rotate:calc(var(--wob, 1) * -1.4deg);translate:0 0}50%{rotate:calc(var(--wob, 1) * 1.4deg);translate:0 calc(var(--wob, 1) * -3px)}}.wob-art .enemy-art:not(.defeated)>svg,.wob-art .enemy-art:not(.defeated)>img,.wob-art .companion-art>svg,.wob-art .next-art>svg,.wob-art .boss-face .boss-wob{animation:wob-art 4.6s ease-in-out infinite;transform-origin:50% 92%}@keyframes wob-art{0%,to{rotate:calc(var(--wob, 1) * -2.2deg)}50%{rotate:calc(var(--wob, 1) * 2.2deg)}}@media(max-aspect-ratio:1/1){.bag-panel{display:none}}@media(max-height:560px)and (min-aspect-ratio:1/1){.game .hud .progress .dot,.rewardscreen .hud .progress .dot,.hstat .lbl .long{display:none}.hstat .lbl .short{display:inline}.san-bar{width:26px}.hud .bag-word{display:none}.bag-panel{padding:6px 8px;gap:4px;border-radius:14px}.bp-head{font-size:10px}.bp-head b{font-size:16px}.bp-more,.bp-note,.bp-drawn{display:none}.bp-groups{gap:8px;padding-top:4px}.bp-group{gap:2px}.bp-group .tile.sm{width:24px;height:28px;font-size:15px;border-radius:7px}.bp-group .tile.sm:before{inset:3px;border-radius:5px}.bp-count{font-size:9px;padding:2px 4px;top:-6px;right:-8px}.bp-odds{font-size:9px}.bp-bar{width:10px;height:18px;border-radius:4px}.bp-next{gap:4px}.bp-next .mini-h{font-size:8px;letter-spacing:.06em}.bp-next .tile.sm{width:22px;height:26px;font-size:14px;border-radius:6px}.bp-next .tile.sm:before{inset:3px;border-radius:4px}.reward-bubble,.reward .tag{display:none}.reward{padding:10px 6px 8px}.reward .medal.lg,.reward .cons.lg{scale:.8}.reward-face,.reward .voucher-face{width:48px;height:54px}.reward-foot{flex-wrap:nowrap}}@media(max-aspect-ratio:1/1)and (max-height:760px){.reward-panel{padding:12px;gap:10px;align-self:start}.reward-head p.muted,.reward-bubble{display:none}.reward-head h2{font-size:26px}.reward{padding:22px 6px 8px;gap:4px}.reward .op.sm{width:50px;height:66px}.reward .op.sm .op-sym{font-size:32px}.reward .medal.lg,.reward .cons.lg{scale:.85}.reward-face,.reward .voucher-face{width:50px;height:58px}.reward-face span,.reward .voucher-face span{font-size:22px}.reward-detail{min-height:0;font-size:13px}.reward-foot .btn{flex:1 1 100%}}@media(max-aspect-ratio:1/1)and (max-width:440px){.hstat.sanity .san-bar,.game .hud .hstat.moves{display:none}.game .ops-row>.moves-line{display:flex}.game .hud,.game .hud-stats{gap:6px 10px}.moves-line{font-size:10px}}.start-trio{display:flex;gap:4px;justify-content:center;align-items:center;min-height:64px}.startscreen .reward-foot .btn.ghost[hidden]{display:none}.inst{--ic: var(--violet);flex:none;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:8px;background:linear-gradient(160deg,#f6e7b8,#c9a24a);color:var(--ink);box-shadow:0 0 0 2px var(--ic),0 3px #00000059;font:800 13px/1 var(--f-mono)}.inst.boss{--ic: var(--gold);background:linear-gradient(160deg,#fff4c2,#e2b53b)}.inst.long .g{font-size:9px;letter-spacing:-.03em}.inst.lg{width:54px;height:54px;border-radius:14px;font-size:24px;box-shadow:0 0 0 3px var(--ic),0 5px #00000059}.inst.lg.long .g{font-size:15px}.inst-btn{position:relative;margin-left:6px}.inst-count{position:absolute;right:-8px;bottom:-6px;font:800 9px/1 var(--f-mono);padding:2px 4px;border-radius:999px;background:var(--ink);color:var(--chalk);border:1.5px solid rgba(255,255,255,.45)}.item-row.as-btn{width:100%;text-align:left;background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:4px 0}.strip-btn.free{position:relative}.strip-btn.free:after{content:"free";position:absolute;left:50%;bottom:-7px;translate:-50% 0;font:800 8px/1 var(--f-mono);padding:2px 4px;border-radius:999px;background:var(--good);color:#062;pointer-events:none}.found-inst{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:#b99dff1a;border:1.5px solid rgba(185,157,255,.4)}.found-inst b{display:block;font:20px/1.1 var(--f-display)}.found-inst p{margin:2px 0 0;color:var(--chalk-dim)}.bp-next{display:flex;align-items:center;gap:8px}.hud{flex-wrap:nowrap;min-width:0;overflow:hidden}.hud>*{flex:none;min-width:0}.hud .kit-strip{flex:0 1 auto;overflow:hidden}.hud .hud-end{margin-left:auto}.game>.hud{height:var(--hud-h)}@media(max-height:560px)and (min-aspect-ratio:1/1){.game{--hud-h: 40px;--gap: 6px;grid-template-columns:clamp(140px,21vw,210px) minmax(0,1fr)}.game .enemy-card{padding:6px;gap:6px;grid-template-rows:minmax(0,.8fr) minmax(0,1fr);border-radius:16px}.game .enemy-info{gap:4px;padding:0}.game .enemy-info h2{font-size:16px}.game .range-big b{font-size:19px}.game .range-big .lbl{display:none}.game .enemy-head .step,.game .enemy-info>.flavor{display:none}.game .rule{padding:5px 7px}.game .board{grid-template-rows:42px minmax(0,1.15fr) minmax(0,1.2fr)}.game .tick{top:14px;font-size:9.5px}.game .marker{bottom:8px}.game .marker.ghost{top:8px}.game .marker b{font-size:11px;padding:2px 5px}.game .score{padding:6px 8px 8px;gap:3px 6px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:auto minmax(0,1fr) auto 36px;grid-template-areas:"top top" "num num" "sub sub" "eq stand";border-radius:16px}.game .score-top .lbl{display:none}.game .total-sub{font-size:11px}.game .equation{padding:6px 10px;border-radius:16px}.game .eq-sub{font-size:11px;height:30px}.game .eq-then b{font-size:20px}.game .eq-hint{font-size:11.5px}.game .lower{grid-template-columns:minmax(0,1fr) clamp(120px,17vw,190px)}.game .hand-row,.game .ops-row{gap:3px}.game .row-label{font-size:9px}.game .ops{padding-top:4px}.game .speech{font-size:12px;padding:6px 9px}}@media(max-aspect-ratio:1/1){.hud{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"prog stats end" "strip strip strip";align-items:center;row-gap:6px}.hud .brand{display:none}.hud .progress{grid-area:prog}.hud .hud-stats{grid-area:stats;flex-wrap:nowrap;overflow:hidden}.hud .hud-end{grid-area:end}.hud .kit-strip{grid-area:strip;justify-content:center;order:0;flex-basis:auto}.game{--hud-h: 94px;--gap: 8px;grid-template-columns:minmax(0,1fr);grid-template-rows:var(--hud-h) clamp(68px,13dvh,150px) minmax(0,1fr);grid-template-areas:"top" "enemy" "table"}.game .enemy-card{grid-template-rows:none;grid-template-columns:auto minmax(0,1fr);padding:8px;gap:12px;overflow:visible}.game .enemy-stage{height:100%;aspect-ratio:1 / .92}.game .enemy-info{gap:4px;padding:0}.game .enemy-head,.game .enemy-info>.flavor{display:none}.game .enemy-info h2{font-size:19px}.game .range-big b{font-size:22px}.game .rule{padding:5px 8px}.game .speech{left:6px;top:auto;bottom:calc(100% + 2px);transform:scale(.6);transform-origin:bottom left;max-width:min(300px,80vw)}.game .speech.show{transform:none}.game .speech:after{left:36px}.game .board{grid-template-rows:clamp(42px,7dvh,64px) minmax(0,1.55fr) minmax(0,1.3fr)}.game .eqzone{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1.2fr) minmax(0,1fr)}.game .eqzone>.equation{grid-row:1}.game .eqzone>.score{grid-row:2}.game .equation{padding:8px 10px}.game .score{grid-template-columns:minmax(0,.8fr) minmax(0,1.1fr) minmax(100px,.9fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"top num eq" "sub num stand";padding:6px 10px;gap:4px 10px}.game .btn.confirm-total{height:auto;align-self:stretch;margin-top:2px}.game .score-top{flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:4px}.game .total-sub{text-align:left;align-self:start}.game .btn.stand{height:auto;align-self:stretch;margin-block:4px}.game .lower{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"hand" "ops"}.game .bag-panel{display:none}}@media(max-aspect-ratio:1/1)and (max-width:440px){.game .hud{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"stats end" "strip strip";padding:6px 8px}.game .hud .progress{display:none}}@media(max-aspect-ratio:1/1)and (max-height:640px){.game{--hud-h: 82px;--gap: 6px;grid-template-rows:var(--hud-h) clamp(60px,11dvh,90px) minmax(0,1fr)}.game .board{grid-template-rows:40px minmax(0,1.5fr) minmax(0,1.25fr)}.game .row-label{font-size:9px}.game .hand-row,.game .ops-row{gap:3px}.game .tick{top:14px;font-size:9.5px}.game .marker b{font-size:11px;padding:2px 5px}.game .marker{bottom:8px}.game .marker.ghost{top:8px}}.result{height:min(640px,calc(100dvh - 32px));max-height:none;overflow:hidden;grid-template-rows:auto auto minmax(0,1fr) auto}.result-body{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;align-content:start}.result-body::-webkit-scrollbar{display:none}.modal{overflow:hidden}@media(max-height:560px){.result{padding:12px 16px;gap:8px}.result h2{font-size:30px}.result .kp-row{padding:4px 8px;font-size:13px}.result .kp-total{font-size:38px}}:root{--r-common: #e9e9e9;--r-common-hi: #ffffff;--r-common-lo: #9a9a9a;--r-uncommon: #1eff00;--r-uncommon-hi: #b9ffad;--r-uncommon-lo: #0f7a00;--r-rare: #1f8fff;--r-rare-hi: #a8d5ff;--r-rare-lo: #00468f;--r-epic: #a335ee;--r-epic-hi: #e3bcff;--r-epic-lo: #561490;--r-legendary: #ff8000;--r-legendary-hi: #ffd29c;--r-legendary-lo: #9a4a00}.medal,.inst{--r: var(--r-common);--r-hi: var(--r-common-hi);--r-lo: var(--r-common-lo)}.medal.uncommon{--r: var(--r-uncommon);--r-hi: var(--r-uncommon-hi);--r-lo: var(--r-uncommon-lo)}.medal.rare{--r: var(--r-rare);--r-hi: var(--r-rare-hi);--r-lo: var(--r-rare-lo)}.medal.epic,.inst.elite{--r: var(--r-epic);--r-hi: var(--r-epic-hi);--r-lo: var(--r-epic-lo)}.medal.legendary,.inst.boss{--r: var(--r-legendary);--r-hi: var(--r-legendary-hi);--r-lo: var(--r-legendary-lo)}.medal,.inst,.inst.elite,.inst.boss{--rc: var(--r);--ic: var(--r);background:radial-gradient(circle at 34% 28%,var(--r-hi) 0%,var(--r) 48%,var(--r-lo) 100%);color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.55),0 0 6px rgba(0,0,0,.35);box-shadow:0 0 0 2px color-mix(in srgb,var(--r-hi) 70%,#fff),0 3px #0006,inset 0 -3px #0000002e}.medal.common{color:var(--ink);text-shadow:0 1px 0 rgba(255,255,255,.6)}.medal.rare,.medal.epic,.medal.legendary,.inst.elite,.inst.boss{box-shadow:0 0 0 2px color-mix(in srgb,var(--r-hi) 70%,#fff),0 0 12px color-mix(in srgb,var(--r) 60%,transparent),0 3px #0006,inset 0 -3px #0000002e}.medal.lg,.inst.lg{box-shadow:0 0 0 3px color-mix(in srgb,var(--r-hi) 70%,#fff),0 0 18px color-mix(in srgb,var(--r) 55%,transparent),0 5px #0006,inset 0 -4px #0000002e}.medal.legendary:after,.inst.boss:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.45) 45%,transparent 60%) 0 0 / 250% 100%;animation:shine 3.2s ease-in-out infinite;pointer-events:none}.inst{position:relative}@keyframes shine{0%{background-position:120% 0}60%,to{background-position:-120% 0}}.chip.rarity.common{color:var(--r-common)}.chip.rarity.uncommon{color:var(--r-uncommon)}.chip.rarity.rare{color:var(--r-rare)}.chip.rarity.epic{color:var(--r-epic)}.chip.rarity.legendary{color:var(--r-legendary)}.chip.inst-tier.elite{color:var(--r-epic)}.chip.inst-tier.boss{color:var(--r-legendary)}.for-mouse{display:none}.mouse .for-mouse{display:inline}.mouse .for-touch{display:none}@media(min-aspect-ratio:1/1){.shop-body{grid-template-rows:minmax(0,.95fr) minmax(0,1.05fr)}}.companion{overflow:hidden;align-items:start}.companion-text{min-height:0;overflow:hidden}.bubble{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.offer-detail{overflow:hidden}.offer{container-type:size}.offer>.tile,.offer>.op,.offer>.medal,.offer>.cons,.offer>.voucher-face{flex:none}@container (max-height: 150px){.offer-sub,.offer .tag{display:none}.offer>.tile,.offer>.op,.offer>.medal,.offer>.cons,.offer>.voucher-face{zoom:.8}}@container (max-height: 108px){.offer-name{display:none}.offer>.tile,.offer>.op,.offer>.medal,.offer>.cons,.offer>.voucher-face{zoom:.62}}@media(min-aspect-ratio:1/1){.kit{container-type:size}}@container (max-height: 150px){.kit .row-label,.kit .mini-h{font-size:9px}.kit .op.sm,.kit .tile.sm{zoom:.72}.kit .bag-groups,.kit .kit-ops{gap:8px 6px;padding-top:2px}}@media(max-height:560px)and (min-aspect-ratio:1/1){.shopscreen .bubble{-webkit-line-clamp:2;font-size:12.5px;padding:6px 9px}.shopscreen .companion{padding:8px;gap:8px}.shopscreen .kit-panel{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr);padding:8px 10px}.shopscreen .kit-panel h3{display:none}.shopscreen .kit-panel .leave-row{align-self:end}.shopscreen .kit-panel .leave-row .btn{padding:10px 12px;font-size:13px}.shopscreen .counter-panel{padding:8px 10px;gap:6px}.shopscreen .offers{gap:6px}.shopscreen .svc{padding:6px 10px;font-size:12px}}@media(max-height:560px){.result .kp-rows{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:6px}.result .kp-row.sum{grid-column:1 / -1}.result .result-body{gap:8px}}.result-actions .btn{width:min(240px,100%)}.bag-panel .bp-groups{flex-wrap:nowrap;gap:6px;min-width:0}.bag-panel .bp-group{flex:0 1 38px;min-width:0;container-type:inline-size}.bag-panel .bp-group .tile.sm{width:min(34px,100cqw);height:auto;aspect-ratio:34 / 39;font-size:min(20px,58cqw)}.bag-panel .bp-bar{width:min(16px,46cqw)}.bag-panel .bp-odds{font-size:min(10px,30cqw)}.bag-panel .bp-count{font-size:9px;padding:2px 4px;right:-5px}.boss-next{position:absolute;top:8px;right:10px;z-index:2;max-width:60%;font:800 10.5px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;padding:5px 8px;border-radius:999px;color:var(--violet);border:1.5px solid currentColor;background:#00000059;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.boss-next.soon{color:var(--bad);animation:total-pulse var(--pulse) ease-in-out infinite}.pv-tf.boss{color:var(--bad)}.btn.stand{background:#ffffff12;color:var(--chalk);box-shadow:inset 0 0 0 2px #ffffff38,0 4px #00000059}.btn.stand:disabled{background:#ffffff08;color:var(--chalk-faint);box-shadow:inset 0 0 0 1.5px #ffffff14;filter:none;transform:none}.btn.stand .stand-cost{color:#ff9aa6}.btn.stand.ready{color:var(--ink)}.btn.stand.danger{box-shadow:inset 0 0 0 2px #ff6b7a8c,0 4px #00000059}.btn.stand.armed{background:var(--bad);color:#fff;box-shadow:0 4px #9c2f45,0 0 0 4px #ff6b7a4d;animation:total-pulse .9s ease-in-out infinite}.eq-a.filled{touch-action:none;cursor:grab}.equation.has-boss{padding-top:36px}.equation.has-boss .boss-next{left:50%;right:auto;translate:-50% 0;max-width:calc(100% - 20px)}.enemy-info>.rule{cursor:pointer}.btn.confirm-total{grid-area:eq;container-type:size;min-width:0;width:100%;height:100%;padding:3px 10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.btn.confirm-total .stand-in>span:first-child{font-size:10px}.btn.confirm-total .eqline{display:flex;align-items:baseline;justify-content:center;gap:6px;width:100%;min-width:0}.btn.confirm-total .eqline i{font:normal min(26px,62cqh)/.8 var(--f-display);flex:none}.btn.confirm-total .eqline b{--fit-h: 58cqh;--fit-max: 26px;font-family:var(--f-display);font-weight:400;min-width:0;max-width:calc(100% - 24px)}.btn.confirm-total.ready{animation:ready 1.4s ease-in-out infinite}.btn.confirm-total:disabled{background:#ffd23f14;color:#ffd23f73;box-shadow:inset 0 0 0 1.5px #ffd23f33;filter:none;transform:none}.calc-overlay{width:min(400px,100%)}.calc{display:grid;gap:10px}.calc-display{display:grid;gap:2px;padding:10px 14px;border-radius:14px;background:#0b1512;box-shadow:inset 0 0 0 2px #ffffff14,inset 0 6px 16px #00000080;text-align:right}.calc-last{height:14px;font:700 11.5px/14px var(--f-mono);color:var(--chalk-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl}.calc-expr{height:20px;font:700 15px/20px var(--f-mono);color:var(--chalk-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;unicode-bidi:plaintext}.calc-res{container-type:size;height:clamp(40px,8dvh,60px);display:grid;justify-items:end;align-items:center}.calc-res b{--fit-h: 90cqh;--fit-max: 52px;font-family:var(--f-display);font-weight:400;color:var(--gold)}.calc-quick{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.calc-chip{cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:3px 8px 3px 4px;border-radius:10px;border:1.5px solid var(--panel-edge);background:#ffffff0d;color:var(--chalk);font:700 12px/1 var(--f-mono)}.calc-chip.total{padding:7px 10px}.calc-chip b{font:16px/1 var(--f-display);font-weight:400;color:var(--gold)}.calc-chip .tile.sm{width:26px;height:30px;font-size:16px}.calc-chip:hover{border-color:var(--gold)}.calc-goal{margin-left:auto;font:700 12px/1 var(--f-mono);color:var(--chalk-dim)}.calc-goal b{color:var(--good)}.calc-pad{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.calc-key{cursor:pointer;height:clamp(38px,7.5dvh,54px);border:0;border-radius:12px;background:var(--ivory);color:var(--ink);font:clamp(17px,3dvh,22px)/1 var(--f-display);box-shadow:0 4px 0 var(--ivory-edge);transition:transform .08s}.calc-key:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ivory-edge)}.calc-key.sym{background:#2d4a43;color:var(--chalk);box-shadow:0 4px #142520}.calc-key.fn{background:#ffffff1a;color:var(--chalk);box-shadow:0 4px #0006;font-size:16px}.calc-key.eq{grid-column:span 2;background:linear-gradient(180deg,#ffe27a,var(--gold));color:var(--gold-ink);box-shadow:0 4px 0 var(--gold-deep)}.calc-btn svg{display:block}@media(max-height:560px)and (min-aspect-ratio:1/1){.calc-overlay{width:min(640px,100%);padding:10px 14px 12px;gap:6px}.calc{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);grid-template-rows:auto minmax(0,1fr);align-items:start;column-gap:12px}.calc-display{grid-column:1;grid-row:1}.calc-quick{grid-column:1;grid-row:2}.calc-pad{grid-column:2;grid-row:1 / span 2}}@media(max-height:560px){.calc-overlay .sheet-head h2{font-size:20px}.calc{gap:6px}.calc>.muted{display:none}.calc-key{height:30px;font-size:15px;border-radius:9px}.calc-res{height:30px}}.reward-panel{height:min(100%,720px);align-self:center;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.reward-panel>*{min-height:0;min-width:0}.rewards{min-height:0;grid-auto-rows:minmax(0,1fr)}.reward{min-height:0;overflow:hidden}.reward .offer-name{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reward-foot{flex-wrap:nowrap}.reward-foot .reward-detail{flex:1 1 0;min-width:0;max-width:620px;height:clamp(52px,11dvh,92px);min-height:0;overflow:hidden;line-height:1.3}.reward-detail b{font-size:1.15em}.reward-detail p{margin:2px 0 0}.reward-foot .btn{flex:none}@media(max-aspect-ratio:1/1){.reward-foot{flex-wrap:wrap}.reward-foot .reward-detail{flex:1 1 100%;max-width:none}.reward-foot .btn{flex:1 1 0}}.sheet-head h2.with-icon{display:flex;align-items:center;gap:10px;min-width:0}.calc-face{flex:none;width:40px;aspect-ratio:120 / 132;display:inline-block}.calc-face svg{width:100%;height:100%;overflow:visible}@media(max-height:560px){.calc-face{width:30px}}.hud .kit-strip{container-type:inline-size;flex:1 1 0;min-width:90px;overflow:visible;gap:6px}.hud .kit-strip>*{--u: max(14px, min(34px, calc((100cqw - 36px) / var(--slots, 8) - 5px)))}.hud .strip-maths,.hud .strip-cons{gap:5px}.hud .strip-cons{padding-left:6px}.hud .kit-strip .medal,.hud .kit-strip .slot.math-slot{width:var(--u);height:var(--u);font-size:calc(var(--u) * .36)}.hud .kit-strip .medal.long .g{font-size:calc(var(--u) * .24)}.hud .kit-strip .cons,.hud .kit-strip .slot.cons-slot{width:calc(var(--u) * .8);height:calc(var(--u) * 1.04);font-size:calc(var(--u) * .33)}.hud .kit-strip .inst{width:calc(var(--u) * .85);height:calc(var(--u) * .85);font-size:calc(var(--u) * .4)}.hud .kit-strip .inst-btn{margin-left:2px}@media(max-width:1250px)and (min-aspect-ratio:1/1){.hud .brand,.hstat .lbl .long{display:none}.hstat .lbl .short{display:inline}}@media(max-height:560px)and (min-aspect-ratio:1/1){.game .hud .hstat.moves,.hud .hud-btn .bag-word{display:none}}@media(max-aspect-ratio:1/1){.hud .kit-strip{justify-content:center}}
