:root{--lab:#0e1716;--panel:#16211f;--line:#2a3d39;--ink:#e9f2ee;--muted:#8fa79f;--flesh:#f08aa0;--bile:#9be34a;--hurt:#ff5a4e;--c1:#ffd23a;--c2:#40f0ff;--c3:#ff4fe0;--outline:#0b0710;--pad-ring:#ffe23a;--display:"Rubik Wet Paint", "Impact", system-ui, sans-serif;--ui:"Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[hidden]{display:none!important}html,body{background:var(--lab);height:100%;color:var(--ink);font-family:var(--ui);-webkit-user-select:none;user-select:none;touch-action:none;margin:0;overflow:hidden}#stage{position:fixed;inset:0}#stage canvas{width:100%;height:100%;display:block}.scrim{z-index:10;background:color-mix(in srgb, var(--lab) 72%, transparent);padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));padding-block:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-bottom,0px));box-sizing:border-box;place-items:center;display:grid;position:fixed;inset:0;overflow:auto}.sheet{text-align:center;justify-items:center;gap:18px;width:min(760px,100%);display:grid}.logo{font-family:var(--display);color:var(--flesh);text-shadow:0 4px 0 var(--outline);text-wrap:balance;margin:0;font-size:clamp(54px,14vw,112px);font-weight:400;line-height:.9}.tag{color:var(--muted);max-width:46ch;margin:0;font-size:19px;line-height:1.35}h2{font-family:var(--display);text-wrap:balance;margin:0;font-size:clamp(34px,8vw,56px);font-weight:400;line-height:1}h2.hurt{color:var(--hurt)}h2.win{color:var(--bile)}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:14px}.row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.btn{font:700 22px var(--ui);letter-spacing:.08em;text-transform:uppercase;background:var(--flesh);color:#1a0b10;border:3px solid var(--outline);cursor:pointer;box-shadow:0 4px 0 var(--outline);border-radius:6px;padding:12px 34px}.btn.ghost{background:var(--panel);color:var(--ink)}.btn:active{box-shadow:0 1px 0 var(--outline);transform:translateY(3px)}.btn:focus-visible,.card:focus-visible{outline:3px solid var(--c2);outline-offset:3px}.keys{color:var(--muted);letter-spacing:.04em;font-size:15px}.stats{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;gap:22px;display:flex}.stats div{display:grid}.stats b{font-size:34px;line-height:1}.stats span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:14px}.strains{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;width:100%;display:grid}@media (width<=620px){.strains{grid-template-columns:repeat(4,minmax(0,1fr))}}.strain{font-family:var(--ui);color:var(--ink);background:var(--panel);border:2px solid var(--line);cursor:pointer;border-radius:6px;justify-items:center;gap:2px;min-width:0;padding:8px 4px;display:grid}.strain[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 2px var(--c2)}.strain .portrait{transition:transform .15s ease-out;display:block}.strain[aria-pressed=true] .portrait{transform:translateY(-3px)scale(1.08)}.strain .sn{text-transform:uppercase;letter-spacing:.04em;font-size:15px;font-weight:700}.strain .so{color:var(--muted);text-align:center;font-size:12px;line-height:1.15}.strain.locked{cursor:default;opacity:.55;border-style:dashed}.strain.locked .blob{border:2px dashed var(--muted);color:var(--muted);background:0 0}.strain-info{color:var(--muted);min-height:1.3em;font-size:17px}.strain-info b{color:var(--ink)}.unlock{color:var(--bile);margin:0;font-size:18px}kbd{font:700 12px var(--ui);border:1.5px solid var(--line);color:var(--ink);border-radius:3px;padding:1px 5px}.glyph{vertical-align:middle;flex:none;display:inline-block}body.using-pad :focus{outline:5px solid var(--pad-ring);outline-offset:5px;box-shadow:0 0 0 5px var(--outline), 0 0 0 15px #0b0710e6, 0 0 30px 16px #ffe23a80;z-index:3;animation:.85s ease-in-out infinite alternate pad-pulse;position:relative;transform:scale(1.05)}body.using-pad .card:focus{transform:translateY(-6px)scale(1.03)}body.using-pad .swatch:focus{transform:scale(1.18)}@keyframes pad-pulse{0%{outline-color:var(--pad-ring)}to{outline-offset:8px;outline-color:#fff6b0}}@media (prefers-reduced-motion:reduce){body.using-pad :focus{animation:none}}.hud{pointer-events:none;text-shadow:0 1px 2px #000000d9,0 0 6px #00000073;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));padding-block:calc(12px + env(safe-area-inset-top,0px)) calc(12px + env(safe-area-inset-bottom,0px));box-sizing:border-box;flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}.top{grid-template-columns:1fr auto 1fr;align-items:start;gap:12px;display:grid}.top>.vitals{justify-self:start}.top>.minimap{justify-self:end}@media (width<=760px){.top{grid-template-columns:1fr auto}.top>.clock{grid-area:2/1/auto/-1}}.vitals{gap:6px;width:min(320px,58vw);display:grid}.bar{border:1.5px solid var(--line);background:#0008;border-radius:3px;height:12px;position:relative;overflow:hidden}.bar>i{width:0;transition:width .12s;display:block;position:absolute;inset:0 auto 0 0}#hpBar>i{background:var(--hurt)}#xpBar>i{background:var(--bile)}.lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:14px;display:flex}.lbl b{color:var(--ink);font-weight:700}.clock{text-align:center;font-variant-numeric:tabular-nums;justify-self:center}.clock .t{font-size:30px;font-weight:700;line-height:1}.clock .k{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:14px}.parts{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px;max-width:720px;display:grid}.part{background:color-mix(in srgb, var(--panel) 88%, transparent);border:1.5px solid var(--line);border-radius:4px;align-content:start;gap:3px;padding:5px 7px;display:grid}.part.empty{opacity:.4;border-style:dashed}.part .slot{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px}.part .n{letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;gap:6px;font-size:14px;font-weight:700;display:flex}.row-pips{justify-content:space-between;align-items:center;display:flex}.br{background:var(--ink);color:var(--lab);border-radius:2px;padding:1px 4px;font-size:12px;line-height:1}.pips{gap:3px;display:flex}.pips i{background:var(--line);border-radius:1px;width:12px;height:6px}.part .pips i{width:10px}.pips i.on{background:var(--ink)}.pips i.next{background:var(--bile)}.part .g{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px}#joy{pointer-events:none;border:2px solid #fff3;border-radius:50%;width:110px;height:110px;margin:-55px 0 0 -55px;display:none;position:fixed}#joy i{background:#fff3;border-radius:50%;width:44px;height:44px;margin:-22px;position:absolute;top:50%;left:50%}.odds{left:max(16px, env(safe-area-inset-left,0px));top:calc(100px + env(safe-area-inset-top,0px));z-index:5;background:color-mix(in srgb, var(--panel) 92%, transparent);border:1.5px solid var(--line);pointer-events:none;font-variant-numeric:tabular-nums;border-radius:6px;width:230px;padding:8px 10px;font-size:13px;position:fixed}.odds h3{text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:15px}.odds h3 small{color:var(--muted);font-weight:500}.odds p{color:var(--muted);margin:0 0 6px}.odds b{color:var(--ink)}.odds table{border-collapse:collapse;width:100%;margin-bottom:6px}.odds th{text-align:left;color:var(--muted);font-weight:600}.odds td{white-space:nowrap;padding:1px 2px}.odds td:nth-child(2){width:70px}.odds td i{border-radius:2px;min-width:1px;max-width:70px;height:6px;display:block}.odds .base{color:var(--muted);text-align:right}.build{gap:6px;display:grid}.traits{flex-wrap:wrap;gap:6px;display:flex}.traits:empty{display:none}.trait{background:color-mix(in srgb, var(--panel) 88%, transparent);border:1.5px solid var(--line);letter-spacing:.03em;white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:13px}.trait b{text-transform:uppercase}.trait span{color:var(--bile);font-weight:600}.slots-info{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;display:grid}@media (width<=620px){.cards{grid-template-columns:1fr}}.card{background:var(--panel);border:2px solid var(--line);text-align:left;color:var(--ink);font-family:var(--ui);cursor:pointer;overflow-wrap:anywhere;min-width:0;box-shadow:0 4px 0 var(--outline);border-radius:6px;grid-template-columns:minmax(0,1fr);align-content:start;gap:8px;padding:14px;display:grid}.card:hover{border-color:var(--ink)}.card .k{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.card .k>span{overflow-wrap:anywhere;min-width:0}.card .nm{text-transform:uppercase;letter-spacing:.03em;flex:auto;font-size:22px;font-weight:700;line-height:1.1}.card .k>.chip{flex:none}.chip{letter-spacing:.08em;text-transform:uppercase;background:var(--line);color:var(--ink);white-space:nowrap;border-radius:3px;padding:2px 7px;font-size:13px;font-weight:700}.chip.new{background:var(--bile);color:#10180a}.chip.cond{color:#10120a}.card p{color:var(--muted);margin:0;font-size:17px;line-height:1.3}.card .hot{color:var(--ink)}.card .press{font-size:14px}.fx{border-top:1.5px solid var(--line);color:var(--muted);gap:4px;margin:0;padding:8px 0 0;font-size:15px;line-height:1.25;list-style:none;display:grid}.fx b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.fx em{color:var(--bile);white-space:nowrap;font-style:normal;font-weight:700}.fx em.worse{color:var(--hurt)}.card.r0{border-color:#8fa79f}.card.r1{border-color:#6fd84a}.card.r2{border-color:#4aa3ff}.card.r3{border-color:#b46bff}.card.r4{background:linear-gradient(var(--panel), var(--panel)) padding-box, linear-gradient(120deg, #ffc53a, #fff3b0, #ff9a1f, #ffc53a) border-box;background-size:100% 100%,300% 300%;border:3px solid #0000;animation:2.4s linear infinite legendary}@keyframes legendary{to{background-position:0 0,300% 0}}@media (prefers-reduced-motion:reduce){.card.r4{animation:none}}.card .sub{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;font-size:14px}.card .rarity{font-weight:700}.card.r0 .rarity{color:#8fa79f}.card.r1 .rarity{color:#6fd84a}.card.r2 .rarity{color:#4aa3ff}.card.r3 .rarity{color:#b46bff}.card.r4 .rarity{color:#ffc53a}.chip.type-graft{background:var(--bile);color:#10180a}.chip.type-condense{background:var(--c1);color:#10120a}.chip.type-trait{background:var(--line)}.chip.type-upgrade{background:#2f5a52}.cards.banishing .card{border-color:var(--hurt);box-shadow:0 4px 0 #0b0710, inset 0 0 0 2px color-mix(in srgb, var(--hurt) 40%, transparent)}.tools{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.tool{font:700 17px var(--ui);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:var(--panel);border:2px solid var(--line);cursor:pointer;box-shadow:0 3px 0 var(--outline);border-radius:6px;padding:8px 14px}.tool:hover:not(:disabled){border-color:var(--ink)}.tool:disabled{opacity:.4;cursor:default}.tool small{color:var(--bile);font-size:13px}.card .note{color:var(--c1);font-size:14px}.card .kind{color:var(--k);gap:2px;font-size:13px;display:grid}.card .kind span{align-items:center;gap:5px;display:inline-flex}.card .kind b{color:#ff8a80;font-weight:600}.cards:has(.branch){grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=620px){.cards:has(.branch){grid-template-columns:1fr}}.card.branch{border-color:var(--c1)}.chip.type-augment{background:#4a3a6e}.chip.type-defect{background:var(--hurt);color:#1a0505}.card.defect{border-color:var(--hurt);background:color-mix(in srgb, var(--panel) 88%, #3a0a0a)}.shop-wallet{color:var(--muted);font-size:18px}.shop-wallet b{color:#c8a060}.chip.price{background:#6e5a2a}.card.cant{opacity:.55}.card.sold{opacity:.35;cursor:default;place-content:center}.card.splice{background:linear-gradient(160deg, color-mix(in srgb, var(--panel) 85%, #40f0ff), color-mix(in srgb, var(--panel) 85%, #ff4fe0));border-color:#ff4fe0}.card.splice .rarity{color:#ff4fe0}#levelup.arming .card,#levelup.arming .tool{filter:brightness(.62)saturate(.6);cursor:wait}#levelup.arming .sheet:before{content:"";background:linear-gradient(90deg, var(--bile,#9be34a) 50%, #ffffff2e 50%) right / 200% 100%;width:min(320px,70%);height:5px;animation:cardsArming var(--arm,.8s) linear forwards;border-radius:3px;align-self:center;margin:0 auto 10px;display:block}@keyframes cardsArming{to{background-position:0}}.banner{--accent:var(--bile);left:50%;top:calc(62px + env(safe-area-inset-top,0px));z-index:20;box-sizing:border-box;background:color-mix(in srgb, var(--panel) 92%, transparent);border:2px solid var(--accent);max-width:calc(100vw - 32px);box-shadow:0 0 28px color-mix(in srgb, var(--accent) 55%, transparent);pointer-events:none;border-radius:8px;align-items:center;gap:14px;padding:10px 22px 12px 14px;display:flex;position:fixed;transform:translate(-50%)}.banner.pop{animation:2.8s ease-out both banner-pop}.banner h2{font-family:var(--display);color:var(--accent);text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:clamp(24px,4.5vw,36px);font-weight:400;line-height:1}.banner p{letter-spacing:.03em;margin:4px 0 0;font-size:17px}.banner .sil{filter:drop-shadow(0 0 8px);flex:none;width:54px;height:54px}@keyframes banner-pop{0%{opacity:0;transform:translate(-50%)scale(.6)}8%{opacity:1;transform:translate(-50%)scale(1.08)}14%{transform:translate(-50%)scale(1)}85%{opacity:1}to{opacity:0;transform:translate(-50%,-12px)}}.toasts{left:50%;top:calc(160px + env(safe-area-inset-top,0px));z-index:8;pointer-events:none;justify-items:center;gap:4px;width:min(440px,100vw - 32px);display:grid;position:fixed;transform:translate(-50%)}.toast{--accent:var(--ink);background:color-mix(in srgb, var(--panel) 90%, transparent);border-left:4px solid var(--accent);letter-spacing:.02em;border-radius:4px;padding:4px 10px;font-size:16px;animation:.25s ease-out toast-in}.toast b{color:var(--accent)}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}}@media (width<=620px){.banner{top:calc(178px + env(safe-area-inset-top,0px))}.toasts{top:calc(306px + env(safe-area-inset-top,0px))}}kbd{font:inherit;border:1px solid;border-radius:3px;padding:0 4px;font-size:.85em;line-height:1.2;display:inline-block}.absorb{--accent:var(--bile);left:50%;bottom:calc(150px + env(safe-area-inset-bottom,0px));z-index:12;background:color-mix(in srgb, var(--panel) 92%, transparent);border:2px solid var(--accent);color:var(--ink);font-family:var(--ui);text-align:left;cursor:pointer;touch-action:none;border-radius:40px;align-items:center;gap:10px;padding:6px 14px 6px 6px;font-size:17px;animation:.9s ease-in-out infinite alternate absorb-pulse;display:flex;position:fixed;transform:translate(-50%)}.absorb.far{opacity:.75;animation:none}.absorb svg{flex:none;width:50px;height:50px;transform:rotate(-90deg)}.absorb svg text{transform-origin:25px 25px;fill:var(--ink);font:700 18px var(--ui);transform:rotate(90deg)}.absorb .track{fill:none;stroke:var(--line);stroke-width:5px}.absorb .fill{fill:none;stroke:var(--accent);stroke-width:5px;stroke-linecap:round;stroke-dasharray:138.2;stroke-dashoffset:138.2px}.absorb>span{display:grid}.absorb b{color:var(--accent)}.absorb small{color:var(--muted);letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:14px}@keyframes absorb-pulse{to{box-shadow:0 0 22px color-mix(in srgb, var(--accent) 60%, transparent)}}.res-arrow{--accent:var(--bile);z-index:9;border-top:14px solid #0000;border-bottom:14px solid #0000;border-left:30px solid var(--accent);width:0;height:0;filter:drop-shadow(0 0 6px var(--accent));pointer-events:none;animation:.6s ease-in-out infinite alternate arrow-blink;position:fixed}@keyframes arrow-blink{to{opacity:.55}}.frenzy{border:1.5px solid var(--line);height:22px;color:var(--muted);font:600 14px var(--ui);letter-spacing:.08em;text-transform:uppercase;pointer-events:auto;cursor:pointer;background:#0008;border-radius:3px;justify-content:space-between;align-items:center;padding:0 8px;display:flex;position:relative;overflow:hidden}.frenzy:disabled{cursor:default}.frenzy>i{background:#ff8a1f55;width:0;transition:width .12s;position:absolute;inset:0 auto 0 0}.frenzy>span,.frenzy>kbd{position:relative}.frenzy.ready{color:var(--ink);--accent:#ff8a1f;border-color:#ff8a1f;animation:.7s ease-in-out infinite alternate absorb-pulse}.frenzy.ready>i,.frenzy.active>i{background:#ff8a1fbb}.frenzy.active{color:var(--ink)}.toggles{text-align:left;gap:8px;margin:4px 0 16px;font-size:17px;display:grid}.toggles input{vertical-align:-3px;width:18px;height:18px;accent-color:var(--bile)}.toggles label.slider{grid-template-columns:70px 1fr 48px;align-items:center;gap:10px;display:grid}.toggles label.slider input{width:100%;height:auto}.toggles label.slider b{font-variant-numeric:tabular-nums;text-align:right}.toggles label.slider select{font:inherit;color:var(--ink);background:var(--panel);border:2px solid var(--line);border-radius:6px;grid-column:span 2;padding:4px 8px}.boss-card{z-index:25;text-align:center;pointer-events:none;width:min(720px,100vw - 32px);color:var(--ink);position:fixed;top:18%;left:50%;transform:translate(-50%)}.boss-card-name{font:400 clamp(40px, 9vw, 88px) / 1 var(--display);color:var(--boss,#ff5a4e);text-shadow:0 5px 0 var(--outline), 0 0 30px color-mix(in srgb, var(--boss,#ff5a4e) 55%, transparent);text-transform:uppercase;letter-spacing:.02em}.boss-card-line{font:600 clamp(16px, 3.4vw, 22px) var(--ui);text-shadow:0 2px 0 var(--outline);margin-top:6px}.boss-card-bar{border:3px solid var(--outline);width:min(460px,80%);height:14px;box-shadow:0 0 18px color-mix(in srgb, var(--boss,#ff5a4e) 40%, transparent);background:#1a0d10;border-radius:8px;margin:14px auto 0;overflow:hidden}.boss-card-bar i{background:var(--boss,#ff5a4e);width:0;height:100%;display:block}.boss-card.go .boss-card-name{animation:3s ease-out both boss-name}.boss-card.go .boss-card-line,.boss-card.go .boss-card-bar{animation:3s ease-out both boss-line}.boss-card.go .boss-card-bar i{animation:1.4s ease-out both boss-fill;animation-delay:calc(.6s - var(--t,0) * 1s);animation-play-state:paused}.boss-card.go .boss-card-name,.boss-card.go .boss-card-line,.boss-card.go .boss-card-bar{animation-delay:calc(var(--t,0) * -1s);animation-play-state:paused}@keyframes boss-name{0%{opacity:0;transform:translate(-60px)scale(1.4)}12%{opacity:1;transform:translate(0)scale(1)}85%{opacity:1}to{opacity:0}}@keyframes boss-line{0%,15%{opacity:0;transform:translateY(8px)}25%{opacity:1;transform:none}85%{opacity:1}to{opacity:0}}@keyframes boss-fill{0%{width:0}to{width:100%}}@media (prefers-reduced-motion:reduce){.boss-card.go .boss-card-name,.boss-card.go .boss-card-line,.boss-card.go .boss-card-bar{animation-name:boss-line;animation-timing-function:linear}}.how-to-play{z-index:7;border:3px solid var(--outline);width:min(560px,100vw - 32px);box-shadow:0 4px 0 var(--outline);font:500 14px/1.35 var(--ui);color:var(--ink);pointer-events:none;background:#0b0710db;border-radius:14px;padding:12px 18px 10px;animation:.4s ease-out both hint-in;position:fixed;bottom:120px;left:50%;transform:translate(-50%)}.how-to-play h3{letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:16px}.how-to-play p{margin:0 0 5px}.how-to-play small{color:var(--muted)}.how-to-play.fade{opacity:0;transition:opacity .5s}.res-arrow.obj{--accent:#ff5a4e;opacity:.85;border-top-width:18px;border-bottom-width:18px;border-left-width:38px;animation:none}.absorb.interact{--accent:#e9f2ee;padding:10px 18px;font-size:18px;animation:none}.absorb.interact>span{display:block}.clock .zone{color:var(--ink)}.threat{--threat:#6fd84a;justify-items:center;gap:3px;margin:2px 0 4px;display:grid}.biomass-badge{background:#0a1808b8;border:2px solid #7be04a;border-radius:999px;align-items:center;gap:8px;margin:2px auto 4px;padding:4px 14px 4px 8px;display:inline-flex;box-shadow:0 0 10px #7be04a59}.biomass-badge b{color:#b8ff7a;font-variant-numeric:tabular-nums;font-size:26px;line-height:1}.biomass-badge span{letter-spacing:.08em;text-transform:uppercase;color:#9be37a;font-size:13px}.biomass-badge .goo{background:radial-gradient(circle at 35% 35%,#e8ffb0,#5fd83a 55%,#2a7a10);border:1.5px solid #0b0710;border-radius:50% 50% 50% 0;width:18px;height:18px;transform:rotate(-45deg)}.biomass-badge.gain{animation:.35s ease-out biomass-pop}@keyframes biomass-pop{40%{transform:scale(1.12)}}.clock .k.small{font-size:12px}.threat-name{letter-spacing:.06em;text-transform:uppercase;color:var(--threat);font-size:15px;font-weight:700}.threat-bar{background:color-mix(in srgb, var(--threat) 20%, transparent);border-radius:3px;width:150px;height:6px;overflow:hidden}.threat-bar>i{background:var(--threat);height:100%;display:block}.clock .t.swarm{color:var(--hurt);animation:.5s ease-in-out infinite alternate arrow-blink}.clock .goal{text-transform:none;letter-spacing:.02em;max-width:46vw;margin-left:auto}.moves{right:max(16px, env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:6;grid-template-columns:repeat(2,auto);gap:8px;display:grid;position:fixed}@media (width>=621px) and (width<=1100px){.moves{bottom:calc(88px + env(safe-area-inset-bottom,0px))}}.move{background:color-mix(in srgb, var(--panel) 88%, transparent);border:1.5px solid var(--line);min-width:92px;color:var(--ink);font:600 15px var(--ui);letter-spacing:.06em;text-transform:uppercase;touch-action:none;cursor:pointer;border-radius:6px;padding:10px 12px;position:relative;overflow:hidden}.move>i{background:var(--bile);width:0;height:4px;position:absolute;inset:auto 0 0}.move>span{position:relative}#dashBtn.ready{border-color:var(--bile)}@media (width<=620px){.moves{bottom:calc(150px + env(safe-area-inset-bottom,0px))}.move kbd{display:none}}.minimap{border:2px solid #e9f2ee59;border-radius:8px;width:190px;height:190px;display:block;box-shadow:0 2px 10px #00000080}@media (width<=620px){.minimap{width:104px;height:104px}}.map-sheet{align-items:center}#fullMapCanvas{border:1.5px solid var(--line);border-radius:6px}.map-legend{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:6px 16px;font-size:15px;display:flex}.map-legend .lg{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.lg.you{clip-path:polygon(50% 0,100% 100%,0 100%);background:#fff;border-radius:0}.lg.beacon{background:#ff5a4e;border-radius:0;transform:rotate(45deg)scale(.8)}.lg.vent{background:#9be34a}.lg.boss{background:#ff3a3a;width:12px;height:12px}.lg.res{border:2px solid #6fd84a}.lg.pick{background:#ffe14a;border-radius:2px}.trait.defect{border-color:var(--hurt)}.trait.defect b{color:var(--hurt)}.pause-build{text-align:left;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 18px;width:min(760px,100vw - 48px);max-height:40vh;font-size:15px;display:grid;overflow:auto}.pause-build h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:14px}.pause-build ul{gap:3px;margin:0;padding:0 0 0 16px;display:grid}.pause-build .bad{color:var(--hurt)}.pause-build .small{color:var(--muted);margin:4px 0 0;font-size:13px}.absorb.interact.blocked{--accent:var(--hurt);color:var(--muted)}.clock .status{color:var(--c1)}.banner.bio{background:linear-gradient(180deg, color-mix(in srgb, #ffd23a 24%, var(--panel)), color-mix(in srgb, var(--panel) 92%, transparent));border-color:#ffd23a}.banner.bio.pop{animation:2.8s ease-out both banner-pop,1.2s linear infinite bio-glow}.banner.bio h2{text-shadow:0 0 10px color-mix(in srgb, var(--accent) 70%, transparent)}@keyframes bio-glow{0%{box-shadow:0 0 30px #ff4f4f}20%{box-shadow:0 0 30px #ffd23a}40%{box-shadow:0 0 30px #9be34a}60%{box-shadow:0 0 30px #40f0ff}80%{box-shadow:0 0 30px #9a6bff}to{box-shadow:0 0 30px #ff4f4f}}.res-arrow.bio{border-top-width:16px;border-bottom-width:16px;border-left-width:34px;animation:1.4s linear infinite bio-hue}@keyframes bio-hue{0%{filter:drop-shadow(0 0 8px #fff6c8)hue-rotate()}to{filter:drop-shadow(0 0 8px #fff6c8)hue-rotate(360deg)}}@media (prefers-reduced-motion:reduce){.banner.bio.pop{animation:2.8s ease-out both banner-pop}.res-arrow.bio{animation:none}}body.reduced-flash .res-arrow,body.reduced-flash .absorb,body.reduced-flash .frenzy.ready,body.reduced-flash .clock .t.swarm,body.reduced-flash .card.r4{animation:none}body.reduced-flash .banner.bio.pop{animation:2.8s ease-out both banner-pop}.nearby{--c:#40f0ff;border:2px solid var(--c);text-shadow:none;background:#0a0e10cc;border-radius:20px;align-items:center;gap:10px;margin-top:4px;padding:6px 12px 6px 8px;animation:.18s ease-out nearby-in;display:flex}.nearby[hidden]{display:none}.nearby-icon{line-height:1;display:flex}.nearby-text{min-width:0;display:grid}.nearby-text b{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;color:#fff;font-size:16px}.nearby-text small{color:var(--c);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.nearby-dist{color:#9fb3ad;margin-left:auto;font-size:12px}@keyframes nearby-in{0%{opacity:0;transform:translate(-8px)}}.riot-panel{gap:4px;display:grid}.riot-count{--c:var(--riot,#6fd84a);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:14px;display:flex}.riot-count b{color:var(--c);font-size:16px;font-weight:700}.riot-fist{font-size:16px;line-height:1}.riot-dots{flex-wrap:wrap;gap:3px;margin-left:2px;display:flex}.riot-dots i{border:2px solid var(--c);background:0 0;border-radius:50%;width:9px;height:9px}.riot-dots i.on{background:var(--c)}.research{text-shadow:none;background:#0a0e10c7;border:2px solid #ff5a4e;border-radius:10px;padding:5px 9px 6px}.research[hidden]{display:none}.research-title{letter-spacing:.12em;text-transform:uppercase;color:#ff8a80;font-size:11px}.research-rows{gap:3px;margin-top:2px;display:grid}.rrow{grid-template-columns:18px 58px 1fr auto;align-items:center;gap:6px;font-size:13px;display:grid}.rrow .rn{color:var(--c);font-weight:600}.rrow .rbar{background:#0009;border-radius:4px;height:7px;overflow:hidden}.rrow .rbar>i{background:var(--c);height:100%;display:block}.rrow .rt{color:#ffb3ac;white-space:nowrap;font-size:11px}.boss-bar{left:50%;top:calc(196px + env(safe-area-inset-top,0px));z-index:9;pointer-events:none;gap:4px;width:min(520px,100vw - 32px,100vw - 720px);display:grid;position:fixed;transform:translate(-50%)}@media (width<=760px){.boss-bar{top:calc(300px + env(safe-area-inset-top,0px));width:min(520px,100vw - 32px)}}.boss-bar .lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);justify-content:space-between;font-size:16px;display:flex}.boss-bar .bar{border-color:#ff5a4e;height:14px}.boss-bar .bar>i{background:#ff5a4e}.boss-bar .bar>.cut{background:var(--outline);z-index:1;width:3px;margin-left:-1.5px;position:absolute;top:0;bottom:0;box-shadow:0 0 0 1px #fff3d659}.boss-bar.phase2 .lbl b{color:#ff9a2a}.boss-bar.phase2 .bar{border-color:#ff9a2a}.boss-bar.phase2 .bar>i{background:linear-gradient(90deg,#ff5a4e,#ff9a2a)}.boss-bar.phase3 .lbl b{color:#ff2a4a}.boss-bar.phase3 .bar{border-color:#ff2a4a;box-shadow:0 0 12px #ff2a4a99}.boss-bar.phase3 .bar>i{background:linear-gradient(90deg,#b0102a,#ff2a4a)}.boss-bar.roar .bar>i{background:#fff3d6}@media (prefers-reduced-motion:no-preference){.boss-bar.roar .bar{animation:.16s steps(2,end) infinite boss-roar}}@keyframes boss-roar{0%{transform:translate(-2px)}to{transform:translate(2px)}}.boss-bar.exposed .lbl b{color:var(--c1)}.boss-bar.exposed .bar>i{background:var(--c1)}.wallet{color:var(--muted);letter-spacing:.04em;font-size:18px}.wallet b{color:var(--c2);font-size:22px}.menu{gap:10px;width:min(340px,100%);display:grid}.menu .btn{width:100%}.pick-row{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:15px;display:flex}.results{text-align:left;grid-template-columns:repeat(auto-fit,minmax(240px,340px));justify-content:center;gap:12px 24px;width:min(720px,100vw - 48px);display:grid}.results h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:15px}.results h3 .gain{color:var(--c2);font-size:20px}.results ul{gap:3px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.results li{justify-content:space-between;gap:10px;display:flex}.results li b{color:var(--ink);font-variant-numeric:tabular-nums}.results .bars li{grid-template-columns:110px 1fr 44px;align-items:center;display:grid}.results .bars i{background:var(--bile);border-radius:2px;height:8px;display:block}.results .small{color:var(--muted);margin:6px 0 0;font-size:14px}.lab-sheet{gap:14px;width:min(880px,100%)}.tabs{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.tab{font:700 16px var(--ui);letter-spacing:.06em;text-transform:uppercase;background:var(--panel);color:var(--muted);border:2px solid var(--line);cursor:pointer;border-radius:6px;padding:6px 12px}.tab[aria-selected=true]{color:var(--ink);border-color:var(--c2)}.tab:focus-visible,.lab-aug.toggle:focus-visible{outline:3px solid var(--c2);outline-offset:2px}.lab-list{text-align:left;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;width:100%;display:grid}.lab-row{background:var(--panel);border:2px solid var(--line);border-radius:8px;align-content:start;gap:5px;padding:10px 12px;display:grid}.lab-row p{color:var(--muted);margin:0;font-size:15px}.lab-row .lab-now b{color:var(--ink)}.lab-row .lab-now b.next{color:var(--bile)}.lab-head{justify-content:space-between;gap:8px;font-size:18px;display:flex}.lab-head span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:15px}.lab-bar{background:var(--line);border-radius:3px;height:6px;display:block;overflow:hidden}.lab-bar i{background:var(--bile);height:100%;display:block}.lab-row .tool,.lab-aug .tool{justify-self:start}.tool.short{opacity:.55}.lab-row.preset{grid-template-columns:1fr auto auto;align-items:center}.lab-sub,.lab-note{color:var(--muted);grid-column:1/-1;margin:6px 0 0;font-size:15px;font-weight:400}.lab-sub{color:var(--ink);font-size:18px;font-weight:700}.lab-sub span{color:var(--muted);margin-left:6px;font-size:15px;font-weight:400}.lab-note b{color:var(--ink)}.lab-augs{grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;display:grid}.lab-aug{text-align:left;font:inherit;color:var(--ink);background:var(--panel);border:2px solid var(--line);border-radius:8px;align-content:start;gap:3px;padding:8px 10px;display:grid}.lab-aug b{font-size:16px}.lab-aug small{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:13px}.lab-aug p{color:var(--muted);margin:0;font-size:14px}.lab-aug .have{color:var(--bile);font-size:14px}.lab-aug.r0{border-color:#8fa79f}.lab-aug.r1{border-color:#6fd84a}.lab-aug.r2{border-color:#4aa3ff}.lab-aug.r3{border-color:#b46bff}.lab-aug.r4{border-color:#ffc53a}.lab-aug.locked{border-style:dashed}.lab-aug.locked b,.lab-aug.locked p{opacity:.7}.lab-aug.toggle{cursor:pointer}.lab-aug.toggle[aria-pressed=false]{opacity:.4;border-style:dashed}.bag-chip{font:600 15px var(--ui);background:var(--panel);color:var(--ink);border:2px solid var(--line);cursor:pointer;border-radius:999px;padding:5px 12px}.bag-chip[aria-pressed=true]{border-color:var(--bile);color:var(--bile)}.bag-chip:disabled{opacity:.45;cursor:default}.swatch{border:3px solid var(--outline);background:var(--swatch);width:30px;height:30px;box-shadow:0 0 0 2px var(--line);cursor:pointer;border-radius:50%;padding:0}.swatch[aria-pressed=true]{box-shadow:0 0 0 3px var(--c2)}.swatch.rare{background:radial-gradient(circle at 32% 30%, #fffc 0 12%, transparent 13%), var(--swatch)}.swatch:focus-visible{outline:3px solid var(--c2);outline-offset:3px}#pigmentRow small{color:var(--ink);text-align:left;min-width:9ch;font-size:15px}.mode-info{max-width:62ch;color:var(--muted);margin:-6px 0 0;font-size:15px;line-height:1.35}.mode-info b{color:var(--ink)}.unlock.best{color:var(--c1)}.music-credit{max-width:60ch;color:var(--muted);margin:0;font-size:13px;line-height:1.35}.music-credit a{color:var(--c2)}.tab small{color:var(--muted);margin-left:2px;font-size:13px}.gen-card{background:var(--panel);border:2px solid var(--line);border-radius:8px;align-content:start;gap:6px;padding:10px 12px;display:grid}.gen-card.r0{border-color:#8fa79f}.gen-card.r1{border-color:#6fd84a}.gen-card.r2{border-color:#4aa3ff}.gen-card.r3{border-color:#b46bff}.gen-card.r4{border-color:#ffc53a}.gen-card.bio,.gen-card.rare{border-color:#ffd23a}.gen-card.locked{border-style:dashed}.gen-card.locked b,.gen-card.locked p{opacity:.7}.gen-head{align-items:center;gap:10px;display:flex}.gen-head b{font-size:17px;display:block}.gen-head small{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:13px}.gen-head .sil{flex:none;width:40px;height:40px}.gen-card p{color:var(--muted);margin:0;font-size:14px}.gen-card p b{color:var(--ink)}.gen-card .have{color:var(--bile)}.gen-card .lore{color:var(--ink);font-style:italic}.gen-card .tool{justify-self:start}.gen-card .tool[aria-pressed=true]{color:#ffd23a;border-color:#ffd23a}.gen-blob{border:3px solid var(--outline);width:34px;height:34px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.profile-title{font-family:var(--display);color:var(--c1);margin-top:-10px;font-size:22px}.lab-row.done{border-color:color-mix(in srgb, var(--bile) 60%, var(--line))}.lab-row .reward{color:var(--c1);font-size:14px}.lab-row .reward b{color:var(--c1)}.goal-strains,.goal-titles{grid-column:1/-1;justify-content:flex-start}.goal-new{border:2px solid var(--c1);border-radius:8px;padding:8px 12px}.goal-new .unlock{margin:2px 0}.looks-scrim{background:linear-gradient(to bottom, transparent 30%, color-mix(in srgb, var(--lab) 85%, transparent) 55%);place-items:end center}@media (aspect-ratio>=1){.looks-scrim{background:linear-gradient(to right, transparent 38%, color-mix(in srgb, var(--lab) 88%, transparent) 52%);place-items:center end}.looks-sheet{width:min(620px,56vw)}}.looks-sheet{gap:10px}.looks-list{gap:8px;display:grid}.look-row{justify-content:flex-start}.look-row>span{text-align:left;min-width:90px;color:var(--muted)}.look-dot{vertical-align:-1px;border:1px solid var(--outline);border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}.account-sheet{gap:14px;width:min(520px,100%)}.account-sheet.busy{opacity:.75}.acct-form{text-align:left;gap:12px;width:100%;display:grid}.acct-form>.btn{justify-self:center}.acct-form.inline{grid-template-columns:1fr auto;align-items:end}.acct-form.inline .btn{padding:10px 18px;font-size:18px}.acct-field{color:var(--ink);gap:4px;font-size:17px;display:grid}.acct-field small{color:var(--muted);font-size:15px}.acct-field input,.acct-field textarea,.acct-code{font:400 19px var(--ui);color:var(--ink);background:var(--panel);border:2px solid var(--line);box-sizing:border-box;-webkit-user-select:text;user-select:text;touch-action:auto;border-radius:6px;width:100%;padding:9px 12px}.acct-field textarea,.acct-code{word-break:break-all;resize:vertical;font-family:ui-monospace,monospace;font-size:13px}.acct-field input:focus,.acct-field textarea:focus{border-color:var(--c2);outline:none}.acct-note,.acct-who{color:var(--muted);text-align:center;margin:0;font-size:16px;line-height:1.35}.acct-who{color:var(--ink);font-size:19px}.acct-note b,.acct-who b{color:var(--ink)}.acct-msg{box-sizing:border-box;border-radius:6px;width:100%;margin:0;padding:8px 12px;font-size:17px}.acct-msg.ok{background:color-mix(in srgb, var(--bile) 18%, transparent);color:var(--bile)}.acct-msg.bad{background:color-mix(in srgb, var(--hurt) 18%, transparent);color:#ffb3ad}.link-btn{font:400 16px var(--ui);color:var(--c2);cursor:pointer;background:0 0;border:0;padding:4px;text-decoration:underline}.link-btn.danger{color:var(--hurt)}.btn.danger{background:var(--hurt)}.acct-form.danger{border:2px solid var(--hurt);border-radius:8px;padding:12px}.acct-saves{border-top:1px solid var(--line);justify-items:center;gap:10px;width:100%;padding-top:10px;display:grid}.acct-saves summary{cursor:pointer;color:var(--muted);font-size:16px}.acct-saves[open]{gap:12px}.acct-saves>*+*{margin-top:10px}.menu-account{color:var(--muted);margin-top:-8px;font-size:15px}.menu-account b{color:var(--ink)}.account-nudge{border:2px solid var(--c2);border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 16px;margin-top:6px;padding:10px 14px;display:flex}.account-nudge p{margin:0;font-size:17px}.account-nudge .btn{padding:8px 18px;font-size:18px}.social-sheet{width:min(1080px,100%)}.social-grid{text-align:left;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;width:100%;display:grid}@media (width<=820px){.social-grid{grid-template-columns:minmax(0,1fr)}}.social-lobby,.social-friends{background:var(--panel);border:2px solid var(--line);border-radius:14px;align-content:start;gap:12px;min-width:0;padding:14px;display:grid}.social-note{color:var(--c1);overflow-wrap:anywhere;margin:0;font-size:16px}.social-empty{color:var(--muted);margin:0;font-size:17px}.social-empty.small{font-size:15px}.lobby-members{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}@media (width<=520px){.lobby-members{grid-template-columns:repeat(2,minmax(0,1fr))}}.member{border:3px solid var(--pig,var(--line));text-align:center;background:#0e1716;border-radius:12px;justify-items:center;gap:3px;min-width:0;padding:10px 6px;display:grid}.member.you{box-shadow:0 0 0 2px var(--outline), 0 0 14px #ffe23a40}.member.empty{border-style:dashed;border-color:var(--line);color:var(--muted);align-content:center;min-height:140px}.member b{overflow-wrap:anywhere;align-items:center;gap:4px;font-size:17px;display:inline-flex}.member small{color:var(--muted);font-size:13px}.member-state{color:var(--bile);font-size:13px;font-style:normal;font-weight:700}.pig-dot{background:var(--pig,#ffe23a);border:2px solid var(--outline);vertical-align:-1px;border-radius:50%;width:11px;height:11px;margin-right:3px;display:inline-block}.lobby-pick{color:var(--ink);text-align:center;min-width:7ch}.bag-chip.step{padding:4px 11px;font-size:18px;line-height:1}.lobby-settings,.lobby-wait{color:var(--muted);margin:0;font-size:15px}.lobby-wait{color:var(--c1)}.social-lobby .row{flex-wrap:wrap;justify-content:flex-start}.add-friend{gap:8px;display:flex}.add-friend input{min-width:0;font:600 16px var(--ui);color:var(--ink);border:2px solid var(--line);background:#0e1716;border-radius:10px;flex:1;padding:8px 10px}.social-friends h3{font:700 14px var(--ui);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:4px 0 0}.friend{background:#0e1716;border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:flex}.friend>span{overflow-wrap:anywhere;flex:1;min-width:0;display:grid}.friend small{color:var(--muted);font-size:13px}.friend .btn{padding:6px 12px;font-size:14px}.friend .presence{background:#3a4a46;border-radius:50%;flex:none;width:10px;height:10px}.friend.online .presence{background:var(--bile);box-shadow:0 0 8px var(--bile)}.friend-remove{color:var(--muted);font:600 13px var(--ui);cursor:pointer;background:0 0;border:0;text-decoration:underline}.social-toasts{z-index:60;pointer-events:none;gap:8px;width:min(380px,100vw - 28px);display:grid;position:fixed;top:14px;right:14px}.social-toast{pointer-events:auto;background:var(--panel);box-shadow:0 6px 0 var(--outline), 0 0 24px #ffe23a40;color:var(--ink);border:3px solid #ffe23a;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;font-size:16px;animation:.25s ease-out toast-in;display:flex}.social-toast span{flex:1;min-width:12ch}.social-toast .btn{padding:6px 14px;font-size:15px}.clash-board{border:2px solid var(--line);min-width:200px;color:var(--ink);pointer-events:none;background:#0e1716d9;border-radius:12px;padding:8px 12px;font-size:15px;position:absolute;top:150px;left:12px}.clash-board ol{gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.clash-board li{gap:8px;display:flex}.clash-board li i{color:var(--muted);width:1.2em;font-style:normal}.clash-board li b{flex:1}.clash-board li.you b{color:#ffe23a}.clash-time{color:var(--c1);font-weight:700}.clash-board.countdown{font:400 clamp(28px, 6vw, 54px) var(--display);text-align:center;border-color:#ffe23a;padding:16px 26px;top:38%;left:50%;transform:translate(-50%)}.clash-scroll{max-width:100%;overflow-x:auto}.clash-table{border-collapse:collapse;font-size:16px}.clash-table th,.clash-table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:6px 10px}.clash-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.clash-table tr.you td{color:#ffe23a}.social-lobby .btn:disabled{opacity:.45;cursor:default;transform:none}.team-list li{grid-template-columns:minmax(0,1fr) 70px;align-items:center;gap:2px 8px;margin-top:3px;display:grid}.team-list li small{color:var(--muted);grid-column:1/-1;font-size:12px}.team-hp{background:#0b0710;border-radius:4px;height:8px;overflow:hidden}.team-hp i{background:var(--bile);height:100%;display:block}.team-note{color:#ffe23a;max-width:230px;margin:6px 0 0;font-size:13px}.move .ico,.touch-only,.touch-keys,.touch-corner,.touch-hint,.rotate-hint,body.touch .desk-keys,body.touch kbd,body.touch .card .press,body.touch .sheet>.keys:not(.touch-keys){display:none}body.touch .touch-keys{display:block}body.pad kbd[data-pad]{font-size:0}body.pad kbd[data-pad]:after{content:attr(data-pad);font-size:12px}.absorb .key-pad,body.pad .absorb .key-e{display:none}body.pad:not(.touch) .absorb .key-pad{display:inline}.absorb .key-hold,body.touch .absorb .key-e{display:none}body.touch .absorb .key-hold{font-size:12px;display:inline}body.touch .clock .k.small{display:none}body.touch.in-run #joy{left:calc(max(18px, env(safe-area-inset-left,0px)) + 78px);top:calc(100% - 92px - env(safe-area-inset-bottom,0px));opacity:.55;background:#0b07102e;border:3px solid #f4f1ea59;width:124px;height:124px;margin:-62px 0 0 -62px;transition:opacity .15s;display:block}body.touch.in-run #joy.on{opacity:1;border-color:#f4f1eab3}body.touch.in-run #joy i{border:3px solid var(--outline);background:#f4f1ea8c;width:52px;height:52px;margin:-26px}body.touch #joy.on{display:block}body.touch .moves{right:max(18px, env(safe-area-inset-right,0px));bottom:calc(14px + env(safe-area-inset-bottom,0px));pointer-events:none;width:246px;height:214px;display:block}body.touch .move{--size:64px;--accent:var(--ink);width:var(--size);height:var(--size);border:3px solid var(--outline);min-width:0;box-shadow:0 3px 0 var(--outline), inset 0 0 0 2px #f4f1ea2e;pointer-events:auto;font:700 11px var(--ui);letter-spacing:.06em;-webkit-tap-highlight-color:transparent;background:#16211fc7;border-radius:50%;align-content:center;place-items:center;gap:0;padding:0;display:grid;position:absolute;overflow:visible}body.touch .move:active{box-shadow:0 1px 0 var(--outline);transform:translateY(2px)scale(.96)}body.touch .move .ico{line-height:0;display:block}body.touch .move .ico svg{width:calc(var(--size) * .5);height:calc(var(--size) * .5)}body.touch .move .lb{text-shadow:0 1px 0 var(--outline);margin-top:1px;line-height:1}body.touch #hopBtn{--size:88px;--accent:#9be34a;border-color:var(--outline);background:#43622de4;font-size:13px;bottom:0;right:0}body.touch #dashBtn{--accent:#5ad1ff;bottom:2px;right:100px}body.touch #slamBtn{--accent:#ffb03a;bottom:100px;right:8px}body.touch #frenzyPad{--accent:#ff4f6a;bottom:86px;right:90px}body.touch #usePad{--accent:#ffd23a;bottom:6px;right:174px}body.touch #usePad:not(.ready) .ico{opacity:.45}body.touch #usePad.ready{background:#645c28e4;border-color:#ffd23a;animation:.7s ease-in-out infinite alternate use-ready}@keyframes use-ready{0%{box-shadow:0 3px 0 var(--outline), 0 0 0 0 #ffd23a}to{box-shadow:0 3px 0 var(--outline), 0 0 14px 3px #ffd23a}}body.reduced-flash #usePad.ready{animation:none}body.touch #aimBtn{--size:48px;font-size:10px;bottom:100px;right:172px}body.touch #aimBtn .aim-colon,body.touch #aimBtn .lb>:not(b){display:none}body.touch #dashBtn>i,body.touch #frenzyPad:before{content:"";background:conic-gradient(var(--accent) calc(var(--p,0) * 360deg), transparent 0);pointer-events:none;border-radius:50%;height:auto;position:absolute;inset:-3px;-webkit-mask:radial-gradient(circle,#0000 62%,#000 64%);mask:radial-gradient(circle,#0000 62%,#000 64%);width:auto!important}body.touch #dashBtn>i{--p:var(--ready,1)}body.touch #frenzyPad:before{--p:var(--fill,0)}body.touch #dashBtn.ready{border-color:var(--outline)}body.touch #frenzyPad{opacity:1;display:grid}body.touch #frenzyPad:disabled .ico{opacity:.55}body.touch #frenzyPad.ready{background:#70333ce6;animation:.6s ease-in-out infinite alternate pad-ready}body.touch #frenzyPad.active{background:#ab3e4ff0}@keyframes pad-ready{0%{box-shadow:0 3px 0 var(--outline), 0 0 0 0 #ff4f6a}to{box-shadow:0 3px 0 var(--outline), 0 0 18px 4px #ff4f6a}}body.reduced-flash #frenzyPad.ready{animation:none}body.touch .vitals .frenzy{display:none}body.touch .touch-corner{z-index:6;right:max(16px, env(safe-area-inset-right,0px));top:calc(130px + env(safe-area-inset-top,0px));gap:10px;display:flex;position:fixed}.round-btn{border:3px solid var(--outline);width:48px;height:48px;box-shadow:0 3px 0 var(--outline);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#16211fcc;border-radius:50%;place-items:center;padding:0;display:grid}.round-btn svg{width:26px;height:26px}body.touch .minimap{pointer-events:auto;cursor:pointer}body.touch .absorb{left:auto;right:calc(max(18px, env(safe-area-inset-right,0px)) + 262px);bottom:calc(18px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 452px);transform:none}body.touch .touch-hint{z-index:4;pointer-events:none;grid-template-columns:1fr 1fr;align-items:center;padding-bottom:90px;animation:.4s ease-out both hint-in;display:grid;position:fixed;inset:0}body.touch .touch-hint.fade{animation:.6s ease-in both hint-out}.touch-hint .th{text-shadow:0 2px 0 var(--outline);background:#0b07108c;border:2px dashed #f4f1ea73;border-radius:14px;justify-self:center;justify-items:center;gap:2px;padding:10px 18px;display:grid}.touch-hint b{font:700 20px var(--ui);text-transform:uppercase;letter-spacing:.08em}.touch-hint small{color:var(--muted);font-size:14px}@keyframes hint-in{0%{opacity:0}to{opacity:1}}@keyframes hint-out{0%{opacity:1}to{opacity:0}}@media (orientation:portrait){body.touch.in-run .rotate-hint{display:flex}}.rotate-hint{z-index:7;border:2px solid var(--bile);width:min(320px,100vw - 32px);color:var(--ink);font:600 16px var(--ui);text-align:left;background:#16211feb;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;position:fixed;top:46%;left:50%;transform:translate(-50%)}.rotate-hint svg{flex:none;width:40px;height:40px}.rotate-hint small{color:var(--muted)}@media (height<=520px){body.touch .hud{padding-block:calc(6px + env(safe-area-inset-top,0px)) calc(6px + env(safe-area-inset-bottom,0px))}body.touch .top{grid-template-columns:1fr auto 1fr;gap:8px}body.touch .top>.clock{grid-area:auto}body.touch .vitals{gap:3px;width:min(230px,30vw)}body.touch .vitals .lbl{font-size:12px}body.touch .vitals .bar{height:9px}body.touch .research{display:none!important}body.touch .clock .t{font-size:24px}body.touch .clock .k{font-size:12px}body.touch .clock .goal{max-width:34vw;margin-inline:auto}body.touch .threat{margin:0 0 2px}body.touch .biomass-badge{margin:0 auto 2px;padding:1px 10px 1px 5px;font-size:13px;transform:scale(.85)}body.touch .minimap{width:96px;height:96px}body.touch .touch-corner{top:calc(110px + env(safe-area-inset-top,0px))}body.touch .build>:not(#buffs){display:none}body.touch .boss-bar{top:calc(118px + env(safe-area-inset-top,0px));width:min(420px,100vw - 520px)}}@media (width<=620px){body.touch .build>:not(#buffs){display:none}body.touch .absorb{right:max(16px, env(safe-area-inset-right,0px));bottom:calc(240px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 32px)}body.touch .moves{bottom:calc(14px + env(safe-area-inset-bottom,0px))}body.touch .touch-corner{top:calc(124px + env(safe-area-inset-top,0px))}}@media (height<=520px){.scrim{padding-block:calc(8px + env(safe-area-inset-top,0px)) calc(8px + env(safe-area-inset-bottom,0px));place-items:start center}.sheet{gap:10px}.scrim.looks-scrim{place-items:start end}.looks-sheet{width:min(520px,52vw)}h2{font-size:30px}.btn{padding:8px 22px;font-size:17px}#title .sheet{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;column-gap:24px;width:min(900px,100%);min-height:calc(100vh - 16px)}#title .sheet>*{grid-column:1}#title .logo{font-size:clamp(48px,9vw,78px)}#title .tag{font-size:15px}#title .menu{grid-area:1/2/span 8;grid-template-columns:1fr 1fr;gap:8px;width:100%}#title .menu .btn:first-child{grid-column:1/-1;padding-block:12px;font-size:22px}#title .menu .btn{padding-inline:8px}#title .keys{font-size:12px}.strains{gap:5px}.strain{padding:4px 2px}.strain .portrait{width:40px;height:40px}.strain .sn{font-size:13px}.strain .so{font-size:10px}#levelup .eyebrow,#shop .eyebrow{display:none}#levelup h2,#shop h2{font-size:26px}.cards{gap:8px}.card{gap:5px;padding:9px 10px}.card .nm{font-size:17px}.card p{font-size:14px}.card .sub{font-size:11px}.fx{gap:2px;padding-top:5px;font-size:12.5px}.tool{padding:6px 10px;font-size:14px}#fullMap .sheet{grid-template-columns:auto 200px;align-items:center;column-gap:18px;width:auto}#fullMap .sheet>*{grid-column:2}#fullMapCanvas{grid-row:1/span 6;grid-column:1!important}.map-legend{justify-content:start;font-size:13px}}@media (height<=520px),(width<=620px){#strainSelect .sheet>.row,#levelup .tools,#shop .tools,#pause .sheet>.row{bottom:calc(-8px - env(safe-area-inset-bottom,0px));z-index:1;width:100%;padding:10px 0 calc(8px + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent, var(--lab) 35%);position:sticky}}body.touch.in-run .vitals{gap:2px;width:min(210px,30vw)}body.touch.in-run .vitals .lbl{font-size:11px;line-height:1.1}body.touch.in-run .vitals .bar{height:7px}body.touch.in-run .riot-panel{transform-origin:0 0;margin-bottom:-4px;transform:scale(.85)}body.touch.in-run .clock .goal:not(.status),body.touch.in-run .clock .goal.status:empty{display:none}body.touch.in-run .clock .k.zone{opacity:.85;font-size:10px}body.touch.in-run .clock .t{font-size:22px;line-height:1}body.touch.in-run .threat{margin:0 0 1px;transform:scale(.85)}body.touch.in-run .biomass-badge{margin:-3px auto 0;transform:scale(.75)}body.touch .moves{width:214px;height:186px}body.touch .move{--size:54px;font-size:9px}body.touch .move .lb{font-size:9px}body.touch #hopBtn{--size:76px;font-size:11px}body.touch #dashBtn{bottom:0;right:86px}body.touch #slamBtn{bottom:86px;right:6px}body.touch #frenzyPad{bottom:70px;right:74px}body.touch #aimBtn{--size:40px;bottom:120px;right:146px}body.touch #aimBtn b{font-size:8px}body.touch #usePad{bottom:52px;right:150px}body.touch #usePad:not(.ready){display:none}body.touch .absorb{right:calc(max(18px, env(safe-area-inset-right,0px)) + 230px);max-width:calc(100vw - 420px)}body.touch .touch-hint{align-items:center;padding-bottom:0}.touch-hint .th{background:#0b071080;border:0;grid-auto-flow:column;align-items:center;gap:8px;padding:5px 12px}.touch-hint .th svg{width:24px;height:24px}.touch-hint b{font-size:13px}.touch-hint small{display:none}@media (orientation:portrait){body.touch .touch-hint{display:none}}@media (width<=620px){body.touch.in-run .vitals{width:min(200px,52vw)}body.touch .absorb{right:max(16px, env(safe-area-inset-right,0px));bottom:calc(210px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 32px)}}
