@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=JetBrains+Mono:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&display=swap";.game-layout{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--water-bottom)}.game-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;touch-action:none}.game-stage canvas{display:block;width:100%;height:100%}.icon-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--hud-bg);border:.5px solid var(--hud-stroke);color:var(--hud-fg);pointer-events:auto;transition:transform .12s ease,background .12s ease}.icon-button:active{transform:scale(.94);background:#0a2540bf}.icon-button--sm{width:calc(22px * var(--hud-scale));height:calc(22px * var(--hud-scale))}.icon-button--md{width:calc(44px * var(--hud-scale));height:calc(44px * var(--hud-scale))}.icon-button--locked{opacity:.55;border-style:dashed;cursor:not-allowed}.icon-button svg{width:60%;height:60%;display:block}.hud .icon-button{background:transparent;border:none;color:var(--hud-ink);filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5)) drop-shadow(0 0 4px rgba(8,24,40,.45));transition:opacity .14s ease,transform .12s ease,background .14s ease}.hud .icon-button:hover{background:var(--hud-hover)}.hud .icon-button:active{background:var(--hud-press);transform:scale(.92)}.hud .icon-button--locked{opacity:.32;border:none}.hud .icon-button svg{width:64%;height:64%;stroke-width:1.4}.header-bar{display:flex;align-items:center;gap:calc(4px * var(--hud-scale));padding:calc(8px * var(--hud-scale) + var(--safe-top)) calc(12px * var(--hud-scale)) calc(8px * var(--hud-scale)) calc(12px * var(--hud-scale));pointer-events:none}.header-bar>*{pointer-events:auto}.header-bar__progress{flex:1}.menu-dock{display:flex;align-items:center;justify-content:space-around;gap:calc(6px * var(--hud-scale));padding:calc(8px * var(--hud-scale)) calc(28px * var(--hud-scale)) calc(8px * var(--hud-scale) + var(--safe-bottom)) calc(28px * var(--hud-scale));pointer-events:none;position:relative}.menu-dock .icon-button{width:calc(30px * var(--hud-scale));height:calc(30px * var(--hud-scale))}.menu-dock .icon-button svg{width:60%;height:60%}.menu-dock:before{content:"";position:absolute;top:0;left:24%;right:24%;height:1px;background:linear-gradient(90deg,transparent,var(--hud-hairline) 24%,var(--hud-hairline) 76%,transparent);pointer-events:none}.menu-dock>*{pointer-events:auto}.evo-indicator{display:inline-flex;flex-direction:column;align-items:center;gap:calc(5px * var(--hud-scale));padding:calc(4px * var(--hud-scale));background:transparent;border:none;cursor:pointer;pointer-events:auto;color:var(--hud-ink);transition:opacity .14s ease,transform .12s ease}.evo-indicator:hover{opacity:.85}.evo-indicator:active{transform:scale(.95)}.evo-indicator__icon{width:calc(12px * var(--hud-scale));height:calc(12px * var(--hud-scale));color:var(--hud-ink);filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5));transition:color .2s ease,filter .2s ease}.evo-indicator__bars{display:flex;flex-direction:row;align-items:flex-end;gap:calc(2px * var(--hud-scale));height:calc(36px * var(--hud-scale))}.evo-indicator__bar{position:relative;width:calc(3px * var(--hud-scale));height:100%;background:var(--hud-hairline);border-radius:999px;overflow:hidden}.evo-indicator__bar-fill{position:absolute;left:0;right:0;bottom:0;border-radius:999px;transition:height .32s ease;opacity:.85}.evo-indicator__bar--full .evo-indicator__bar-fill{opacity:1;animation:evo-indicator-bar-pulse 1.6s ease-in-out infinite}@keyframes evo-indicator-bar-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.3)}}.evo-indicator--ready .evo-indicator__icon{color:#ffd97a;animation:evo-indicator-ready-pulse 1.6s ease-in-out infinite}@keyframes evo-indicator-ready-pulse{0%,to{filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5)) drop-shadow(0 0 4px rgba(255,217,122,.4))}50%{filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5)) drop-shadow(0 0 10px rgba(255,217,122,.8))}}@media (prefers-reduced-motion: reduce){.evo-indicator__bar--full .evo-indicator__bar-fill,.evo-indicator--ready .evo-indicator__icon{animation:none}}.next-evo{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:calc(4px * var(--hud-scale)) calc(8px * var(--hud-scale));padding:0 calc(14px * var(--hud-scale)) calc(6px * var(--hud-scale));pointer-events:none;max-width:100%}.next-evo>*{pointer-events:auto}.next-evo__icon{width:calc(12px * var(--hud-scale));height:calc(12px * var(--hud-scale));color:var(--hud-ink-soft);flex-shrink:0;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5))}.next-evo__icon--evolve{color:#ffd97a}.next-evo__label{font-family:var(--font-sans);font-size:var(--font-hud-sm);font-weight:500;color:var(--hud-ink);text-shadow:var(--hud-ink-shadow);white-space:nowrap;letter-spacing:.005em}.next-evo__verb{font-weight:600;text-transform:uppercase;font-size:var(--font-hud-xs);letter-spacing:.18em;color:var(--hud-ink-soft);margin-right:calc(2px * var(--hud-scale))}.next-evo__label-muted{color:var(--hud-ink-soft);font-variant-numeric:tabular-nums}.next-evo__dot{width:calc(7px * var(--hud-scale));height:calc(7px * var(--hud-scale));border-radius:999px;background:var(--ne-color);box-shadow:0 0 6px color-mix(in srgb,var(--ne-color) 55%,transparent);flex-shrink:0}.next-evo__dot--small{width:calc(5px * var(--hud-scale));height:calc(5px * var(--hud-scale))}.next-evo__grow{position:relative;display:inline-flex;align-items:center;gap:calc(8px * var(--hud-scale));padding:calc(5px * var(--hud-scale)) calc(11px * var(--hud-scale));border:1px solid var(--hud-hairline);border-radius:999px;background:transparent;color:var(--hud-ink);cursor:pointer;animation:next-evo-grow-pulse 2.2s ease-in-out infinite;transition:transform 90ms ease,border-color .14s ease,background .14s ease}.next-evo__grow:hover{background:#f3faff0a;border-color:color-mix(in srgb,var(--ne-color) 38%,var(--hud-hairline))}.next-evo__grow:active{transform:scale(.97)}.next-evo__cost{display:inline-flex;align-items:center;gap:calc(5px * var(--hud-scale))}.next-evo__cost-num{font-family:var(--font-mono);font-size:var(--font-hud-sm);font-weight:500;color:var(--hud-ink);font-variant-numeric:tabular-nums;letter-spacing:.02em}@keyframes next-evo-grow-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--ne-color) 0%,transparent)}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--ne-color) 12%,transparent)}}.next-evo__bars{display:flex;flex-direction:row;align-items:center;gap:calc(8px * var(--hud-scale));width:min(60vw,calc(200px * var(--hud-scale)));padding:calc(6px * var(--hud-scale)) calc(10px * var(--hud-scale));background:transparent;border:1px solid transparent;border-radius:calc(10px * var(--hud-scale));cursor:pointer;pointer-events:auto;transition:background .14s ease,border-color .14s ease,transform 90ms ease}.next-evo__bars:hover{background:#f3faff0a;border-color:var(--hud-hairline)}.next-evo__bars:active{transform:scale(.98)}.next-evo__bars-icon{width:calc(14px * var(--hud-scale));height:calc(14px * var(--hud-scale));color:var(--hud-ink-soft);flex-shrink:0;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5))}.next-evo__bars-stack{display:flex;flex-direction:column;align-items:stretch;gap:calc(3px * var(--hud-scale));flex:1;min-width:0}.next-evo__bar-row{display:block;width:100%}.next-evo__bar{position:relative;display:block;width:100%;height:calc(3px * var(--hud-scale));background:var(--hud-hairline);border-radius:999px;overflow:hidden}.next-evo__bar-fill{position:absolute;inset:0 auto 0 0;background:var(--ne-color);border-radius:999px;transition:width .32s ease;box-shadow:0 0 4px color-mix(in srgb,var(--ne-color) 35%,transparent)}.next-evo__bar-row--full .next-evo__bar-fill{animation:next-evo-bar-full-pulse 1.6s ease-in-out infinite}@keyframes next-evo-bar-full-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.25)}}.next-evo__evolve{position:relative;display:inline-flex;align-items:center;gap:calc(8px * var(--hud-scale));padding:calc(6px * var(--hud-scale)) calc(12px * var(--hud-scale));border:1px solid rgba(255,217,122,.5);border-radius:999px;background:transparent;color:var(--hud-ink);cursor:pointer;animation:next-evo-evolve-pulse 1.8s ease-in-out infinite;transition:transform 90ms ease,background .14s ease}.next-evo__evolve:hover{background:#ffd97a0f}.next-evo__evolve:active{transform:scale(.97)}.next-evo__burst{width:calc(7px * var(--hud-scale));height:calc(7px * var(--hud-scale));border-radius:999px;background:#ffd97a;box-shadow:0 0 8px #ffd97ab3;flex-shrink:0}@keyframes next-evo-evolve-pulse{0%,to{box-shadow:0 0 #ffd97a00}50%{box-shadow:0 0 0 4px #ffd97a2e}}.claim-cta{position:absolute;top:50%;right:calc(12px * var(--hud-scale));transform:translateY(-50%);pointer-events:none;z-index:11}.ach-claim-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;width:calc(46px * var(--hud-scale));height:calc(46px * var(--hud-scale));border-radius:999px;background:radial-gradient(circle at 50% 42%,#ffffff2e,#0818284d);border:1px solid rgba(255,255,255,.32);color:var(--hud-ink);pointer-events:auto;cursor:pointer;animation:ach-claim-breathe 2.6s ease-in-out infinite;transition:transform 80ms ease;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.ach-claim-badge:active{transform:scale(.92)}.ach-claim-badge__icon{width:58%;height:58%;display:block}@keyframes ach-claim-breathe{0%,to{box-shadow:0 0 5px 1px #ffffff38,0 0 10px 2px #ffffff1f;opacity:.92}50%{box-shadow:0 0 14px 4px #fff9,0 0 26px 9px #ffffff47;opacity:1}}.claim-cta__bubbles{position:absolute;left:0;right:0;top:38%;height:0;pointer-events:none}.claim-cta__bubble{position:absolute;bottom:0;border-radius:999px;background:radial-gradient(circle at 35% 30%,#ffffffe6,#ffffff40 60%,#fff0 72%);border:.5px solid rgba(255,255,255,.5);opacity:0;transform:translate(-50%);animation-name:ach-claim-bubble-rise;animation-duration:var(--rise-dur, 4s);animation-timing-function:ease-in;animation-fill-mode:forwards}@keyframes ach-claim-bubble-rise{0%{transform:translate(-50%) scale(.55);opacity:0}12%{opacity:.85}70%{opacity:.65}to{transform:translate(calc(-50% + var(--drift-x, 0px)),-62vh) scale(1);opacity:0}}@media (prefers-reduced-motion: reduce){.ach-claim-badge{animation:none;opacity:1;box-shadow:0 0 8px 2px #fff6}.claim-cta__bubble{display:none}}.currency-chip{display:inline-flex;align-items:center;gap:calc(5px * var(--hud-scale));padding:0;height:calc(14px * var(--hud-scale));background:transparent;border:none;pointer-events:none;font-family:var(--font-mono);font-size:var(--font-hud-sm);font-weight:500;letter-spacing:.02em;color:var(--hud-ink);text-shadow:var(--hud-ink-shadow)}.currency-chip__icon{display:inline-flex;width:calc(10px * var(--hud-scale));height:calc(10px * var(--hud-scale));align-items:center;justify-content:center;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5))}.currency-chip__icon svg{width:100%;height:100%}.currency-chip__count{line-height:1;font-variant-numeric:tabular-nums}.currency-chip--bumped{animation:currency-chip-bump .48s ease-out}@keyframes currency-chip-bump{0%{transform:translateY(0);color:var(--hud-ink)}35%{transform:translateY(-2px);color:#fff8d6;text-shadow:0 0 8px rgba(255,248,214,.55),0 1px 1.5px rgba(0,0,0,.55)}to{transform:translateY(0);color:var(--hud-ink)}}@media (prefers-reduced-motion: reduce){.currency-chip--bumped{animation:none}}.depth-meter{display:inline-flex;align-items:baseline;gap:calc(5px * var(--hud-scale));padding:0;height:auto;background:transparent;border:none;font-family:var(--font-mono);font-size:var(--font-hud-sm);font-weight:500;letter-spacing:.02em;color:var(--hud-ink);text-shadow:var(--hud-ink-shadow);pointer-events:none}.depth-meter__icon{width:calc(10px * var(--hud-scale));height:calc(10px * var(--hud-scale));opacity:.85;flex-shrink:0;align-self:center;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5))}.depth-meter__value{font-variant-numeric:tabular-nums;display:inline-flex;align-items:baseline;gap:1px;line-height:1}.depth-meter__unit{font-weight:400;opacity:.6;font-size:calc(var(--font-hud-xs));margin-left:1px}.hud{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto 1fr auto auto;grid-template-areas:"topleft   .          topright" "midleft   .          midright" "announce  announce   announce" "footer    footer     footer";padding:calc(8px * var(--hud-scale)) calc(14px * var(--hud-scale)) 0;pointer-events:none;z-index:10}.hud>*{pointer-events:none}.hud__topleft{grid-area:topleft;display:flex;align-items:flex-start;padding-top:var(--safe-top, 0px)}.hud__topright{grid-area:topright;display:flex;align-items:center;gap:calc(8px * var(--hud-scale));padding-top:var(--safe-top, 0px)}.hud__midleft{grid-area:midleft;align-self:start;align-items:flex-start;display:flex;flex-direction:column;gap:calc(8px * var(--hud-scale));margin-top:calc(12px * var(--hud-scale));padding-left:calc(4px * var(--hud-scale))}.hud__effect-rail{display:flex;flex-direction:column;gap:calc(4px * var(--hud-scale));max-width:calc(120px * var(--hud-scale))}.hud__effect-chip{display:inline-flex;align-items:center;height:calc(16px * var(--hud-scale));padding:0 calc(7px * var(--hud-scale));border:.5px solid color-mix(in srgb,#ff8855 44%,var(--hud-hairline));border-radius:calc(8px * var(--hud-scale));background:color-mix(in srgb,#ff8855 14%,var(--hud-bg));color:var(--hud-ink);font-size:var(--font-hud-xs);line-height:1;text-shadow:var(--hud-ink-shadow);white-space:nowrap}.hud__midright{grid-area:midright;align-self:start;margin-top:calc(10px * var(--hud-scale))}.hud__announce{grid-area:announce;display:flex;justify-content:center;align-items:end;margin:0 calc(-14px * var(--hud-scale))}.hud__footer{grid-area:footer;display:flex;justify-content:center;align-items:end;padding-bottom:var(--safe-bottom, 0px);margin:0 calc(-14px * var(--hud-scale))}.hud__bact-dot{display:inline-block;width:100%;height:100%;border-radius:999px;background:radial-gradient(circle at 35% 30%,#ffe9a8,#f5d878 55%,#8a6018);box-shadow:0 0 4px #f5d87880}.almanac-list-row{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:14px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;color:#eaf6ff;font-size:var(--font-lg);text-align:center;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .12s ease}.almanac-list-row:hover{background:#ffffff14;border-color:#ffffff29}.almanac-list-row:active{transform:scale(.99)}.almanac-list-row__icon{width:64px;height:64px;flex-shrink:0;color:#eaf6ffa6;display:inline-flex;align-items:center;justify-content:center}.almanac-list-row__icon svg{width:100%;height:100%}.almanac-list-row__name{font-weight:500;letter-spacing:.01em;line-height:1.2}.almanac-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:4px 2px;touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.almanac-preview-canvas{position:relative;width:100%;aspect-ratio:1 / 1;max-height:280px;border-radius:14px;overflow:hidden;background:linear-gradient(180deg,#14325073,#08182899);border:1px solid rgba(255,255,255,.08)}.almanac-preview-canvas canvas{display:block;width:100%!important;height:100%!important}.almanac-alt-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;font:12px/1.2 monospace;color:#ffdc50d9;transition:background .12s ease}.almanac-alt-row:hover{background:#ffdc500f}.almanac-alt-row--selected{background:#ffdc501a;outline:1px solid rgba(255,220,80,.3)}.almanac-alt-row__toggle{width:22px;height:22px;background:transparent;border:1px solid rgba(255,220,80,.4);border-radius:4px;color:#ffdc50;cursor:pointer;font-size:var(--font-lg);line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0}.almanac-alt-row__toggle:hover{background:#ffdc501a}.almanac-alt-row__id{flex:1}.almanac-tab{width:44px;height:44px;padding:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#eaf6ff80;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:background .12s ease,border-color .12s ease,color .12s ease,transform .12s ease}.almanac-tab:hover{background:#ffffff14;border-color:#ffffff29;color:#eaf6ffb3}.almanac-tab--active{background:#ffffff24;border-color:#b8dceca6;color:#eaf6ff;transform:scale(1.05)}.almanac-icon{display:inline-flex;width:100%;height:100%;align-items:center;justify-content:center}.almanac-icon>svg{width:100%;height:100%;display:block}.almanac-tab-strip{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;white-space:nowrap;gap:8px;padding:8px 4px;scrollbar-width:thin;touch-action:pan-x;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.almanac-tab-strip::-webkit-scrollbar{height:6px}.almanac-tab-strip::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.almanac-detail{display:flex;flex-direction:column;gap:12px}.almanac-detail__name{margin:0;font-size:var(--font-xl);font-weight:600}.almanac-detail__description{margin:0;font-size:var(--font-lg);line-height:1.55;color:#eaf6ffd9}.almanac-detail__stats{margin:0;display:flex;flex-direction:column;gap:6px}.almanac-detail__stat{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:10px;font-size:var(--font-lg)}.almanac-detail__stat dt{color:#eaf6ffa6}.almanac-detail__stat dd{margin:0;font-weight:500}.almanac-detail__alternatives,.almanac-detail__dev-sliders,.almanac-detail__dev-actions{display:flex;flex-direction:column;gap:6px;padding:10px;background:#ffc8320a;border:1px solid rgba(255,200,50,.18);border-radius:10px}.almanac-detail__alternatives h4,.almanac-detail__dev-sliders h4,.almanac-detail__dev-actions h4{margin:0 0 4px;font-size:var(--font-sm);letter-spacing:.08em;text-transform:uppercase;color:#ffdc50b3}.almanac-detail__dev-slider-row{display:flex;flex-direction:column;gap:3px}.almanac-detail__dev-slider-label{display:flex;justify-content:space-between;font-size:var(--font-md);color:#ffdc50a6}.almanac-detail__dev-slider-value{color:#ffdc50;font-weight:500}.almanac-detail__dev-slider-row input[type=range]{width:100%;accent-color:rgba(255,200,50,.9);margin:0}.almanac-detail__dev-action{width:100%;padding:8px 12px;background:#ffdc5014;border:1px solid rgba(255,220,80,.25);border-radius:10px;color:#ffdc50cc;font:12px/1 monospace;cursor:pointer;text-align:center;letter-spacing:.03em}.almanac-detail__dev-action:hover{background:#ffdc5026;color:#ffdc50}.almanac-detail__launch{width:100%;padding:10px 14px;margin-top:4px;background:#78c8ff2e;border:1px solid rgba(120,200,255,.5);border-radius:10px;color:#e6f4ff;font-size:var(--font-lg);font-weight:600;letter-spacing:.04em;cursor:pointer;text-align:center;transition:background .12s ease}.almanac-detail__launch:hover{background:#78c8ff52}.almanac-detail__launch:active{background:#78c8ff73}.almanac{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:stretch;justify-content:center;animation:almanac-fade .18s ease-out}.almanac__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182873;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.almanac__panel{position:relative;width:min(90vw,820px);margin:24px auto;background:#0e24388c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:14px;color:#eaf6ff;overflow:hidden;box-shadow:0 12px 40px #00000059}.almanac__header{display:flex;align-items:center;gap:10px}.almanac__title{flex:1;margin:0;font-size:var(--font-2xl);font-weight:600;letter-spacing:.02em;text-align:left}.almanac__workshop{flex:0 0 auto;background:linear-gradient(180deg,#2f6f93,#1f4a63);color:#eaf6ff;border:1px solid #4f9cc4;border-radius:999px;padding:6px 14px;font-size:var(--font-sm);font-weight:600;cursor:pointer;white-space:nowrap}.almanac__workshop:hover{background:linear-gradient(180deg,#3a83ab,#245874)}.almanac__body{flex:1 1 auto;overflow-y:auto;padding:4px 2px;touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.almanac__dev{display:flex;justify-content:flex-end;padding-top:6px;border-top:1px solid rgba(255,255,255,.08)}.almanac__reset{background:#781e1e8c;color:#ffe6e6;border:1px solid rgba(255,120,120,.35);border-radius:10px;padding:6px 12px;font-size:var(--font-lg);cursor:pointer;transition:background .12s ease}.almanac__reset:hover{background:#962828b3}@keyframes almanac-fade{0%{opacity:0}to{opacity:1}}.lineage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;animation:lineage-fade .18s ease-out}.lineage__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182873;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.lineage__panel{position:relative;width:min(640px,calc(100% - 32px));margin:0 16px calc(80px + var(--safe-bottom, 0px)) 16px;background:#0e24388c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:14px 14px 18px;display:flex;flex-direction:column;gap:12px;color:#eaf6ff;box-shadow:0 12px 40px #00000059;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.lineage__header{display:flex;align-items:center;gap:10px;padding:0 4px}.lineage__title{flex:1;margin:0;font-size:var(--font-xl);font-weight:600;letter-spacing:.02em;text-align:left}.lineage__scroll-wrap{position:relative}.lineage__scroll{display:flex;align-items:flex-start;gap:14px;overflow-x:auto;overflow-y:hidden;padding:8px 40%;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.lineage__scroll::-webkit-scrollbar{display:none}.lineage__edge{position:absolute;top:0;bottom:0;width:56px;pointer-events:none;z-index:1}.lineage__edge--left{left:0;background:linear-gradient(to right,#0e2438f2,#0e243800)}.lineage__edge--right{right:0;background:linear-gradient(to left,#0e2438f2,#0e243800)}.lineage__edge:before{position:absolute;top:50%;font-size:var(--font-2xl);color:#ffffff8c;transform:translateY(-50%)}.lineage__edge--left:before{content:"‹";left:8px}.lineage__edge--right:before{content:"›";right:8px}.lineage__item{flex:0 0 auto;width:72px;display:flex;flex-direction:column;align-items:center;gap:6px;scroll-snap-align:center}.lineage__portrait{width:64px;height:64px;border-radius:50%;background:#0818288c;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.lineage__portrait-svg{width:100%;height:100%;display:block}.lineage__name{font-size:var(--font-xs);font-weight:600;letter-spacing:.02em;text-align:center;color:#eaf6ffd9;line-height:1.2;max-width:80px}.lineage__item--past .lineage__portrait{opacity:.88}.lineage__item--current .lineage__portrait{transform:scale(1.15);border-color:#b8e8f8e6;box-shadow:0 0 0 2px #88d4f059,0 0 18px #88d4f073}.lineage__item--current .lineage__name{color:#d6f0ff}.lineage__item--future .lineage__portrait{border-color:#ffffff0f}.lineage__item--future .lineage__name{color:#eaf6ff73}@keyframes lineage-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.upgrades{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:stretch;justify-content:center;animation:upgrades-fade .18s ease-out}.upgrades__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182873;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.upgrades__panel{position:relative;width:min(90vw,980px);margin:24px auto;background:#0e24388c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px;color:#eaf6ff;overflow:hidden;box-shadow:0 12px 40px #00000059}.upgrades__header{display:flex;align-items:center;gap:10px}.upgrades__title{flex:1;margin:0;font-size:var(--font-2xl);font-weight:600;letter-spacing:.02em;text-align:left}.upgrades__balance{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#c8324a2e;border:.5px solid rgba(200,50,74,.6);color:#f8c7d2;font-size:var(--font-md);font-weight:600}.upgrades__balance-icon{display:inline-flex;width:14px;height:14px;color:#c8324a}.upgrades__balance-icon svg{width:100%;height:100%}.upgrades__balance-count{font-variant-numeric:tabular-nums}.upgrades__list{display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding-right:2px}.upgrades__sublist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px}.upgrade-row{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px}.upgrade-row--bought{animation:upgrade-bought .6s ease-out}@keyframes upgrade-bought{0%{background:#f0c86047;border-color:#f0c860d9;box-shadow:0 0 18px #f0c86059}60%{background:#f0c8601f;border-color:#f0c86073;box-shadow:0 0 10px #f0c8602e}to{background:#ffffff0a;border-color:#ffffff14;box-shadow:none}}@media (prefers-reduced-motion: reduce){.upgrade-row--bought{animation:none}}.upgrade-row__head{display:flex;align-items:center;gap:8px}.upgrade-row__name{flex:1;font-size:var(--font-lg);font-weight:600}.upgrade-row__pips{display:inline-flex;gap:4px}.upgrade-row__pip{width:8px;height:8px;border-radius:50%;border:1px solid rgba(234,246,255,.65)}.upgrade-row__pip--owned{background:#eaf6ff;box-shadow:0 0 6px #eaf6ff73}.upgrade-row__desc{margin:0;font-size:var(--font-md);color:#eaf6ffb8;line-height:1.4}.upgrade-row__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.upgrade-row__meta-text{display:flex;flex-direction:column;min-width:0;flex:1}.upgrade-row__tagline{font-size:var(--font-md);color:#eaf6ffeb;line-height:1.25}.upgrade-row__effect{margin:0;font-size:var(--font-sm);color:#eaf6ff99;font-variant-numeric:tabular-nums;line-height:1.2}.upgrade-row__maxed{font-size:var(--font-sm);font-weight:700;letter-spacing:.08em;color:#f0c860d9}.upgrade-row__buy{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#c8324a38;border:.5px solid rgba(200,50,74,.7);color:#f8c7d2;font-size:var(--font-md);font-weight:700;cursor:pointer;font-variant-numeric:tabular-nums;transition:background .1s ease}.upgrade-row__buy:hover:not(:disabled){background:#c8324a57}.upgrade-row__buy:disabled{opacity:.35;cursor:not-allowed}.upgrade-row__buy--food{background:#50b4782e;border-color:#50c8828c;color:#cdf5d8}.upgrade-row__buy--food:hover:not(:disabled){background:#50b4784d}.upgrade-row__buy--food .upgrade-row__buy-icon{color:#6fd49a}.upgrade-row__buy-kinds{display:inline-flex;align-items:center;gap:2px}.upgrade-row__buy-kind{width:6px;height:6px;border-radius:50%;box-shadow:0 0 4px currentColor}.upgrade-row__tier-kinds{display:inline-flex;align-items:center;gap:2px;margin-left:4px;vertical-align:middle}.upgrade-row__tier-kind{width:5px;height:5px;border-radius:50%}.upgrade-row__buy-icon{display:inline-flex;width:12px;height:12px;color:#c8324a}.upgrade-row__buy-icon svg{width:100%;height:100%}.upgrade-row__buy--bacteria .upgrade-row__buy-icon{color:#f5d878}.upgrade-row__tier-cost{display:inline-flex;align-items:center;gap:4px}.upgrade-row__tier-cost-icon{display:inline-flex;width:10px;height:10px}.upgrade-row__tier-cost-icon svg{width:100%;height:100%}.upgrade-row__tier-cost-icon--coral{color:#c8324ad9}.upgrade-row__tier-cost-icon--bacteria{color:#f5d878}.upgrade-row__details{margin-top:4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:8px}.upgrade-row__tiers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.upgrade-row__tier{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;font-size:var(--font-sm);color:#eaf6ff8c;font-variant-numeric:tabular-nums;padding:2px 0}.upgrade-row__tier--owned{color:#eaf6ffd9}.upgrade-row__tier-num{font-weight:600;color:#f0c860b3}.upgrade-row__tier--owned .upgrade-row__tier-num{color:#f0c860f2}@keyframes upgrades-fade{0%{opacity:0}to{opacity:1}}.upgrades__balances{display:inline-flex;align-items:center;gap:6px}.upgrades__balance--bacteria{background:#f5d87826;border-color:#f5d8788c;color:#f5d878}.upgrades__balance--food{background:#70de3a24;border-color:#70de3a73;color:#cdf5d8}.upgrades__balance-kinds{display:inline-flex;align-items:center;gap:2px}.upgrades__balance-kind{width:6px;height:6px;border-radius:50%;box-shadow:0 0 4px currentColor}.upgrades__tabs{display:flex;gap:4px;padding:4px;border-radius:12px;background:#0000002e;border:.5px solid rgba(255,255,255,.08)}.upgrades__tab{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:6px 8px;border-radius:8px;background:transparent;border:.5px solid transparent;color:#eaf6ffb3;cursor:pointer;pointer-events:auto;transition:background .12s ease,color .12s ease,border-color .12s ease}.upgrades__tab:hover{color:#eaf6ff}.upgrades__tab-label{font-size:var(--font-md);font-weight:600;letter-spacing:.02em;line-height:1}.upgrades__tab-sub{font-size:var(--font-xs);opacity:.6;line-height:1}.upgrades__tab-badge{position:absolute;top:4px;right:6px;min-width:14px;height:14px;padding:0 4px;border-radius:999px;background:#c8324a;color:#fff;font-size:var(--font-xs);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 6px #c8324a80}.upgrades__tab--active{background:#ffffff14;border-color:#ffffff2e;color:#eaf6ff}.upgrades__tab--active.upgrades__tab--bio{background:#f5d87829;border-color:#f5d8788c}.upgrades__tab--active.upgrades__tab--coral{background:#c8324a29;border-color:#c8324a8c}.upgrades__tab--active.upgrades__tab--run{background:#70de3a29;border-color:#70de3a8c}.upgrades__sublist{display:flex;flex-direction:column;gap:6px;margin-top:8px}.upgrades__sublist-title{margin:4px 0 2px;font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.1em;font-weight:600;opacity:.55;color:#eaf6ffd9}.upgrades__list--bio .upgrades__sublist-title{color:#f5d878d9}.upgrades__list--coral .upgrades__sublist-title{color:#f8c7d2d9}.upgrades__list--run .upgrades__sublist-title{color:#b8e8ffd9}.upgrade-row__lock-pill{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-xs);padding:2px 8px;border-radius:999px;background:#ffffff14;border:.5px solid rgba(255,255,255,.18);color:#eaf6ffa6;letter-spacing:.04em;font-weight:600}.upgrade-row__lock-icon{width:11px;height:11px;flex-shrink:0}.upgrade-row__lock-icon svg{width:100%;height:100%}.upgrade-row__lock-num{font-variant-numeric:tabular-nums}.upgrade-row--phase-locked{opacity:.45}.upgrade-row__pip--gated{opacity:.25;box-shadow:inset 0 0 0 1px #ffffff1a}.upgrade-row__tier--gated{opacity:.45}.upgrade-row__buy--bacteria{background:#f5d8782e;border-color:#f5d8788c;color:#f5d878}.upgrade-row__buy--bacteria:hover:not(:disabled){background:#f5d87847}.dashboard{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;animation:dashboard-fade .18s ease-out}.dashboard__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182873;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.dashboard__panel{position:relative;width:min(640px,calc(100% - 32px));max-height:min(72vh,720px);margin:0 16px calc(80px + var(--safe-bottom, 0px)) 16px;background:#0e24388c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:14px 14px 18px;display:flex;flex-direction:column;gap:12px;color:#eaf6ff;box-shadow:0 12px 40px #00000059;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.dashboard__header{display:flex;align-items:center;gap:10px;padding:0 4px}.dashboard__title{flex:1;margin:0;font-size:var(--font-xl);font-weight:600;letter-spacing:.02em;text-align:left}.dashboard__scroll{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow-y:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding:2px}.dashboard__section{background:#08182866;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px 12px 12px}.dashboard__section-title{margin:0 0 8px;font-size:var(--font-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#b8e8f8bf}.dashboard__rows{margin:0;display:flex;flex-direction:column;gap:6px}.dashboard__row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.dashboard__label{display:flex;align-items:center;gap:7px;margin:0;font-size:var(--font-sm);color:#eaf6ffd1;min-width:0}.dashboard__dot{flex:0 0 auto;width:9px;height:9px;border-radius:50%;box-shadow:0 0 6px currentColor}.dashboard__value{margin:0;font-size:var(--font-sm);font-weight:700;font-variant-numeric:tabular-nums;color:#eaf6ff;white-space:nowrap}@media (max-width: 460px){.dashboard__scroll{grid-template-columns:minmax(0,1fr)}}@keyframes dashboard-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fps-graph{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.fps-graph__header{display:flex;align-items:center;gap:8px;font-size:var(--font-md)}.fps-graph__eye{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin:-4px 0;padding:0;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#eaf6ff;opacity:.55;cursor:pointer;transition:opacity .12s ease,background .12s ease,border-color .12s ease,color .12s ease}.fps-graph__eye:hover{opacity:.95;background:#ffffff0f}.fps-graph__eye--on{opacity:1;color:#b8e0ff;background:#50b4ff2e;border-color:#78c8ff8c}.fps-graph__title{flex:1;font-weight:600;opacity:.75}.fps-graph__instant{font-weight:600;color:#b8e0ff;font-variant-numeric:tabular-nums}.fps-graph__plot{position:relative;height:80px;padding-right:26px}.fps-graph__svg{width:100%;height:100%;display:block;overflow:visible}.fps-graph__grid{stroke:#ffffff14;stroke-width:1;stroke-dasharray:2 3;vector-effect:non-scaling-stroke}.fps-graph__line{fill:none;stroke:#7ac8ff;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px rgba(122,200,255,.35))}.fps-graph__y-labels{position:absolute;top:0;right:0;bottom:0;width:24px;pointer-events:none}.fps-graph__y-label{position:absolute;right:0;transform:translateY(-50%);font-size:var(--font-xs);opacity:.45;font-variant-numeric:tabular-nums;line-height:1}.fps-graph__footer{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:var(--font-xs);opacity:.55}.fps-graph__latest{opacity:1;color:#b8e0ff;font-variant-numeric:tabular-nums}.settings{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:stretch;justify-content:center;animation:settings-fade .18s ease-out}.settings__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182873;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.settings__panel{position:relative;width:min(520px,100%);margin:calc(24px + var(--safe-top, 0px)) 16px calc(24px + var(--safe-bottom, 0px)) 16px;background:#0e24388c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:14px;color:#eaf6ff;overflow:hidden;min-height:0;box-shadow:0 12px 40px #00000059}.settings__scroll{display:flex;flex-direction:column;gap:14px;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;margin:0 -6px;padding:0 6px 4px}.settings__header{display:flex;align-items:center;gap:10px}.settings__title{flex:1;margin:0;font-size:var(--font-2xl);font-weight:600;letter-spacing:.02em}.settings__tabs{display:flex;align-items:stretch;gap:4px;border-bottom:1px solid rgba(255,255,255,.08);padding:0 4px;margin:0 -4px}.settings__tab{flex:1;padding:10px 12px;background:transparent;border:none;color:#eaf6ff8c;font-family:inherit;font-size:var(--font-md);font-weight:500;letter-spacing:.02em;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .14s ease,border-color .14s ease}.settings__tab:hover{color:#eaf6ffd9}.settings__tab--active{color:#eaf6ff;border-bottom-color:#f0c860d9}.settings__section{display:flex;flex-direction:column;gap:8px}.settings__section-title{margin:0;font-size:var(--font-lg);font-weight:600;opacity:.85}.settings__hint{margin:0;font-size:var(--font-md);opacity:.6}.settings__choices{display:flex;flex-direction:column;gap:6px}.settings__choice{display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:#ffffff0d;color:inherit;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.settings__choice:hover{background:#ffffff1a}.settings__choice--active{background:#50b4ff33;border-color:#78c8ff99}.settings__choice-label{font-weight:600}.settings__choice-hint{font-size:var(--font-md);opacity:.7}.settings__reload{background:#50b4ff33;color:#d8f0ff;border:1px solid rgba(120,200,255,.6);border-radius:10px;padding:8px 12px;font-size:var(--font-lg);cursor:pointer;margin-top:4px;transition:background .12s ease}.settings__reload:hover{background:#64c8ff4d}.settings__toggle{display:flex;align-items:flex-start;gap:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;cursor:pointer}.settings__toggle input[type=checkbox]{flex-shrink:0;margin-top:3px;width:18px;height:18px;accent-color:#7ac8ff;cursor:pointer}.settings__toggle-body{display:flex;flex-direction:column;gap:2px}.settings__toggle-label{font-weight:600}.settings__toggle-hint{font-size:var(--font-md);opacity:.7}.settings__slider{display:flex;flex-direction:column;gap:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px}.settings__slider-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.settings__slider-label{font-weight:600}.settings__slider-value{font-size:var(--font-md);font-variant-numeric:tabular-nums;opacity:.85}.settings__slider input[type=range]{width:100%;accent-color:#7ac8ff;cursor:pointer}.settings__slider .settings__hint{margin:0}.settings__dev-rows{display:flex;flex-direction:column;gap:4px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px}.settings__dev-row{display:flex;align-items:center;gap:8px;font-size:var(--font-md)}.settings__dev-row-label{width:28px;opacity:.75;font-variant-numeric:tabular-nums}.settings__dev-row-label--wide{width:56px}.settings__dev-row-value{width:56px;text-align:right;opacity:.85;font-variant-numeric:tabular-nums}.settings__dev-row-value--wide{width:88px}.settings__dev-slider{flex:1;accent-color:#7ac8ff;cursor:pointer}.settings__dev-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.settings__dev-chips-label{font-size:var(--font-md);opacity:.7;margin-right:2px}.settings__dev-chip{min-width:32px;background:#ffffff0d;color:inherit;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:4px 10px;font-size:var(--font-md);cursor:pointer;transition:background .12s ease,border-color .12s ease}.settings__dev-chip:hover{background:#ffffff1a}.settings__dev-chip--active{background:#50b4ff40;border-color:#78c8ff99;color:#d8f0ff}.settings__dev-actions{display:flex;gap:6px;flex-wrap:wrap}.settings__dev-actions--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.settings__dev-action{background:#ffffff0d;color:inherit;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:6px 12px;font-size:var(--font-md);cursor:pointer;transition:background .12s ease}.settings__dev-action:hover{background:#ffffff1a}.settings__dev-action--primary{background:#50b4ff40;border-color:#78c8ff99;color:#d8f0ff}.settings__dev-action--primary:hover{background:#64c8ff59}.settings__dev-action--danger{background:#ef444440;border-color:#f8717199;color:#ffe2e2}.settings__dev-action--danger:hover{background:#ef444466}.settings__dev-stats{font-family:ui-monospace,monospace;font-size:var(--font-sm);line-height:1.5;background:#00000040;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 10px;opacity:.85}@keyframes settings-fade{0%{opacity:0}to{opacity:1}}.release-log{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:stretch;justify-content:center;animation:release-log-fade .18s ease-out}.release-log__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182873;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.release-log__panel{position:relative;width:min(560px,100%);margin:24px 16px;max-height:calc(100dvh - 48px);background:#0e24388c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px;color:#eaf6ff;min-height:0;box-shadow:0 12px 40px #00000059}.release-log__header{display:flex;align-items:center;gap:10px;flex-shrink:0}.release-log__title{flex:1;margin:0;font-size:var(--font-2xl);font-weight:600;letter-spacing:.02em}.release-log__filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;flex-shrink:0}.release-log__chip{--tag-h: 210;--tag-s: 60%;font-size:var(--font-sm);font-weight:600;letter-spacing:.04em;padding:4px 10px;background:transparent;border:1px solid hsla(var(--tag-h),var(--tag-s),65%,.25);border-radius:999px;color:hsla(var(--tag-h),var(--tag-s),82%,.85);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.release-log__chip:hover{background:hsla(var(--tag-h),var(--tag-s),55%,.12);color:hsla(var(--tag-h),var(--tag-s),90%,1)}.release-log__chip--active{background:hsla(var(--tag-h),var(--tag-s),55%,.28);border-color:hsla(var(--tag-h),var(--tag-s),70%,.7);color:hsla(var(--tag-h),var(--tag-s),92%,1)}.release-log__clear{font-size:var(--font-sm);padding:4px 8px;background:transparent;border:none;color:#b8e0ff;text-decoration:underline;text-underline-offset:2px;cursor:pointer;opacity:.85}.release-log__clear:hover{opacity:1}.release-log__empty{margin:0;font-size:var(--font-lg);opacity:.65}.release-log__entries{list-style:none;margin:0;padding:2px 4px 4px 0;display:flex;flex-direction:column;gap:8px;flex:1 1 0;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.release-log__entries::-webkit-scrollbar{width:6px}.release-log__entries::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}.release-log__entry{flex-shrink:0;display:flex;flex-direction:column;gap:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px}.release-log__entry-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.release-log__entry-title{margin:0;font-size:var(--font-lg);font-weight:600;letter-spacing:.01em;flex:1 1 auto;min-width:0}.release-log__entry-date{font-size:var(--font-sm);opacity:.55;font-variant-numeric:tabular-nums;flex-shrink:0;white-space:nowrap}.release-log__entry-description{margin:0;font-size:var(--font-lg);line-height:1.55;opacity:.85}.release-log__entry-tags{display:flex;flex-wrap:wrap;gap:4px}.release-log__tag{--tag-h: 210;--tag-s: 60%;font-size:var(--font-xs);font-weight:600;letter-spacing:.05em;padding:2px 7px;border-radius:999px;background:hsla(var(--tag-h),var(--tag-s),50%,.2);border:1px solid hsla(var(--tag-h),var(--tag-s),65%,.5);color:hsla(var(--tag-h),var(--tag-s),88%,1)}.release-log__chip--feat,.release-log__tag--feat{--tag-h: 210;--tag-s: 75%}.release-log__chip--fix,.release-log__tag--fix{--tag-h: 25;--tag-s: 85%}.release-log__chip--perf,.release-log__tag--perf{--tag-h: 140;--tag-s: 60%}.release-log__chip--ui,.release-log__tag--ui{--tag-h: 285;--tag-s: 55%}.release-log__chip--balance,.release-log__tag--balance{--tag-h: 45;--tag-s: 80%}.release-log__chip--content,.release-log__tag--content{--tag-h: 175;--tag-s: 65%}.release-log__chip--docs,.release-log__tag--docs{--tag-h: 220;--tag-s: 15%}.release-log__chip--refactor,.release-log__tag--refactor{--tag-h: 320;--tag-s: 55%}.release-log__chip--build,.release-log__tag--build{--tag-h: 30;--tag-s: 30%}@keyframes release-log-fade{0%{opacity:0}to{opacity:1}}.fps-counter{position:fixed;top:calc(env(safe-area-inset-top,0px) + 6px);right:calc(env(safe-area-inset-right,0px) + 10px);z-index:50;pointer-events:none;-webkit-user-select:none;user-select:none;font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.02em;color:#fff;mix-blend-mode:difference}.achievements{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:stretch;justify-content:center;animation:achievements-fade .18s ease-out}.achievements__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182873;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.achievements__panel{position:relative;width:min(90vw,1040px);margin:calc(40px + var(--safe-top, 0px)) auto calc(80px + var(--safe-bottom, 0px));background:#0e24388c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:14px 14px 18px;display:flex;flex-direction:column;gap:10px;color:#eaf6ff;box-shadow:0 12px 40px #00000059;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);min-height:0}.achievements__header{display:flex;align-items:center;gap:10px;padding:0 4px}.achievements__title{flex:1;margin:0;font-size:var(--font-xl);font-weight:600;letter-spacing:.02em}.achievements__title-count{color:#eaf6ff80;font-weight:500;font-size:var(--font-lg)}.achievements__filters{display:flex;flex-wrap:wrap;gap:6px;padding:0 4px}.achievements__filter{background:#b8dcec0f;border:1px solid rgba(184,220,236,.15);color:#eaf6ffb3;border-radius:999px;padding:4px 12px;font-size:var(--font-sm);font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;pointer-events:auto}.achievements__filter:hover{background:#b8dcec1f;border-color:#b8dcec4d;color:#eaf6ff}.achievements__filter--active{background:#b8e8f82e;border-color:#b8e8f88c;color:#eaf6ff}.achievements__scroll{overflow-y:auto;display:flex;flex-direction:column;gap:16px;padding:4px 4px 8px;scrollbar-width:thin}.achievements__section-title{margin:0 0 6px;font-size:var(--font-sm);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#eaf6ff99}.achievements__section-count{color:#eaf6ff66;letter-spacing:.02em}.achievements__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px}.achievements__row{position:relative;padding:10px 12px;background:#08182880;border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;flex-direction:column;gap:6px}.achievements__row--unlocked{border-color:#b8e8f859}.achievements__row--locked{opacity:.55}.achievements__row--hidden-revealed{border-color:#e896f566}.achievements__row--new{border-color:#f5d878a6;box-shadow:0 0 0 1px #f5d87833,0 0 18px #f5d8782e;animation:achievements-new-pulse 2.4s ease-out}.achievements__row-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.achievements__name{font-size:var(--font-lg);font-weight:600;display:inline-flex;align-items:center;gap:6px}.achievements__new-badge{font-size:var(--font-xs);font-weight:700;letter-spacing:.08em;padding:1px 5px;border-radius:3px;background:#f5d87840;color:#ffe9a3;border:1px solid rgba(245,216,120,.4)}.achievements__hidden-tag{font-size:var(--font-xs);font-weight:600;letter-spacing:.06em;padding:1px 5px;border-radius:3px;background:#e896f52e;color:#f7d2ffd9;border:1px solid rgba(232,150,245,.35);text-transform:uppercase}.achievements__reward{font-size:var(--font-sm);font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.achievements__reward-icon{display:inline-block}.achievements__reward-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.achievements__desc{font-size:var(--font-sm);color:#eaf6ffb3;line-height:1.3}.achievements__progress{position:relative;height:20px;background:#081828b3;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center}.achievements__progress-fill{position:absolute;inset:0 auto 0 0;width:0;transition:width .25s ease-out;opacity:.55}.achievements__progress-label{position:relative;font-size:var(--font-xs);font-weight:600;line-height:1;letter-spacing:.04em;color:#eaf6ff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.achievements__empty{text-align:center;font-size:var(--font-md);color:#eaf6ff8c;padding:24px 0}.achievements__row-dev{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;padding-top:6px;border-top:1px dashed rgba(255,255,255,.08)}.achievements__row-dev>button,.achievements__dev-bar>button{display:inline-flex;align-items:center;gap:4px;background:#b8dcec14;border:1px solid rgba(184,220,236,.2);color:#eaf6ffd9;border-radius:6px;padding:4px 10px;font-size:var(--font-sm);font-weight:500;cursor:pointer;pointer-events:auto}.achievements__dev-icon{width:12px;height:12px}.achievements__row-dev>button:hover,.achievements__dev-bar>button:hover{background:#b8dcec2e;border-color:#b8dcec66}.achievements__dev-bar{display:flex;gap:8px;justify-content:flex-end;padding:4px 4px 0;border-top:1px solid rgba(255,255,255,.08)}@keyframes achievements-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes achievements-new-pulse{0%{box-shadow:0 0 0 1px #f5d87880,0 0 28px #f5d8788c}to{box-shadow:0 0 0 1px #f5d87833,0 0 18px #f5d8782e}}@media (prefers-reduced-motion: reduce){.achievements,.achievements__progress-fill,.achievements__filter{animation:none!important;transition:none!important}.achievements__row--new{animation:none!important}}.achievement-toast-host{position:absolute;top:calc(56px * var(--hud-scale) + var(--safe-top, 0px));right:calc(18px * var(--hud-scale));display:flex;flex-direction:column;gap:calc(8px * var(--hud-scale));pointer-events:none;z-index:20;max-width:min(320px,70vw)}.achievement-toast{display:flex;align-items:center;gap:calc(10px * var(--hud-scale));padding:calc(10px * var(--hud-scale)) calc(14px * var(--hud-scale));background:#0a1c30eb;border:.5px solid var(--hud-stroke, rgba(184, 220, 236, .4));border-left:3px solid currentColor;border-radius:8px;color:#e6f0fa;box-shadow:0 4px 14px #00000073;animation:achievement-toast-in .28s ease-out,achievement-toast-out .36s ease-in 3.64s forwards;pointer-events:auto}.achievement-toast__badge{width:calc(18px * var(--hud-scale));height:calc(18px * var(--hud-scale));line-height:1;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.achievement-toast__badge svg{width:100%;height:100%}.achievement-toast__body{display:flex;flex-direction:column;gap:2px;font-size:var(--font-hud-lg);min-width:0}.achievement-toast__title{font-weight:600}.achievement-toast__desc{opacity:.75;font-size:var(--font-hud-md)}.achievement-toast__reward{font-size:var(--font-hud-md);font-weight:600;margin-top:2px;display:inline-flex;align-items:center;gap:4px}.achievement-toast__reward-icon{display:inline-block}.achievement-toast__reward-dot{width:calc(8px * var(--hud-scale));height:calc(8px * var(--hud-scale));border-radius:50%;display:inline-block}@keyframes achievement-toast-in{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes achievement-toast-out{0%{transform:translate(0);opacity:1}to{transform:translate(20px);opacity:0}}@media (prefers-reduced-motion: reduce){.achievement-toast{animation:achievement-toast-fade-in .01s linear,achievement-toast-fade-out .01s linear 3.99s forwards}}@keyframes achievement-toast-fade-in{0%{opacity:0}to{opacity:1}}@keyframes achievement-toast-fade-out{0%{opacity:1}to{opacity:0}}.rare-event-toast-host{position:absolute;top:calc(56px * var(--hud-scale) + var(--safe-top, 0px));left:calc(18px * var(--hud-scale));display:flex;flex-direction:column;gap:calc(8px * var(--hud-scale));max-width:min(330px,72vw);pointer-events:none;z-index:20}.rare-event-toast{padding:calc(10px * var(--hud-scale)) calc(13px * var(--hud-scale));border:.5px solid rgba(142,220,255,.38);border-left:3px solid rgba(142,220,255,.72);border-radius:8px;background:#061823e6;color:#e6f5fb;box-shadow:0 4px 14px #00000059;animation:rare-event-toast-in .24s ease-out,rare-event-toast-out .32s ease-in 3.28s forwards}.rare-event-toast__eyebrow{font:600 var(--font-hud-sm) / 1.1 "JetBrains Mono",monospace;text-transform:uppercase;color:#8edcff;opacity:.82}.rare-event-toast__title{margin-top:4px;font:700 var(--font-hud-lg) / 1.15 "DM Sans",sans-serif}.rare-event-toast__line{margin-top:3px;font-size:var(--font-hud-md);opacity:.76}@keyframes rare-event-toast-in{0%{transform:translate(-18px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes rare-event-toast-out{0%{transform:translate(0);opacity:1}to{transform:translate(-18px);opacity:0}}.impossible-trace{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center}.impossible-trace__scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#00080e94}.impossible-trace__panel{position:relative;width:min(420px,calc(100vw - 32px));border:1px solid rgba(142,220,255,.5);border-radius:6px;background:#020812f0;color:#dff6ff;padding:18px;box-shadow:0 16px 50px #0000007a}.impossible-trace__topline{font:700 13px/1.2 JetBrains Mono,monospace;color:#8edcff}.impossible-trace__grid{margin-top:18px;display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;font:13px/1.35 JetBrains Mono,monospace}.impossible-trace__grid span{color:#dff6ff8c}.impossible-trace__grid strong{color:#eaf9ff}.impossible-trace__close{margin-top:20px;width:100%;border:1px solid rgba(142,220,255,.45);border-radius:6px;padding:9px 12px;background:#8edcff1f;color:#dff6ff;font:700 13px/1 DM Sans,sans-serif}.cell-preview-canvas{width:180px;height:180px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:radial-gradient(ellipse at center,rgba(40,80,120,.35) 0%,rgba(8,24,40,.05) 70%,transparent 100%)}.cell-preview-canvas canvas{display:block;width:180px;height:180px}.cell-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;animation:cell-gate-fade .22s ease-out}.cell-gate__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#081c32a6,#040e1ceb);backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}.cell-gate__panel{position:relative;width:min(440px,calc(100% - 32px));padding:22px 22px 18px;background:#0e2438b8;border:1px solid rgba(184,220,236,.35);border-radius:22px;display:flex;flex-direction:column;align-items:center;gap:14px;color:#eaf6ff;box-shadow:0 16px 60px #00000080,inset 0 1px #ffffff14}.cell-gate__title-icon{display:inline-flex;width:36px;height:36px;color:#a890ff;filter:drop-shadow(0 0 12px rgba(168,144,255,.55))}.cell-gate__title-icon svg{width:100%;height:100%}.cell-gate__title{margin:0;font-size:var(--font-2xl);font-weight:700;letter-spacing:.02em;text-align:center}.cell-gate__blurb{margin:0;font-size:var(--font-md);color:#eaf6ffc7;line-height:1.45;text-align:center}.cell-gate__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;width:100%}.cell-gate__card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;border-radius:14px;background:#ffffff0a;border:2px solid rgba(255,255,255,.08);color:inherit;cursor:pointer;transition:transform .1s ease,border-color .1s ease,background .1s ease}.cell-gate__card:hover{background:#ffffff12;transform:translateY(-1px)}.cell-gate__card--selected{border-color:#f0c860f2;background:#f0c86024}.cell-gate__swatches{display:flex;gap:6px}.cell-gate__swatch{width:24px;height:24px;border-radius:8px;border:1px solid rgba(0,0,0,.25);box-shadow:0 1px 3px #0000004d}.cell-gate__name{font-size:var(--font-md);font-weight:600}.cell-gate__name--die{display:inline-flex;align-items:center;gap:5px}.cell-gate__die-icon{display:inline-flex;width:15px;height:15px}.cell-gate__die-icon svg{width:100%;height:100%}.cell-gate__begin{width:100%;margin-top:4px;padding:13px 14px;border-radius:14px;background:linear-gradient(180deg,#f0c860f2,#c8963cf2);border:1px solid rgba(240,200,96,.9);color:#1a1208;font-size:var(--font-lg);font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:filter .12s ease,transform 80ms ease}.cell-gate__begin:hover{filter:brightness(1.06)}.cell-gate__begin:active{transform:scale(.98)}@keyframes cell-gate-fade{0%{opacity:0}to{opacity:1}}.cork{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:stretch;justify-content:center;animation:cork-fade .18s ease-out}.cork__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0818288c;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.cork__panel{position:relative;width:min(560px,100%);margin:24px 16px;background:#0e2438a6;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px;color:#eaf6ff;box-shadow:0 14px 48px #0006;max-height:calc(100vh - 48px);overflow:auto}.cork__header{display:flex;align-items:center;gap:10px}.cork__title-icon{display:inline-flex;width:22px;height:22px;color:#a890ff}.cork__title-icon svg{width:100%;height:100%}.cork__title{flex:1;margin:0;font-size:var(--font-xl);font-weight:700}.cork__bars{display:flex;flex-direction:column;gap:10px}.cork__bar-row{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.cork__bar-row--full{border-color:#ffffff24}.cork__bar-main{display:grid;grid-template-columns:90px 1fr 80px;gap:10px;align-items:center}.cork__bar-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.cork__action{--action-color: rgba(184, 232, 248, .75);display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--action-color) 14%,transparent);border:1px solid color-mix(in srgb,var(--action-color) 55%,transparent);color:#eaf6ff;font-size:var(--font-sm);font-weight:700;letter-spacing:.02em;font-variant-numeric:tabular-nums;cursor:pointer;transition:filter .1s ease,background .1s ease}.cork__action:hover:not(:disabled){filter:brightness(1.12);background:color-mix(in srgb,var(--action-color) 22%,transparent)}.cork__action:disabled{opacity:.35;cursor:not-allowed}.cork__action-cost{color:#ffdcdcd9}.cork__action-arrow{opacity:.5;font-weight:500}.cork__action-gain{color:var(--action-color)}.cork__action--grow.cork__action--ready{background:color-mix(in srgb,var(--action-color) 28%,transparent);border-color:color-mix(in srgb,var(--action-color) 85%,transparent);box-shadow:0 0 12px color-mix(in srgb,var(--action-color) 35%,transparent);animation:cork-action-ready 1.6s ease-in-out infinite}.cork__action--grow .cork__action-gain{font-weight:800;letter-spacing:.04em}@keyframes cork-action-ready{0%,to{filter:brightness(1)}50%{filter:brightness(1.18)}}@media (prefers-reduced-motion: reduce){.cork__action--ready{animation:none}}.cork__bar-label{font-size:var(--font-sm);color:#eaf6ffd9}.cork__bar{position:relative;height:10px;background:#ffffff14;border-radius:999px;overflow:hidden}.cork__bar-fill{height:100%;transition:width .24s ease,filter .12s ease;box-shadow:0 0 6px currentColor}.cork__bar-fill--bumped{animation:cork-bar-bump .36s ease-out}@keyframes cork-bar-bump{0%{filter:brightness(1);box-shadow:0 0 6px currentColor}35%{filter:brightness(1.55);box-shadow:0 0 14px currentColor}to{filter:brightness(1);box-shadow:0 0 6px currentColor}}@media (prefers-reduced-motion: reduce){.cork__bar-fill--bumped{animation:none}}.cork__section{display:flex;flex-direction:column;gap:10px;padding:14px;background:#f3faff08;border:1px solid rgba(243,250,255,.08);border-radius:14px}.cork__section-title{margin:0;font-family:var(--font-sans);font-size:var(--font-xs);font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:#eaf6ff8c}.cork__section--stages .cork__section-title{text-align:center}.cork__stages{display:flex;align-items:center;justify-content:center;gap:14px;padding:2px 0}.cork__stage{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.cork__stage-eyebrow{font-size:var(--font-xs);font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:#eaf6ff8c}.cork__stage--next .cork__stage-eyebrow{color:#ffd97ad9}.cork__stage-portrait{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#f3faff0a;border:1px solid rgba(243,250,255,.12);border-radius:14px;overflow:hidden}.cork__stage-portrait--next{border-color:#ffd97a73;background:#ffd97a0f}.cork__stage-portrait svg{width:100%;height:100%;display:block}.cork__stage-name{font-size:var(--font-sm);font-weight:500;color:#eaf6ffd9;text-align:center;max-width:120px;line-height:1.2}.cork__stage-arrow{font-size:var(--font-xl);color:#eaf6ff66;line-height:1;margin-top:18px}.cork__bar-cap-mark{position:absolute;top:-2px;bottom:-2px;width:2px;margin-left:-1px;background:#ffffff73;pointer-events:none;border-radius:1px}.cork__bar-threshold{position:absolute;top:50%;margin-left:calc(-1 * (var(--font-lg) / 2));transform:translateY(-50%);width:var(--font-lg);height:var(--font-lg);display:inline-flex;align-items:center;justify-content:center;pointer-events:none;color:#ffffff8c;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));transition:color .2s ease}.cork__bar-threshold-icon{width:100%;height:100%}.cork__bar-threshold--reached{color:#ffd97a;animation:cork-bar-threshold-pulse 1.4s ease-in-out infinite}@keyframes cork-bar-threshold-pulse{0%,to{filter:drop-shadow(0 1px 2px rgba(0,0,0,.5)) drop-shadow(0 0 4px rgba(255,217,122,.4))}50%{filter:drop-shadow(0 1px 2px rgba(0,0,0,.5)) drop-shadow(0 0 8px rgba(255,217,122,.75))}}.cork__bar-count{text-align:right;font-size:var(--font-sm);font-variant-numeric:tabular-nums;color:#eaf6ffd9;display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.cork__bar-warn{display:inline-flex;align-items:center;justify-content:center;min-width:calc(var(--font-md) * 1.4);height:calc(var(--font-md) * 1.4);padding:0 4px;border-radius:999px;background:#dc3c50f2;border:1px solid rgba(255,180,190,.85);color:#fff;font-size:var(--font-sm);font-weight:800;line-height:1;letter-spacing:0;box-shadow:0 0 8px #dc3c508c;animation:cork-warn-pulse 1.6s ease-in-out infinite}.cork__bar-row--full .cork__bar-count{color:#ffd6dc}.cork__bar-row--empty .cork__bar-label{opacity:.55}@keyframes cork-warn-pulse{0%,to{transform:scale(1);box-shadow:0 0 8px #dc3c508c}50%{transform:scale(1.08);box-shadow:0 0 12px #dc3c50d9}}.cork__hint{margin:0;font-size:var(--font-md);color:#eaf6ffb3;line-height:1.4}.cork__picker{display:flex;flex-direction:column;gap:8px}.cork__picker-title{font-size:var(--font-sm);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#eaf6ffbf}.cork__picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.cork__picker-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border-radius:12px;background:#ffffff0a;border:1.5px solid rgba(255,255,255,.08);color:inherit;cursor:pointer;transition:border-color .1s ease,background .1s ease}.cork__picker-card:hover{background:#ffffff0f}.cork__picker-card--selected{border-color:#f0c860e6;background:#f0c8601f}.cork__picker-swatches{display:flex;gap:4px}.cork__picker-swatch{width:20px;height:20px;border-radius:6px;border:1px solid rgba(0,0,0,.25);box-shadow:0 1px 3px #0000004d}.cork__picker-name{font-size:var(--font-sm);font-weight:600}.cork__evolve{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 14px;border-radius:12px;background:linear-gradient(180deg,#f0c860f2,#c8963cf2);border:1px solid rgba(240,200,96,.9);color:#1a1208;font-size:var(--font-lg);font-weight:700;letter-spacing:.04em;cursor:pointer;transition:filter .12s ease}.cork__evolve-icon{width:var(--font-xl);height:var(--font-xl);flex-shrink:0}.cork__evolve:hover{filter:brightness(1.06)}@keyframes cork-fade{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.cork__warn-runwipe{margin:0;padding:8px 12px;border-radius:10px;background:#f5d87814;border:.5px solid rgba(245,216,120,.35);color:#eaf6ffd9;font-size:var(--font-sm);line-height:1.35}.cork__warn-icon{width:12px;height:12px;margin-right:6px;color:#f5d878;vertical-align:-2px}.cork__warn-runwipe strong{color:#f5d878;font-weight:600}.ach-claim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:stretch;justify-content:center;animation:ach-claim-fade .18s ease-out}.ach-claim__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0818288c;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.ach-claim__panel{position:relative;width:min(480px,100%);margin:24px 16px;background:#0e2438a6;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px;color:#eaf6ff;box-shadow:0 14px 48px #0006;max-height:calc(100vh - 48px);overflow:hidden}.ach-claim__header{display:flex;align-items:center;gap:10px}.ach-claim__title{flex:1;margin:0;font-size:var(--font-xl);font-weight:700;letter-spacing:.02em}.ach-claim__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:50vh}.ach-claim__item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px}.ach-claim__badge{width:18px;height:18px;color:#f0c860f2;filter:drop-shadow(0 0 6px rgba(240,200,96,.45));display:inline-flex;align-items:center;justify-content:center}.ach-claim__badge svg{width:100%;height:100%}.ach-claim__item-name{font-size:var(--font-md);font-weight:600}.ach-claim__item-desc{font-size:var(--font-sm);color:#eaf6ffb3}.ach-claim__item-reward{font-size:var(--font-sm);font-weight:700;color:#f0c860e6;font-variant-numeric:tabular-nums}.ach-claim__summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#f0c86014;border:1px solid rgba(240,200,96,.35);border-radius:12px}.ach-claim__summary-label{font-size:var(--font-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#eaf6ffcc}.ach-claim__summary-totals{display:inline-flex;flex-wrap:wrap;gap:6px 12px;justify-content:flex-end}.ach-claim__total{font-size:var(--font-md);font-weight:700;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:4px}.ach-claim__total--coral{color:#f8c7d2}.ach-claim__total--bacteria{color:#f5d878}.ach-claim__total-icon{width:14px;height:14px}.ach-claim__total--coral .ach-claim__total-icon{color:#c8324a}.ach-claim__total--bacteria .ach-claim__total-icon{color:#f5d878}.ach-claim__confirm{padding:12px 14px;border-radius:12px;background:linear-gradient(180deg,#f0c860f2,#c8963cf2);border:1px solid rgba(240,200,96,.9);color:#1a1208;font-size:var(--font-lg);font-weight:700;letter-spacing:.04em;cursor:pointer;transition:filter .12s ease}.ach-claim__confirm:hover{filter:brightness(1.06)}@keyframes ach-claim-fade{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.welcome{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:stretch;justify-content:center;animation:welcome-fade .22s ease-out}.welcome__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#08182899;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.welcome__panel{position:relative;width:min(520px,100%);margin:32px 16px;background:#0e2438b3;border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:14px;color:#eaf6ff;box-shadow:0 14px 48px #00000073;max-height:calc(100vh - 64px);overflow:hidden}.welcome__header{display:flex;align-items:center;gap:10px}.welcome__title{flex:1;margin:0;font-size:var(--font-xl);font-weight:700;letter-spacing:.02em}.welcome__intro{margin:0;font-size:var(--font-md);color:#eaf6ffd9;line-height:1.45}.welcome__intro strong{color:#ffd97a;font-weight:700}.welcome__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;overflow-y:auto;max-height:50vh}.welcome__row{display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:center;padding:10px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px}.welcome__dot{width:12px;height:12px;border-radius:999px;box-shadow:0 0 8px currentColor}.welcome__coral-icon{display:inline-flex;width:14px;height:14px;color:#c8324a}.welcome__coral-icon svg{width:100%;height:100%}.welcome__row-label{font-size:var(--font-md);color:#eaf6ffeb}.welcome__row-amount{font-size:var(--font-md);font-weight:700;font-variant-numeric:tabular-nums}.welcome__row-amount--coral{color:#f8c7d2}.welcome__row--coral{background:#c8324a1a;border-color:#c8324a59}.welcome__collect{padding:12px 14px;border-radius:12px;background:linear-gradient(180deg,#78c8e0f2,#3c8cb4f2);border:1px solid rgba(120,200,224,.9);color:#061a26;font-size:var(--font-lg);font-weight:700;letter-spacing:.04em;cursor:pointer;transition:filter .12s ease,transform .12s ease}.welcome__collect:hover{filter:brightness(1.08)}.welcome__collect:active{transform:scale(.98)}@keyframes welcome-fade{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.welcome{animation:none}.welcome__collect{transition:none}}.tutorial{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none}.tutorial__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0208149e;animation:tutorial-fade .2s ease-out}.tutorial__hole{position:fixed;border-radius:14px;box-shadow:0 0 0 9999px #0208149e,0 0 0 2px #78dcffe6,0 0 22px 4px #78dcff8c;animation:tutorial-pulse 1.6s ease-in-out infinite;transition:top .12s ease,left .12s ease,width .12s ease,height .12s ease}.tutorial__card{position:absolute;pointer-events:auto;width:min(420px,calc(100vw - 32px));left:50%;transform:translate(-50%);background:#0a1426f5;border:1px solid rgba(120,220,255,.35);border-radius:16px;padding:18px 20px;color:#eaf4ff;box-shadow:0 12px 40px #00000080;animation:tutorial-rise .22s ease-out}.tutorial__card--center{top:50%;transform:translate(-50%,-50%)}.tutorial__card--bottom{bottom:max(24px,env(safe-area-inset-bottom,0px))}.tutorial__card--top{top:max(24px,env(safe-area-inset-top,0px))}.tutorial__progress{font-size:.72em;letter-spacing:.04em;text-transform:uppercase;color:#78dcffcc;margin-bottom:6px}.tutorial__title{margin:0 0 8px;font-size:1.25em;font-weight:700}.tutorial__body{margin:0 0 16px;font-size:.95em;line-height:1.45;color:#c6d6ea}.tutorial__actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.tutorial__skip{background:none;border:1px solid rgba(198,214,234,.28);border-radius:8px;color:#dce8f6d9;font-size:.85em;cursor:pointer;padding:7px 12px}.tutorial__skip:hover{color:#eaf4ff;border-color:#c6d6ea80}.tutorial__next{margin-left:auto;background:linear-gradient(180deg,#5fc8ff,#2f9fe6);border:none;border-radius:10px;color:#04121f;font-weight:700;font-size:.95em;padding:10px 22px;cursor:pointer}.tutorial__next:hover{filter:brightness(1.08)}@keyframes tutorial-pulse{0%,to{box-shadow:0 0 0 9999px #0208149e,0 0 0 2px #78dcffe6,0 0 18px 3px #78dcff73}50%{box-shadow:0 0 0 9999px #0208149e,0 0 0 3px #96ebff,0 0 30px 8px #78dcffb3}}@keyframes tutorial-rise{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1}}@keyframes tutorial-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.tutorial__hole,.tutorial__card{animation:none}}.update-prompt{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 16px);transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:calc(12px * var(--hud-scale));padding:calc(10px * var(--hud-scale)) calc(14px * var(--hud-scale));border-radius:calc(14px * var(--hud-scale));background:var(--hud-bg);border:.5px solid var(--hud-stroke);color:var(--hud-fg);font-size:var(--font-md);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 16px #00000059;pointer-events:auto;max-width:min(92vw,480px)}.update-prompt__text{flex:1 1 auto}.update-prompt__actions{display:flex;gap:calc(8px * var(--hud-scale))}.update-prompt__btn{padding:calc(6px * var(--hud-scale)) calc(12px * var(--hud-scale));border-radius:999px;border:.5px solid var(--hud-stroke);background:transparent;color:var(--hud-fg);font-size:var(--font-sm);cursor:pointer;transition:transform .12s ease,background .12s ease}.update-prompt__btn:active{transform:scale(.95)}.update-prompt__btn--primary{background:var(--evo-fill);border-color:var(--evo-fill);color:#1a1408;font-weight:600}.update-prompt__btn--secondary:hover{background:#ffffff14}:root{--water-top: #5fb4d8;--water-mid: #3d8eb8;--water-bottom: #1c5478;--hud-bg: rgba(10, 37, 64, .55);--hud-stroke: rgba(255, 255, 255, .6);--hud-fg: #ffffff;--evo-fill: #e8c050;--hud-ink: rgba(243, 250, 255, .96);--hud-ink-soft: rgba(243, 250, 255, .62);--hud-ink-faint: rgba(243, 250, 255, .38);--hud-ink-shadow: 0 1px 1.5px rgba(0, 0, 0, .55), 0 0 6px rgba(8, 24, 40, .45);--hud-hover: rgba(243, 250, 255, .08);--hud-press: rgba(243, 250, 255, .16);--hud-hairline: rgba(243, 250, 255, .14);--font-display: "Fraunces", "Iowan Old Style", Georgia, serif;--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--hud-scale: 1;--font-base: 12px;--font-xs: calc(var(--font-base) * .83);--font-sm: calc(var(--font-base) * .92);--font-md: var(--font-base);--font-lg: calc(var(--font-base) * 1.17);--font-xl: calc(var(--font-base) * 1.33);--font-2xl: calc(var(--font-base) * 1.5);--font-3xl: calc(var(--font-base) * 1.67);--font-hud-xs: calc(var(--font-base) * .58 * var(--hud-scale));--font-hud-sm: calc(var(--font-base) * .67 * var(--hud-scale));--font-hud-md: calc(var(--font-base) * .75 * var(--hud-scale));--font-hud-lg: calc(var(--font-base) * .83 * var(--hud-scale));--font-hud-xl: calc(var(--font-base) * 1.33 * var(--hud-scale))}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;padding:0;height:100%;width:100%;overflow:hidden;background:var(--water-bottom);color:var(--hud-fg);font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);user-select:none;-webkit-user-select:none;touch-action:none;overscroll-behavior:none}button{font-family:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}
