:root{--surface-app:#c8d9c4;--surface-panel:#dfeedd;--surface-pressed:#b4c8ae;--ink:#1a2e1a;--ink-muted:#4a5c46;--border-subtle:#9aaa94;--border-strong:#2d4a2d;--accent-positive:#3d7a4a;--accent-negative:#5c6b58;--accent-alt:#3a7f7a;--focus-ring:#1e5a52;--duration-tap:.18s;--duration-screen:.32s;--ease-snap:cubic-bezier(.22, 1, .36, 1);--font-sans:system-ui, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "SF Mono", Consolas, monospace;--font-pixel:"Press Start 2P", ui-monospace, monospace;--activity-drawer-tab-h:calc(36px + env(safe-area-inset-bottom,0px))}.preset-horde{--accent-positive:var(--accent-alt)}.preset-krenko{--accent-positive:#6e3a3e;--accent-alt:#7f4a4e;--focus-ring:#4a282c}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100dvh;margin:0}body{font-family:var(--font-sans);background:var(--surface-app);color:var(--ink)}#root{flex-direction:column;max-width:520px;min-height:100dvh;margin:0 auto;display:flex}.app-root{min-height:0;padding:12px 14px calc(14px + env(safe-area-inset-bottom,0));flex-direction:column;flex:1;display:flex}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.menu-screen{min-height:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:calc(var(--activity-drawer-tab-h) + 14px);scroll-padding-bottom:calc(var(--activity-drawer-tab-h) + 18px);overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:0;display:flex;overflow-y:auto}.menu-hero{flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;min-height:min-content;padding:0 12px;display:flex}.menu-header{text-align:center;flex:none;margin:0}.menu-logotype{font-family:var(--font-pixel);letter-spacing:.04em;color:var(--ink);text-transform:lowercase;word-break:break-word;max-width:100%;margin:0;font-size:clamp(1.35rem,12vw,2.35rem);font-weight:800;line-height:.95}.menu-logotype__line{display:block}.menu-logotype__line+.menu-logotype__line{margin-top:.06em}.menu-tagline{max-width:22em;color:var(--ink-muted);margin:10px auto 0;padding:0 6px;font-size:clamp(.8rem,2.8vw,.95rem);font-weight:600;line-height:1.35}.char-select{flex-direction:column;flex:1.12 auto;align-items:stretch;gap:0;min-height:0;display:flex}.char-select__card-stage{overscroll-behavior:contain;flex-direction:column;flex:auto;justify-content:center;align-items:center;min-height:0;padding:clamp(6px,1.8dvh,18px) 0 clamp(4px,1.2dvh,14px);display:flex;overflow-y:auto}.char-select__carousel{flex-direction:column;flex:none;justify-content:flex-start;align-items:center;padding:0;display:flex}.char-select__pager{flex-direction:row;flex:none;justify-content:center;align-items:center;gap:5px;margin-top:clamp(14px,3.2dvh,26px);margin-bottom:clamp(14px,3.2dvh,28px);display:flex}.char-select__nav{border:2px solid var(--border-strong);background:var(--surface-pressed);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;box-shadow:inset 0 1px #ffffff6b,0 2px #1e301e1f}.char-select__nav:active{filter:brightness(.95)}.char-tile{aspect-ratio:63/88;border:3px solid #0000002e;border-radius:14px;flex-direction:column;flex:none;width:min(100%,100vw - 24px,360px);min-width:0;max-height:min(62dvh,520px);display:flex;overflow:hidden;box-shadow:inset 0 0 0 2px #ffffff73,0 6px #0000001f}.char-tile--scute{background:linear-gradient(165deg, color-mix(in srgb, var(--accent-positive) 42%, #f4fff6) 0%, color-mix(in srgb, var(--accent-positive) 22%, #dfeedd) 48%, color-mix(in srgb, var(--accent-positive) 35%, #c8e6c8) 100%);color:#0f2414}.char-tile--horde{background:linear-gradient(165deg, color-mix(in srgb, var(--accent-alt) 40%, #f0fffc) 0%, color-mix(in srgb, var(--accent-alt) 22%, #dfece8) 50%, color-mix(in srgb, var(--accent-alt) 34%, #c8e8e4) 100%);color:#0f2222}.char-tile--soon{background:linear-gradient(165deg, color-mix(in srgb, var(--surface-panel) 55%, #c5cbc4) 0%, color-mix(in srgb, var(--surface-pressed) 40%, #aeb4ad) 100%);color:#2a2e2a}.char-tile__swatch{opacity:.92;flex:none;height:26%;min-height:52px;max-height:96px;position:relative;overflow:hidden}.char-tile__swatchSprite{width:42%;max-width:220px;height:auto;image-rendering:pixelated;pointer-events:none;filter:drop-shadow(0 2px #00000052);opacity:.9;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scaleX(-1)}.char-tile--scute .char-tile__swatch{background:#4a9460}.char-tile--horde .char-tile__swatch{background:#3d8f8a}.char-tile--horde .char-tile__swatchSprite{width:44%}.char-tile--krenko{background:linear-gradient(165deg, color-mix(in srgb, var(--accent-positive) 38%, #fff4f2) 0%, color-mix(in srgb, var(--accent-positive) 20%, #f2e8e6) 50%, color-mix(in srgb, var(--accent-positive) 32%, #e8d4d0) 100%);color:#1f0f0f}.char-tile--krenko .char-tile__swatch{background:#5c3839}.char-tile--krenko .char-tile__swatchSprite{width:44%}.char-tile--soon .char-tile__swatch{background:#9a8ab0}.char-tile__body{flex-direction:column;flex:auto;justify-content:flex-start;gap:0;min-height:0;padding:12px 16px 14px;display:flex}.char-tile__main{flex-direction:column;flex:auto;gap:11px;min-height:0;display:flex}.char-tile__textBlock{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:auto;gap:0;min-height:0;display:flex;overflow:hidden auto}.char-tile__textBlock::-webkit-scrollbar{display:none}.char-tile__name{font-family:var(--font-pixel);letter-spacing:.02em;flex:none;margin:0;font-size:clamp(.82rem,4.8vw,1.08rem);font-weight:800;line-height:1.25}.char-tile__oracle{font-family:var(--font-sans);opacity:.97;flex:none;margin:0;font-size:clamp(.98rem,3.5vw,1.14rem);font-weight:600;line-height:1.48}.char-tile__oracle--egg{cursor:pointer;outline-offset:2px;border-radius:6px}.char-tile__oracle--egg:active{filter:brightness(.97)}.char-tile__flavor{border-top:1px solid color-mix(in srgb, currentColor 18%, transparent);font-family:var(--font-sans);white-space:pre-line;opacity:.9;flex:none;margin:auto 0 0;padding-top:10px;font-size:clamp(.9rem,3.1vw,1.02rem);font-style:italic;font-weight:500;line-height:1.5}.char-tile__flavor--egg{cursor:pointer;outline-offset:2px;border-radius:6px}.char-tile__flavor--egg:active{filter:brightness(.97)}@keyframes char-tile-flavor-bump{0%{filter:brightness();opacity:.9}40%{filter:brightness(1.12);opacity:1}to{filter:brightness();opacity:.9}}.char-tile__flavor--bump{animation:.48s ease-out char-tile-flavor-bump}@media (prefers-reduced-motion:reduce){.char-tile__flavor--bump{animation:none}}.char-select__dots{background:var(--surface-pressed);border:2px solid var(--border-strong);border-radius:999px;flex-wrap:nowrap;flex:none;justify-content:center;align-items:center;gap:12px;padding:7px 16px;display:flex;box-shadow:inset 0 1px #ffffff6b,0 2px #1e301e1f}.char-select__dot{border:2px solid var(--border-strong);background:color-mix(in srgb, var(--surface-panel) 50%, var(--surface-pressed));cursor:pointer;width:13px;height:13px;transition:transform .15s var(--ease-snap), background .15s ease, border-color .15s ease;border-radius:999px;flex:none;padding:0;box-shadow:0 1px #1e301e14}.char-select__dot:active{transform:scale(.92)}.char-select__dot--active{background:var(--accent-positive);border-color:color-mix(in srgb, var(--accent-positive) 55%, #1a2a1a);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-positive) 35%, transparent), 0 1px 0 #0000001f;transform:scale(1.12)}.char-select__cta{background:var(--accent-positive);color:#f4fff6;width:100%;min-height:54px;font-family:var(--font-pixel);letter-spacing:.05em;cursor:pointer;box-shadow:0 4px 0 color-mix(in srgb, var(--accent-positive) 55%, #000);border:none;border-radius:10px;flex:none;margin-top:0;padding:0 16px;font-size:clamp(.48rem,3.1vw,.68rem);font-weight:800;display:block}.char-select__cta:active:not(:disabled){box-shadow:0 2px 0 color-mix(in srgb, var(--accent-positive) 55%, #000);transform:translateY(2px)}.char-select__cta--soon{cursor:not-allowed;color:var(--ink);border:2px solid var(--border-strong);background:#eef2ed;box-shadow:0 3px #1e301e2e}.char-select__cta--soon:active{transform:none;box-shadow:0 3px #1e301e2e}@media (width>=521px){.menu-hero{flex:none;justify-content:flex-start;padding-top:clamp(18px,3.5vh,40px);padding-bottom:0}.menu-logotype{font-size:clamp(2.35rem,5.2vh,3.35rem)}.menu-tagline{margin-top:12px;font-size:clamp(.95rem,2.1vh,1.2rem)}.char-select{flex:1 1 0;min-height:0}.char-select__cluster{flex-direction:column;flex:none;align-items:stretch;gap:16px;width:100%;margin-block:auto;display:flex}.char-select__card-stage{flex:none;justify-content:flex-start;padding:0}.char-select__pager{gap:8px;margin-top:0;margin-bottom:0}}@media (width<=520px){.menu-hero{flex:0 auto;padding-top:clamp(2px,.8dvh,10px)}.menu-logotype{font-size:clamp(.95rem,8.2vw,1.65rem)}.menu-tagline{margin-top:6px}.char-select{flex:auto;min-height:0}.char-tile{width:min(100%,100vw - 12px);max-height:min(56dvh,440px)}.char-select__card-stage{flex:auto;min-height:0;padding:clamp(2px,.6dvh,8px) 0}.char-select__pager{margin-top:clamp(4px,1dvh,12px);margin-bottom:clamp(4px,1dvh,10px)}.char-select__cta{touch-action:manipulation}.activity-drawer__sheet{height:min(68dvh,480px)}}.activity-drawer__backdrop{z-index:100;cursor:pointer;background:#2a342a85;border:none;margin:0;padding:0;position:fixed;inset:0}.activity-drawer__sheet{z-index:101;background:var(--surface-panel);border:2px solid var(--border-strong);width:100%;max-width:520px;height:min(75dvh,560px);transform:translateY(calc(100% - var(--activity-drawer-tab-h)));transition:transform .34s var(--ease-snap);pointer-events:auto;will-change:transform;backface-visibility:hidden;border-bottom:none;border-radius:14px 14px 0 0;flex-direction:column;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -10px 36px #00000038}.activity-drawer__sheet--open{transform:translateY(0)}.activity-drawer__tab{flex:0 0 var(--activity-drawer-tab-h);min-height:var(--activity-drawer-tab-h);border:none;border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb, var(--surface-pressed) 88%, var(--surface-panel));cursor:pointer;width:100%;color:var(--ink-muted);border-radius:14px 14px 0 0;flex-direction:row;justify-content:space-between;align-items:center;gap:8px;padding:0 14px 0 16px;display:flex}.activity-drawer__chev{transition:transform var(--duration-tap) var(--ease-snap);flex-shrink:0}.activity-drawer__chev--open{transform:rotate(180deg)}.activity-drawer__tab-label{font-family:var(--font-pixel);letter-spacing:.04em;text-transform:lowercase;opacity:.92;font-size:clamp(.34rem,2vw,.46rem);font-weight:700}.activity-drawer__scroll{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:auto}.activity-drawer__list{padding:10px 12px calc(14px + env(safe-area-inset-bottom,0px));text-align:left;margin:0;font-size:.78rem;list-style:none}.activity-drawer__item{border-bottom:1px solid var(--border-subtle);padding:8px 0}.activity-drawer__row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.activity-drawer__time{color:var(--ink-muted);font-size:.68rem;font-weight:600}.activity-drawer__tag{background:var(--surface-pressed);color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;max-width:100%;padding:2px 6px;font-size:.65rem;overflow:hidden}.activity-drawer__tag--horde{background:color-mix(in srgb, var(--accent-alt) 25%, var(--surface-panel))}.activity-drawer__text{word-break:break-word;line-height:1.35;display:block}.activity-drawer__empty{color:var(--ink-muted);text-align:center;padding:12px 0}.track-screen{--control-row-h:clamp(52px, 14vw, 64px);flex:1;gap:8px;min-height:0}.track-top{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;min-height:44px;display:grid}.track-top__left{justify-self:start}.track-top__right{justify-self:end}.track-meter-title{font-family:var(--font-pixel);letter-spacing:.06em;text-align:center;text-transform:none;color:var(--ink);max-width:52vw;margin:0;font-size:clamp(.45rem,2.8vw,.62rem);line-height:1.35}.text-btn{color:var(--accent-positive);cursor:pointer;background:0 0;border:none;padding:8px 4px;font-size:.95rem;font-weight:600}.text-btn--icon{border-radius:6px;justify-content:center;align-items:center;padding:6px 8px;line-height:0;display:inline-flex}.text-btn--icon:focus-visible{outline:2px solid color-mix(in srgb, var(--accent-positive) 70%, transparent);outline-offset:2px}.preset-horde .text-btn--icon:focus-visible{outline-color:color-mix(in srgb, var(--accent-alt) 70%, transparent)}.preset-horde .text-btn{color:var(--accent-alt)}.lcd{border:2px solid var(--border-strong);background:var(--surface-panel);text-align:center;border-radius:4px;padding:14px 16px;box-shadow:inset 0 2px 6px #0000000f}.hero-panel--meter{text-align:right;box-shadow:none;background:0 0;border:none;flex:none;justify-content:flex-end;align-items:center;padding:6px 0 8px;display:flex}button.hero-panel--meter{cursor:pointer;border-radius:6px;width:100%}button.hero-panel--meter:focus-visible{outline:2px solid var(--accent-positive);outline-offset:3px}.preset-krenko button.hero-panel--meter:focus-visible{outline-color:var(--accent-positive)}.digit-meter{flex-wrap:nowrap;justify-content:stretch;align-items:stretch;gap:5px;width:100%;max-width:100%;display:flex;overflow-x:hidden}.digit-meter--bump .digit-cell{animation:.62s ease-out digit-meter-pop}@keyframes digit-meter-pop{0%,to{transform:scale(1)}40%{transform:scale(1.055)}}.digit-cell{font-family:var(--font-pixel);box-sizing:border-box;color:#c8f0c4;letter-spacing:.02em;text-shadow:0 0 2px #64dc8259;background:linear-gradient(#0f2212 0%,#1a331e 40%,#142a18 100%);border:2px solid #0a140c;border-radius:2px;flex:1 1 0;justify-content:center;align-items:center;width:0;min-width:0;min-height:clamp(72px,20vw,112px);padding:8px 4px;font-size:clamp(.62rem,5.4vw,1.42rem);line-height:1;display:inline-flex;box-shadow:inset 0 2px #ffffff1a,inset 0 -4px #0000008c,0 1px #ffffff40}.preset-horde .digit-cell{color:#c4f0ec;text-shadow:0 0 2px #64d2c84d;background:linear-gradient(#0f2a28 0%,#1a3d3a 40%,#143330 100%);border-color:#0a1615}.digit-cell--dot{padding-left:2px;padding-right:2px;font-size:clamp(.55rem,4.8vw,1.12rem)}.digit-cell--suffix{text-transform:none;font-size:clamp(.52rem,4.5vw,1.05rem)}.field-wrap{border:2px solid var(--border-strong);background:var(--surface-panel);border-radius:4px;flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);width:100%;min-height:clamp(200px,28dvh,360px);display:grid;position:relative;overflow:hidden}.field-board{z-index:0;isolation:isolate;grid-area:1/1;min-width:0;min-height:0;position:relative;overflow:hidden}.field-board .pixel-field{z-index:0;position:relative}.field-corner{z-index:20;pointer-events:none;flex-direction:column;grid-area:1/1;place-self:start;align-items:center;width:max-content;max-width:calc(100% - 16px);margin:8px;display:flex;position:relative}.field-corner .field-fab{pointer-events:auto}.field-corner--tr{justify-self:end}.field-fab{box-sizing:border-box;width:max(var(--control-row-h), 48px);height:max(var(--control-row-h), 48px);min-width:max(var(--control-row-h), 48px);min-height:max(var(--control-row-h), 48px);border:2px solid var(--border-strong);cursor:pointer;color:var(--ink);background:color-mix(in srgb, var(--surface-panel) 82%, #fff);box-shadow:none;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative;overflow:hidden}.field-fab:active:not(:disabled){filter:brightness(.94)}.field-fab:disabled{opacity:.55;cursor:not-allowed}.hype-flash{z-index:4;pointer-events:none;font-family:var(--font-pixel);letter-spacing:.1em;color:color-mix(in srgb, var(--accent-positive) 88%, #fff);text-shadow:0 0 18px #78ffa08c,0 2px #00000059;justify-content:center;align-items:center;font-size:clamp(1.35rem,12vw,2.75rem);font-weight:800;animation:1.05s ease-out forwards hype-fade;display:flex;position:absolute;inset:0}.preset-horde .hype-flash{color:color-mix(in srgb, var(--accent-alt) 88%, #fff);text-shadow:0 0 18px #64f0dc80,0 2px #00000059}@keyframes hype-fade{0%{opacity:0;transform:scale(.85)}20%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.08)}}.pixel-field{touch-action:none;width:100%;height:100%;display:block}.pixel-field--pannable{cursor:grab}.pixel-field--pannable:active{cursor:grabbing}.flash-slot{flex-direction:column;align-items:center;display:flex;position:relative}.flash-slot--undo{flex-direction:column;flex:none;align-self:stretch;display:flex}.flash-slot--grow{flex-direction:column;flex:1 1 0;align-self:stretch;min-width:0;display:flex;overflow:visible}.flash-slot--micro{flex-direction:column;flex:1;min-width:0;display:flex}.flash-slot--micro .micro-pair__btn{flex:1;width:100%;min-height:0}.micro-pair__btns>.flash-slot--micro:first-of-type{border-right:2px solid var(--border-strong)}.delta-flash{z-index:5;font-family:var(--font-pixel);white-space:nowrap;color:var(--accent-positive);text-shadow:0 0 6px #00000073,0 1px #fff3;pointer-events:none;font-size:clamp(.68rem,3.1vw,.92rem);font-weight:800;animation:1s ease-out forwards delta-rise;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}.preset-horde .delta-flash{color:var(--accent-alt)}.delta-flash--field-corner{animation:1s ease-out forwards delta-field-corner;top:calc(100% + 4px);bottom:auto;left:62%}.delta-flash--screen-center{z-index:40;animation:1s ease-out forwards delta-rise;position:fixed;top:50%;bottom:auto;left:50%}.delta-flash--field-board-center{z-index:15;animation:1.05s ease-out forwards delta-field-board-center-pop;inset:50% auto auto 50%}@keyframes delta-field-board-center-pop{0%{opacity:0;transform:translate(-50%,-50%)translateY(8px)}18%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)translateY(-14px)}}@keyframes delta-field-corner{0%{opacity:0;transform:translate(-50%)translateY(-6px)}18%{opacity:1}to{opacity:0;transform:translate(-50%)translateY(16px)}}@keyframes delta-rise{0%{opacity:0;transform:translate(-50%)translateY(8px)}15%{opacity:1}to{opacity:0;transform:translate(-50%)translateY(-16px)}}.track-screen--reduce-motion .delta-flash{animation-duration:.38s}@media (prefers-reduced-motion:reduce){.digit-meter--bump .digit-cell{animation:none}.hype-flash{animation-duration:.22s}.delta-flash{animation-duration:.38s}}.grow-cluster{justify-content:center;align-items:stretch;gap:10px;margin-top:auto;padding-top:4px;display:flex}.micro-pair{min-width:calc(var(--control-row-h) * 2 + 6px);flex-direction:column;flex:none;align-self:stretch;align-items:stretch;display:flex}.micro-pair__btns{min-height:var(--control-row-h);border:2px solid var(--border-strong);background:var(--surface-pressed);border-radius:4px;flex:1;display:flex;overflow:visible}.micro-pair__btn{cursor:pointer;color:var(--ink);box-shadow:0 4px 0 color-mix(in srgb, var(--border-strong) 58%, #000);background:0 0;border:none;flex:1;margin:0;padding:0;font-size:1.05rem;font-weight:700}.micro-pair__btn--icon,.micro-btn--icon{justify-content:center;align-items:center;line-height:0;display:inline-flex}.track-glyph{flex-shrink:0;display:block}.micro-pair__btn:active{box-shadow:0 2px 0 color-mix(in srgb, var(--border-strong) 52%, #000);background:var(--surface-panel);transform:translateY(2px)}.micro-btn{box-sizing:border-box;min-width:52px;min-height:var(--control-row-h);border:2px solid var(--border-strong);background:var(--surface-pressed);cursor:pointer;color:var(--ink);box-shadow:0 4px 0 color-mix(in srgb, var(--border-strong) 58%, #000);border-radius:4px;flex:1;justify-content:center;align-items:center;padding:0 12px;font-size:1.05rem;font-weight:700;display:inline-flex}.micro-btn:active{box-shadow:0 2px 0 color-mix(in srgb, var(--border-strong) 52%, #000);transform:translateY(2px)}.grow-btn-slot{flex-direction:column;flex:1 1 0;align-self:stretch;min-width:0;min-height:0;display:flex;position:relative}.grow-btn{box-sizing:border-box;width:100%;min-height:var(--control-row-h);border:2px solid color-mix(in srgb, var(--accent-positive) 70%, #000);background:var(--accent-positive);color:#f4fff6;font-size:clamp(.68rem,3.5vw,.92rem);font-weight:800;font-family:var(--font-pixel);letter-spacing:.06em;cursor:pointer;box-shadow:0 4px 0 color-mix(in srgb, var(--accent-positive) 55%, #000);text-align:center;border-radius:4px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;line-height:1.35;display:inline-flex}.grow-btn__title{display:block}.grow-btn__subtitle{font-family:var(--font-sans);letter-spacing:.08em;text-transform:lowercase;color:color-mix(in srgb, #f4fff6 84%, var(--accent-positive));opacity:.96;font-size:clamp(.58rem,1.95vw,.68rem);font-weight:800;line-height:1;display:block}.grow-btn__subtitle--scute-lands-hint{letter-spacing:.03em;text-transform:none;max-width:16rem;color:color-mix(in srgb, #f4fff6 58%, var(--accent-positive));opacity:.88;text-wrap:balance;margin-inline:auto;font-style:italic;font-weight:500;line-height:1.2}.grow-btn--charged{animation:1.15s ease-in-out infinite grow-btn-charged-glow}@keyframes grow-btn-charged-glow{0%,to{box-shadow:0 4px 0 color-mix(in srgb, var(--accent-positive) 55%, #000), 0 0 0 0 transparent}50%{box-shadow:0 4px 0 color-mix(in srgb, var(--accent-positive) 55%, #000), 0 0 18px 5px color-mix(in srgb, var(--accent-positive) 45%, #ffffff8c)}}@keyframes grow-btn-charged-glow-horde{0%,to{box-shadow:0 4px 0 color-mix(in srgb, var(--accent-alt) 50%, #000), 0 0 0 0 transparent}50%{box-shadow:0 4px 0 color-mix(in srgb, var(--accent-alt) 50%, #000), 0 0 18px 5px color-mix(in srgb, var(--accent-alt) 50%, #ffffff80)}}.track-screen--reduce-motion .grow-btn--charged{box-shadow:0 4px 0 color-mix(in srgb, var(--accent-positive) 55%, #000), 0 0 0 2px color-mix(in srgb, var(--accent-positive) 45%, transparent);animation:none}.preset-horde .grow-btn--charged{animation-name:grow-btn-charged-glow-horde}.track-screen--reduce-motion.preset-horde .grow-btn--charged{box-shadow:0 4px 0 color-mix(in srgb, var(--accent-alt) 50%, #000), 0 0 0 2px color-mix(in srgb, var(--accent-alt) 45%, transparent)}.preset-horde .grow-btn{background:var(--accent-alt);border-color:color-mix(in srgb, var(--accent-alt) 70%, #000);box-shadow:0 4px 0 color-mix(in srgb, var(--accent-alt) 50%, #000)}.grow-btn:active{box-shadow:0 2px 0 color-mix(in srgb, var(--accent-positive) 55%, #000);transform:translateY(2px)}.preset-horde .grow-btn:active{box-shadow:0 2px 0 color-mix(in srgb, var(--accent-alt) 50%, #000)}.wipe-btn__progress{opacity:.88;pointer-events:none;width:0%;position:absolute;top:0;bottom:0;left:0}.wipe-btn__glyph{z-index:1;filter:drop-shadow(0 0 1px #ffffff8c)drop-shadow(0 1px #0006);justify-content:center;align-items:center;display:flex;position:relative}.modal-backdrop{z-index:50;background:#00000059;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface-panel);border:2px solid var(--border-strong);border-radius:12px;width:100%;max-width:320px;padding:20px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.modal--confirm{text-align:center}.modal-confirm-title{font-family:var(--font-pixel);letter-spacing:.04em;color:var(--ink);margin:0;font-size:clamp(.55rem,3.2vw,.78rem);font-weight:800;line-height:1.45}.modal-actions--icons{justify-content:center;gap:20px;margin-top:18px}.modal-actions--stack{flex-direction:column;align-items:stretch;gap:8px}.modal-action-btn{box-sizing:border-box;border:2px solid var(--border-strong);background:var(--surface-pressed);width:100%;min-height:40px;color:var(--ink);font-family:var(--font-pixel);letter-spacing:.04em;cursor:pointer;border-radius:8px;font-size:clamp(.52rem,2.9vw,.7rem)}.modal-action-btn:focus-visible{outline:2px solid var(--accent-positive);outline-offset:3px}.modal-action-btn--ghost{font-family:var(--font-pixel);letter-spacing:.04em;text-transform:lowercase;color:var(--ink-muted);background:color-mix(in srgb, var(--surface-app) 55%, var(--surface-panel));border-color:var(--border-subtle);font-size:clamp(.48rem,2.7vw,.66rem);font-weight:800;box-shadow:inset 0 1px #ffffff59}.modal-action-btn--ghost:active{filter:brightness(.97)}.preset-krenko .modal-action-btn--ghost:focus-visible{outline-color:var(--accent-positive)}.modal-icon-btn{box-sizing:border-box;border:2px solid var(--border-strong);background:var(--surface-pressed);width:52px;height:52px;color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.modal-icon-btn:focus-visible{outline:2px solid var(--accent-positive);outline-offset:3px}.preset-horde .modal-icon-btn:focus-visible,.preset-horde .modal-action-btn:focus-visible{outline-color:var(--accent-alt)}.modal-icon-btn--confirm{border-color:color-mix(in srgb, var(--accent-positive) 72%, #000);background:var(--accent-positive);color:#f4fff6}.preset-horde .modal-icon-btn--confirm{border-color:color-mix(in srgb, var(--accent-alt) 72%, #000);background:var(--accent-alt);color:#f4fff6}.sheet-backdrop{z-index:60;background:#0006;justify-content:center;align-items:center;padding:14px;display:flex;position:fixed;inset:0}.sheet{background:var(--surface-panel);width:100%;max-width:520px;max-height:88vh;padding:16px 18px calc(20px + env(safe-area-inset-bottom,0));border-radius:16px 16px 0 0;overflow:auto}.sheet.sheet--info{background:#fbfdfb;border:1px solid #c8d1c8;border-radius:12px;flex-direction:column;width:min(92vw,520px);height:min(74vh,620px);padding:0;display:flex;overflow:hidden;box-shadow:0 12px 36px #00000042}.info-sheet__srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.info-sheet__card{box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;flex:auto;min-height:0;margin:0;display:flex;overflow:hidden}.info-sheet__header{background:#eef2ee;border-bottom:1px solid #d9e1d9;flex-direction:row;align-items:stretch;display:flex}.info-sheet__closeBtn{color:#243124;background:#eef2ee;border:none;border-left:1px solid #d9e1d9;border-radius:0;flex:0 0 52px;width:52px;height:52px;font-weight:800}.info-sheet__closeBtn:hover{background:#e4ebe4}.info-sheet__row{font-family:var(--font-sans);border-bottom:1px solid #e2e6e2;padding:11px 14px}.info-sheet__row--title{flex-direction:row;justify-content:space-between;align-items:baseline;gap:12px;font-size:1.05rem;display:flex}.info-sheet__name{color:#0f0f0f;font-weight:700}.info-sheet__mana{letter-spacing:.06em;color:#1a2e1a;flex-shrink:0;font-weight:700}.preset-horde .info-sheet__mana{color:#1a2a2c}.info-sheet__row--type{color:#3d4540;font-size:.95rem;font-style:italic}.info-sheet__panel{-webkit-overflow-scrolling:touch;min-height:0;max-height:none;font-family:var(--font-sans);color:#162016;background:#fff;flex:auto;padding:14px 16px 12px;overflow-y:auto}.info-sheet__oracle{margin:0;font-size:.92rem;line-height:1.5}.info-sheet__flavor{color:#334033;white-space:pre-line;margin:14px 0 0;font-size:.86rem;font-style:italic;line-height:1.45}.info-sheet__row--pt{letter-spacing:.02em;color:#0f0f0f;text-align:left;border-bottom:1px solid #e2e6e2;padding:10px 14px;font-size:1rem;font-weight:800}.info-sheet__ptInline{letter-spacing:.02em;color:#0f0f0f;margin:14px 0 0;font-size:1rem;font-weight:800}.info-sheet__tabs{border-top:none;flex:auto;grid-template-columns:1fr 1fr 1fr;gap:0;display:grid}.info-sheet__tab{font-family:var(--font-sans);letter-spacing:.06em;text-transform:lowercase;color:#2c3a2e;cursor:pointer;background:#eef2ee;border:1px solid #d9e1d9;border-top:none;border-left:none;margin:0;padding:11px 6px;font-size:.72rem;font-weight:700;transition:background .16s,color .16s,box-shadow .16s}.info-sheet__tab:last-child{border-right:none}.info-sheet__tab:hover{background:#e5ebe6}.info-sheet__tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px;z-index:1}.info-sheet__tab--active{color:#182518;box-shadow:inset 0 -3px 0 var(--accent-positive);background:#fff;border-bottom-color:#fff}.preset-horde .info-sheet__tab--active{box-shadow:inset 0 -3px 0 var(--accent-alt)}.info-sheet__rulesLead{margin:0 0 14px;font-size:.88rem}.info-sheet__rulesLead a{color:var(--accent-positive);font-weight:700}.preset-horde .info-sheet__rulesLead a{color:var(--accent-alt)}.info-sheet__rulesHeading{color:var(--ink-muted);margin:0 0 10px;font-size:.78rem;font-weight:700}.info-sheet__tipsHeading{color:var(--ink-muted);text-transform:none;margin:0 0 10px;font-size:.78rem;font-weight:700}.info-sheet__rulings{margin:0;padding-left:1.2em;font-size:.84rem;line-height:1.45}.info-sheet__rulings li{margin-bottom:.75em}.info-sheet__rulings li:last-child{margin-bottom:0}.info-sheet__tips{margin:0;padding-left:1.15em;font-size:.88rem;line-height:1.45}.info-sheet__tips li{margin-bottom:1.25em}.info-sheet__tips li:last-child{margin-bottom:0}.info-sheet__tips strong{font-weight:800}.sheet__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sheet__head h2{margin:0;font-size:1.1rem}.sheet__head h2.sheet__titleRow{flex-wrap:wrap;flex:auto;align-items:center;gap:10px;min-width:0;display:flex}.icon-btn{background:var(--surface-pressed);cursor:pointer;border:none;border-radius:8px;width:36px;height:36px;font-size:1rem}.sheet__body h3{color:var(--ink-muted);margin:16px 0 6px;font-size:.85rem}.citation{color:var(--ink-muted);margin-top:12px;font-size:.75rem;line-height:1.4}.sheet__body a{color:var(--accent-positive)}.preset-horde .sheet__body a{color:var(--accent-alt)}.preset-krenko .text-btn--icon:focus-visible{outline-color:color-mix(in srgb, var(--accent-positive) 70%, transparent)}.preset-krenko .text-btn{color:var(--accent-positive)}.preset-krenko .digit-cell{color:#dcc8c8;text-shadow:0 0 2px #78464859;background:linear-gradient(#221010 0%,#322020 40%,#2a1818 100%);border-color:#120909}.preset-krenko .hype-flash{color:color-mix(in srgb, var(--accent-positive) 82%, #f5ecec);text-shadow:0 0 18px #6e3c4073,0 2px #00000059}.preset-krenko .delta-flash{color:var(--accent-positive)}.preset-krenko .grow-btn{background:var(--accent-positive);border-color:color-mix(in srgb, var(--accent-positive) 70%, #000);box-shadow:0 4px 0 color-mix(in srgb, var(--accent-positive) 50%, #000)}.preset-krenko .grow-btn:active{box-shadow:0 2px 0 color-mix(in srgb, var(--accent-positive) 50%, #000)}.preset-krenko .modal-action-btn:focus-visible,.preset-krenko .modal-icon-btn:focus-visible{outline-color:var(--accent-positive)}.preset-krenko .modal-icon-btn--confirm{border-color:color-mix(in srgb, var(--accent-positive) 72%, #000);background:var(--accent-positive);color:#fff8f6}.preset-krenko .info-sheet__mana{color:#2c1818}.preset-krenko .info-sheet__tab--active{box-shadow:inset 0 -3px 0 var(--accent-positive)}.preset-krenko .info-sheet__rulesLead a,.preset-krenko .sheet__body a{color:var(--accent-positive)}.modal-input{box-sizing:border-box;width:100%;font-family:var(--font-mono);border:2px solid var(--border-strong);border-radius:8px;margin-top:12px;padding:10px 12px;font-size:1rem}.char-tile--lab{background:linear-gradient(165deg, color-mix(in srgb, var(--accent-positive) 26%, #f4fff6) 0%, color-mix(in srgb, var(--surface-panel) 45%, #e6f1e6) 56%, color-mix(in srgb, var(--accent-positive) 22%, #d4e4d5) 100%);color:#102617}.char-tile--lab .char-tile__swatch{background:#4f8960}.char-tile--lab .char-tile__swatchSprite{opacity:.95;width:auto;max-width:none;height:130%;top:58%}.replacement-lab-info__header{align-items:center;gap:8px;padding:10px 12px 10px 14px}.replacement-lab-info__title{font-family:var(--font-pixel);text-transform:lowercase;letter-spacing:.04em;color:var(--ink);margin:0;font-size:clamp(.82rem,3vw,1rem);line-height:1.2}.replacement-lab-info__closeBtn{border-left:none;border-radius:8px;flex:none;width:40px;height:40px;margin-left:auto}.replacement-lab-info__refsHeading{margin-top:2.25em}.replacement-lab{-webkit-overflow-scrolling:touch;min-height:0;padding-bottom:calc(var(--activity-drawer-tab-h) + 12px);flex-direction:column;flex:1;gap:12px;display:flex;overflow-y:auto}.replacement-lab__header{align-items:flex-start;gap:10px;display:flex}.replacement-lab__back,.replacement-lab__info{flex:none;margin-top:2px}.replacement-lab__headerText{flex:auto;min-width:0}.replacement-lab__title{font-family:var(--font-pixel);letter-spacing:.04em;text-transform:lowercase;margin:0;font-size:clamp(1rem,5vw,1.25rem)}.replacement-lab__subtitle{color:var(--ink-muted);margin:6px 0 0;font-size:.82rem;line-height:1.35}.replacement-lab__panel{background:var(--surface-panel);border:2px solid var(--border-strong);border-radius:12px;padding:12px 14px}.replacement-lab__panel--recipe{padding-top:10px;padding-bottom:10px}.replacement-lab__panel--meter{text-align:left}.replacement-lab__meterHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin-bottom:6px;display:flex}.replacement-lab__meterTitle{text-align:left;flex:12rem;min-width:0;margin:0}.replacement-lab__meterToolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.replacement-lab__toolbarBtn{font-family:var(--font-sans);letter-spacing:.04em;text-transform:uppercase;border:2px solid color-mix(in srgb, var(--accent-positive) 42%, #000);background:color-mix(in srgb, var(--accent-positive) 76%, #9ac4a0);color:#122615;cursor:pointer;box-shadow:0 2px 0 color-mix(in srgb, var(--accent-positive) 36%, #000);border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:.78rem;font-weight:900;display:inline-flex}.replacement-lab__toolbarBtn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.replacement-lab__toolbarBtn:not(:disabled):active{box-shadow:0 1px 0 color-mix(in srgb, var(--accent-positive) 36%, #000);transform:translateY(2px)}.replacement-lab__toolbarBtn--optimized{color:#0e2411}.replacement-lab__toolbarBtn--secondary{background:var(--surface-app);min-width:42px;color:var(--ink);border-color:var(--border-strong);box-shadow:0 3px 0 color-mix(in srgb, var(--border-strong) 55%, #000);justify-content:center;align-items:center;padding:8px;display:inline-flex}.replacement-lab__toolbarBtn--secondary:not(:disabled):active{box-shadow:0 1px 0 color-mix(in srgb, var(--border-strong) 55%, #000)}.replacement-lab__h2{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);margin:0 0 8px;font-size:.78rem;font-weight:800}.replacement-lab__hint{color:var(--ink-muted);margin:0 0 10px;font-size:.82rem;line-height:1.35}.replacement-lab__recipeLayout{grid-template-columns:minmax(0,1fr) minmax(100px,clamp(104px,22vw,152px));align-items:center;gap:10px 14px;display:grid}.replacement-lab__recipeMain{flex-direction:column;align-self:start;align-items:flex-start;gap:0;min-width:0;display:flex}.replacement-lab__recipeMain .replacement-lab__h2{margin:0 0 4px}.replacement-lab__recipeHint{margin:0 0 8px}.replacement-lab__recipeAvatar{justify-content:center;place-self:center stretch;align-items:center;width:100%;min-height:0;max-height:clamp(112px,32dvh,196px);margin:0;padding:0;line-height:0;display:flex}.replacement-lab__chatterfangImg{object-fit:contain;object-position:center bottom;width:auto;max-width:100%;height:auto;max-height:clamp(112px,32dvh,196px);image-rendering:crisp-edges;display:block;transform:scaleX(-1)}@media (width<=520px){.replacement-lab__recipeLayout{grid-template-columns:1fr;gap:12px;min-height:0}.replacement-lab__recipeAvatar{max-height:min(152px,40vw);margin-top:2px}.replacement-lab__chatterfangImg{object-position:center;width:min(168px,55vw);height:auto;max-height:min(152px,40vw)}}.replacement-lab__recipeRow{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.replacement-lab__label{color:var(--ink-muted);flex-direction:column;gap:4px;font-size:.75rem;font-weight:700;display:flex}.replacement-lab__select,.replacement-lab__input{font-family:var(--font-mono);border:2px solid var(--border-strong);background:var(--surface-app);color:var(--ink);border-radius:8px;min-width:0;padding:8px 10px;font-size:.95rem}.replacement-lab__select--grow{flex:auto;min-width:0}.replacement-lab__input{width:5.5rem}.replacement-lab__mono{font-family:var(--font-mono);word-break:break-word;font-size:.85rem}.replacement-lab__meterWrap{justify-content:center;margin:8px 0 4px;display:flex}.replacement-lab__totalFootnote{color:var(--ink-muted);text-align:center;margin:8px 0 0;font-size:.85rem;line-height:1.4}.replacement-lab__logRow--seed{border-color:color-mix(in srgb, var(--accent-positive) 46%, var(--border-strong));background:color-mix(in srgb, var(--surface-app) 70%, #eef8ea);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-positive) 22%, transparent)}.replacement-lab__slotList{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.replacement-lab__slotItem{margin:0}.replacement-lab__slotRow{border:2px dashed color-mix(in srgb, var(--border-strong) 70%, transparent);background:color-mix(in srgb, var(--surface-app) 88%, var(--surface-panel));border-radius:10px;align-items:center;gap:8px;padding:8px 10px;display:flex}.replacement-lab__dragHandle{touch-action:none;color:var(--ink-muted);cursor:grab;background:0 0;border:none;border-radius:6px;flex:none;padding:4px 6px;line-height:1}.replacement-lab__dragHandle:active{cursor:grabbing}.replacement-lab__dragGrip{font-family:var(--font-mono);letter-spacing:-.12em;font-weight:800}.replacement-lab__slotIdx{text-align:center;width:1.25rem;font-family:var(--font-mono);color:var(--ink-muted);flex:none;font-size:.85rem;font-weight:800}.replacement-lab__slotActions{flex-direction:row;align-items:center;gap:0;display:flex}.replacement-lab__iconBtn{background:var(--surface-app);width:28px;height:28px;color:var(--ink);cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.replacement-lab__iconBtn:disabled{opacity:.35;cursor:default}.replacement-lab__log{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.replacement-lab__logRow{background:var(--surface-app);border:1px solid var(--border-strong);border-radius:8px;padding:8px 10px}.replacement-lab__logHead{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;font-size:.88rem;display:flex}.replacement-lab__logTitle{flex:12rem;min-width:0;font-weight:800;line-height:1.35}.replacement-lab__logBeforeAfter{flex-direction:column;gap:10px;display:flex}.replacement-lab__logPair{flex-direction:column;gap:4px;display:flex}.replacement-lab__logPairLabel{text-transform:none;letter-spacing:.02em;color:var(--ink-muted);font-size:.72rem;font-weight:800}.replacement-lab__logPairValue{font-family:var(--font-mono);color:var(--ink);word-break:break-word;font-size:.82rem;line-height:1.45}.replacement-lab__badge{text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb, var(--ink-muted) 22%, transparent);color:var(--ink);border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:800}
