@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(./fredoka-latin-500-normal-B0JifZgm.woff2)format("woff2"),url(./fredoka-latin-500-normal-BL692wg7.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(./fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(./fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(./fredoka-latin-700-normal-BOIZVyIN.woff2)format("woff2"),url(./fredoka-latin-700-normal-C8FeHd3X.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(./nunito-latin-400-normal-DKg4f3fz.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(./nunito-latin-600-normal-Cd0eNu1l.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(./nunito-latin-700-normal-OcDqTBcA.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(./nunito-latin-800-normal-D-J0wlBY.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(./nunito-latin-900-normal-BVB1fGs6.woff2)format("woff2"),url(./nunito-latin-900-normal-CVn49sIn.woff)format("woff")}:root{--bg:#eef5fb;--backdrop:#c9dcea;--surface:#fff;--surface-2:#e4eef7;--fg:#17324a;--muted:#5c7891;--accent:#e3772b;--accent-2:#1f6f8b;--good:#3f9142;--line:#d3e3ef;--locked:#aebfcc;--bar-ready:#4cc3ff;--medallion-bg:#e3f0fa;--scene-tile-bg:radial-gradient(90% 70% at 50% 38%, #ffffffd9, #fff0 70%), linear-gradient(180deg, #cfe8fb, #b3d7f2);--scene-tile-inset:inset 0 1px 0 #ffffffe6, inset 0 -1px 2px #1d3a5214;--art-shadow:drop-shadow(0 1px 1px #142d4b29) drop-shadow(0 3px 4px #142d4b1f);--smoke:#7a86948c;--steam:#ffffffbf;--bubble:#fff4c2;--bubble-shine:#fff;--bubble-rim:#b07618b3;--sparkle:#ffe9a3;--sparkle-core:#fff;--pearl:#ffffffe6;--spray:#fff;--spray-rim:#78a0c899;--bulb-glow:#fffadcf2;--note:#3b2a5c;--note-halo:#fff;--prestige-bg:radial-gradient(circle at 50% 0%, #fff6d8, #fff 70%);--prestige-ring:#f6d77a;--prestige-after-bg:#3f91421f;--coin-gold:#f2b233;--coin-rim:#b87a0c;--coin-shine:#fff8dce6;--coin-glow:#ffc440bf;--card-bg:linear-gradient(180deg, #fff, #f1f7fc);--card-border:#1f6f8b2e;--card-fg:#17324a;--card-muted:#5c7891;--card-value:#0f7fb8;--card-hint:#2386bd;--card-chip:#17324a12;--card-hover:#17324a0f;--card-disabled:#9fb3c4;--card-icon-bg:linear-gradient(180deg, #e2f0fa, #c9e0f1);--card-glow:#4cc3ff59;--discover-glow:#ffbe28e6;--frame-outline:#1d3a52;--frame:#9fd3f0;--frame-light:#e6f7ff;--frame-dark:#5fa3cf;--snow:#fff;--snow-shine:#cfe8f7;--buy-lip:#1b67ad;--sky:linear-gradient(180deg, #a9dcfb, #e3f3fd);--mtn-far:#b4d2e8;--mtn-near:#86afcf;--slope:#f3f9fd;--bar-track:linear-gradient(180deg, #d4e5f2, #dcebf6);--bar-fill:linear-gradient(90deg, #a6e6ff, #4cc3ff, #2a93e8);--bar-flake:#1f6f8b99;--buy-bg:linear-gradient(180deg, #5cc8f5, #2a93e8);--buy-fg:#fff;--badge-bg:linear-gradient(180deg, #3fb0f0, #1f7fd0);--badge-fg:#fff;--milestone-bg:linear-gradient(180deg, #e6f6ff, #bfe6ff);--milestone-fg:#10314d;--phase-lock-bg:linear-gradient(180deg, #f7fbfe, #eaf3fa);--phase-lock-border:#1f6f8b59;--goal-met:#2e9d4a;--silhouette-filter:brightness(0) opacity(.28);--card-solid:#fff;--crystal-mid:#8a6cf2;--crystal-fg:#6a4bdc;--unlock-sky:linear-gradient(180deg, #4fb3f6, #1f86e0);--unlock-shade:linear-gradient(180deg, #14213d59, #14213d00 28%, #14213d00 60%, #14213d73);--comic-outline:#14213d;--splash-outline:#16213f;--splash-shade:linear-gradient(180deg, #10213f6b 0%, #10213f29 20%, #10213f00 34%);--ad-bg:linear-gradient(180deg, #ffad5c, #e8731f);--ad-fg:#fff;--ad-lip:#b5520f;--btn-teal-bg:linear-gradient(180deg, #43d3c8, #179a98);--btn-teal-fg:#fff;--btn-teal-lip:#10706f;--premium-bg:linear-gradient(180deg, #b49bff, #7a52e8);--premium-fg:#fff;--premium-lip:#5434b8;--btn-light-bg:linear-gradient(180deg, #fff, #e9f2f9);--btn-light-fg:#17324a;--btn-light-lip:#b9cfe0;--btn-disabled-bg:linear-gradient(180deg, #e1e9f0, #c9d6e1);--btn-disabled-fg:#7f97ab;--btn-disabled-lip:#a9bccb;--status-active:#4cc3ff;--status-done:#2e9d4a;--story-shade:linear-gradient(180deg, #14213d26, #14213da6);--font-display:"Fredoka", "Segoe UI", sans-serif;--font-body:"Nunito", "Segoe UI", sans-serif;--app-max-width:480px;--safe-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));--safe-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px));--safe-left:var(--safe-area-inset-left,env(safe-area-inset-left,0px));--safe-right:var(--safe-area-inset-right,env(safe-area-inset-right,0px));--font-num:"Nunito", "Segoe UI", sans-serif;--outline-w:3px;--outline-w-sm:2px;--radius-card:16px;--radius-btn:12px;--radius-tile:14px;--radius-tile-sm:10px;--radius-pill:999px;--shadow-card:0 3px 0 var(--frame-outline);--shadow-inset:inset 0 3px 6px #0000004d;--btn-gloss:inset 0 2px 0 #ffffff73;--btn-lip-h:4px;--btn-h:44px;--btn-h-sm:36px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;height:100%}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1f2e;--backdrop:#08131d;--surface:#16293b;--surface-2:#1e3347;--fg:#eaf2f8;--muted:#8fa9bf;--accent:#f0903f;--accent-2:#5fb8d6;--good:#6fc46f;--line:#2a3f54;--locked:#3c5168;--prestige-bg:radial-gradient(circle at 50% 0%, #3a3216, #102b44 70%);--prestige-ring:#8a6d1f;--prestige-after-bg:#6fc46f29;--medallion-bg:#c7deef;--scene-tile-bg:radial-gradient(90% 70% at 50% 38%, #ffffffd9, #fff0 70%), linear-gradient(180deg, #cfe8fb, #b3d7f2);--scene-tile-inset:inset 0 1px 0 #ffffffb3, inset 0 -1px 2px #05111c1f;--art-shadow:drop-shadow(0 1px 1px #05111c47) drop-shadow(0 3px 4px #05111c2e);--bar-ready:#7fd6ff;--card-bg:linear-gradient(180deg, #102b44, #0d2237);--card-border:#82dcff26;--card-fg:#fff;--card-muted:#b2c8da;--card-value:#9ef3ff;--card-hint:#83ddff;--card-chip:#ffffff14;--card-hover:#ffffff14;--card-disabled:#5f7d96;--card-icon-bg:linear-gradient(180deg, #173754, #102841);--card-glow:#7fd6ff40;--discover-glow:#ffc850bf;--frame-outline:#05111c;--frame:#4f8fbd;--frame-light:#a9dcf7;--frame-dark:#2a5c85;--snow:#f2f9ff;--snow-shine:#b9dcf2;--buy-lip:#1d6ab8;--sky:linear-gradient(180deg, #071524, #12304c);--mtn-far:#17324d;--mtn-near:#1f4467;--slope:#1a3550;--bar-track:linear-gradient(180deg, #1d486f, #244d78);--bar-fill:linear-gradient(90deg, #d7fbff, #83ddff, #55bfff);--bar-flake:#fffc;--buy-bg:linear-gradient(180deg, #7bddff, #3aa7ff);--buy-fg:#fff;--badge-bg:linear-gradient(180deg, #d6fbff, #89e8ff);--badge-fg:#082337;--milestone-bg:linear-gradient(180deg, #fff, #a8eeff);--milestone-fg:#10314d;--phase-lock-bg:linear-gradient(180deg, #0c2236, #0a1b2c);--phase-lock-border:#82dcff4d;--goal-met:#6fdc8c;--silhouette-filter:brightness(0) invert(1) opacity(.3);--card-solid:#102b44;--crystal-mid:#a98fff;--crystal-fg:#c7b8ff;--unlock-sky:linear-gradient(180deg, #123a5e, #0b2440);--premium-bg:linear-gradient(180deg, #c3b0ff, #8b66f5);--premium-fg:#fff;--premium-lip:#5b3cc4;--btn-light-bg:linear-gradient(180deg, #1d4566, #143552);--btn-light-fg:#fff;--btn-light-lip:#0b2236;--btn-disabled-bg:linear-gradient(180deg, #2a4258, #22384c);--btn-disabled-fg:#6f8aa1;--btn-disabled-lip:#182b3c;--status-active:#7fd6ff;--status-done:#6fdc8c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0e1f2e;--backdrop:#08131d;--surface:#16293b;--surface-2:#1e3347;--fg:#eaf2f8;--muted:#8fa9bf;--accent:#f0903f;--accent-2:#5fb8d6;--good:#6fc46f;--line:#2a3f54;--locked:#3c5168;--prestige-bg:radial-gradient(circle at 50% 0%, #3a3216, #102b44 70%);--prestige-ring:#8a6d1f;--prestige-after-bg:#6fc46f29;--medallion-bg:#c7deef;--scene-tile-bg:radial-gradient(90% 70% at 50% 38%, #ffffffd9, #fff0 70%), linear-gradient(180deg, #cfe8fb, #b3d7f2);--scene-tile-inset:inset 0 1px 0 #ffffffb3, inset 0 -1px 2px #05111c1f;--art-shadow:drop-shadow(0 1px 1px #05111c47) drop-shadow(0 3px 4px #05111c2e);--bar-ready:#7fd6ff;--card-bg:linear-gradient(180deg, #102b44, #0d2237);--card-border:#82dcff26;--card-fg:#fff;--card-muted:#b2c8da;--card-value:#9ef3ff;--card-hint:#83ddff;--card-chip:#ffffff14;--card-hover:#ffffff14;--card-disabled:#5f7d96;--card-icon-bg:linear-gradient(180deg, #173754, #102841);--card-glow:#7fd6ff40;--discover-glow:#ffc850bf;--frame-outline:#05111c;--frame:#4f8fbd;--frame-light:#a9dcf7;--frame-dark:#2a5c85;--snow:#f2f9ff;--snow-shine:#b9dcf2;--buy-lip:#1d6ab8;--sky:linear-gradient(180deg, #071524, #12304c);--mtn-far:#17324d;--mtn-near:#1f4467;--slope:#1a3550;--bar-track:linear-gradient(180deg, #1d486f, #244d78);--bar-fill:linear-gradient(90deg, #d7fbff, #83ddff, #55bfff);--bar-flake:#fffc;--buy-bg:linear-gradient(180deg, #7bddff, #3aa7ff);--buy-fg:#fff;--badge-bg:linear-gradient(180deg, #d6fbff, #89e8ff);--badge-fg:#082337;--milestone-bg:linear-gradient(180deg, #fff, #a8eeff);--milestone-fg:#10314d;--phase-lock-bg:linear-gradient(180deg, #0c2236, #0a1b2c);--phase-lock-border:#82dcff4d;--goal-met:#6fdc8c;--silhouette-filter:brightness(0) invert(1) opacity(.3);--card-solid:#102b44;--crystal-mid:#a98fff;--crystal-fg:#c7b8ff;--unlock-sky:linear-gradient(180deg, #123a5e, #0b2440);--premium-bg:linear-gradient(180deg, #c3b0ff, #8b66f5);--premium-fg:#fff;--premium-lip:#5b3cc4;--btn-light-bg:linear-gradient(180deg, #1d4566, #143552);--btn-light-fg:#fff;--btn-light-lip:#0b2236;--btn-disabled-bg:linear-gradient(180deg, #2a4258, #22384c);--btn-disabled-fg:#6f8aa1;--btn-disabled-lip:#182b3c;--status-active:#7fd6ff;--status-done:#6fdc8c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=768px){:root{--btn-h:40px}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--backdrop);color:var(--fg);font-family:var(--font-body);margin:0}.card{isolation:isolate;border:var(--outline-w) solid var(--frame-outline);border-radius:var(--radius-card);min-width:0;box-shadow:var(--shadow-card);background:var(--card-bg);color:var(--card-fg);position:relative}.card:after{content:"";z-index:-1;border-radius:calc(var(--radius-card) - var(--outline-w));border:3px solid var(--frame);border-top-color:var(--frame-light);border-bottom-color:var(--frame-dark);box-shadow:inset 0 0 0 1.5px var(--frame-outline), inset 0 3px 6px #00000040;pointer-events:none;position:absolute;inset:0}.card-status{--card-accent:var(--status-active)}.card-status.card-tone-done{--card-accent:var(--status-done)}.card-status:after{border-color:var(--card-accent)}.card-locked{border-style:dashed;border-color:var(--phase-lock-border);box-shadow:none;background:var(--phase-lock-bg)}.card-locked:after{content:none}.snow-cap{z-index:1;fill:var(--snow);stroke:var(--frame-outline);stroke-width:1.5px;stroke-linejoin:round;pointer-events:none;position:absolute}.snow-cap-shine{fill:none;stroke:var(--snow-shine);stroke-width:2px;stroke-linecap:round}.card>.snow-cap-left{width:96px;height:24px;top:-9px;left:108px}.card>.snow-cap-right{width:56px;height:20px;top:-8px;right:30px}.card:nth-child(2n)>.snow-cap-left{left:150px;transform:scaleX(-1)}.card:nth-child(2n)>.snow-cap-right{right:14px}.card-info>.snow-cap-left{left:70px}.ui-btn{--btn-bg:var(--buy-bg);--btn-fg:var(--buy-fg);--btn-lip:var(--buy-lip);min-width:0;min-height:var(--btn-h);padding:2px 12px calc(2px + var(--btn-lip-h));border:var(--outline-w-sm) solid var(--frame-outline);border-radius:var(--radius-btn);background:var(--btn-bg);color:var(--btn-fg);text-shadow:0 1px 0 var(--btn-lip);box-shadow:var(--btn-gloss), inset 0 calc(-1 * var(--btn-lip-h)) 0 var(--btn-lip);line-height:1.1;font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:normal;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:5px;font-size:.95rem;font-weight:800;line-height:1.1;display:inline-flex;position:relative}.ui-btn:active:not(:disabled){padding-bottom:var(--btn-lip-h);box-shadow:var(--btn-gloss), inset 0 calc(2px - var(--btn-lip-h)) 0 var(--btn-lip)}.ui-btn-sm{min-height:var(--btn-h-sm);padding-left:9px;padding-right:9px;font-size:.8rem}.ui-btn-block{width:100%;display:flex}.ui-btn .ui-icon{width:1.2em;height:1.2em}.ui-btn-ad{--btn-bg:var(--ad-bg);--btn-fg:var(--ad-fg);--btn-lip:var(--ad-lip)}.ui-btn-premium{--btn-bg:var(--premium-bg);--btn-fg:var(--premium-fg);--btn-lip:var(--premium-lip)}.ui-btn-light{--btn-bg:var(--btn-light-bg);--btn-fg:var(--btn-light-fg);--btn-lip:var(--btn-light-lip);text-shadow:none}.ui-btn:disabled,.ui-btn.is-disabled{--btn-bg:var(--btn-disabled-bg);--btn-fg:var(--btn-disabled-fg);--btn-lip:var(--btn-disabled-lip);text-shadow:none;cursor:default;animation:none}.ui-btn:disabled img,.ui-btn.is-disabled img{filter:grayscale(.7);opacity:.75}.ui-btn-pulse{animation:1.4s ease-in-out infinite uiBtnPulse}@keyframes uiBtnPulse{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}.ui-bar{border-radius:var(--radius-pill);border:var(--outline-w-sm) solid var(--frame-outline);background:var(--bar-track);height:16px;position:relative;overflow:hidden;box-shadow:inset 0 2px 3px #0000004d}.ui-bar-lg{height:22px}.ui-bar-sm{border-width:1.5px;height:10px}.ui-bar-highlight{border-color:var(--bar-ready)}.ui-bar-fill{border-radius:var(--radius-pill);background:linear-gradient(180deg, #ffffff80 0 35%, transparent 35%), var(--bar-fill);height:100%;transition:width .3s;box-shadow:inset 0 -2px #0000001f}.ui-bar-lg .ui-bar-fill{transition:none}.ui-bar-done .ui-bar-fill{background:linear-gradient(180deg, #fff6 0 35%, transparent 35%), var(--goal-met)}.ui-bar-labels{z-index:1;font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap;text-shadow:0 0 2px var(--card-solid), 0 0 3px var(--card-solid);pointer-events:none;justify-content:space-between;align-items:center;gap:8px;padding:0 9px;font-size:.8rem;font-weight:700;line-height:1;display:flex;position:absolute;inset:0}.ui-bar-flakes{opacity:.4;background-image:radial-gradient(circle at 6px 4px, var(--bar-flake) 1px, transparent 1.5px), radial-gradient(circle at 17px 15px, var(--bar-flake) .8px, transparent 1.3px), radial-gradient(circle at 26px 8px, var(--bar-flake) 1.1px, transparent 1.6px), radial-gradient(circle at 34px 21px, var(--bar-flake) .9px, transparent 1.4px), radial-gradient(circle at 41px 2px, var(--bar-flake) .7px, transparent 1.2px), radial-gradient(circle at 49px 12px, var(--bar-flake) 1px, transparent 1.5px), radial-gradient(circle at 58px 19px, var(--bar-flake) .7px, transparent 1.2px), radial-gradient(circle at 64px 6px, var(--bar-flake) .9px, transparent 1.4px), radial-gradient(circle at 10px 18px, var(--bar-flake) .6px, transparent 1.1px);background-size:70px 24px;animation:9s linear infinite barFlakesSlow;position:absolute;inset:0}.ui-bar-flakes:after{content:"";opacity:0;background-image:radial-gradient(circle at 4px 9px, var(--bar-flake) .8px, transparent 1.3px), radial-gradient(circle at 15px 2px, var(--bar-flake) .7px, transparent 1.2px), radial-gradient(circle at 24px 14px, var(--bar-flake) .9px, transparent 1.4px), radial-gradient(circle at 29px 5px, var(--bar-flake) .6px, transparent 1.1px);background-size:34px 20px;transition:opacity .4s;animation:1.2s linear infinite barFlakesFast;position:absolute;inset:0}.ui-bar-running .ui-bar-flakes:after{opacity:1}@keyframes barFlakesSlow{to{background-position:-70px 72px}}@keyframes barFlakesFast{to{background-position:-34px 40px}}.ui-tile{border-radius:var(--radius-tile);border:var(--outline-w-sm) solid var(--frame-outline);width:56px;height:56px;box-shadow:var(--shadow-inset);background:var(--card-icon-bg);flex:none;justify-content:center;align-items:center;display:flex;position:relative}.ui-tile>img{object-fit:contain;-webkit-user-select:none;user-select:none;width:76%;height:76%}.ui-tile-sm{border-radius:var(--radius-tile-sm);width:38px;height:38px}.ui-tile-sm>img{width:68%;height:68%}.ui-tile-lg{width:72px;height:72px}.ui-tile-pulse{animation:1.1s ease-in-out infinite uiTilePulse}@keyframes uiTilePulse{0%,to{box-shadow:var(--shadow-inset)}50%{box-shadow:var(--shadow-inset), 0 0 0 4px var(--card-glow)}}.ui-tile-scene{box-shadow:var(--scene-tile-inset);background:var(--scene-tile-bg);border:0;overflow:hidden}.ui-tile-scene>img,.ui-tile-scene .biz-art>img:not(.fx-lights,.fx-room,.fx-flag){filter:var(--art-shadow)}.ui-tile-scene>img,.ui-tile-scene>.biz-art{width:44px;height:44px}.ui-tile-scene[data-category=lift]>img,.ui-tile-scene[data-category=lift]>.biz-art{width:60px;max-width:none;height:60px}@media (prefers-reduced-motion:reduce){.ui-btn-pulse,.ui-tile-pulse,.ui-bar-flakes,.ui-bar-flakes:after{animation:none}.ui-bar-fill{transition:none}}.app,.splash{max-width:var(--app-max-width);margin:0 auto}.app{background:var(--bg);flex-direction:column;height:100%;display:flex;overflow:hidden}@media (width>=540px){.app{box-shadow:0 0 0 1px var(--line), 0 0 40px #0a141e2e}}.ui-icon{vertical-align:-.22em;flex:none;width:1.15em;height:1.15em;display:inline-block}.money{white-space:nowrap;align-items:center;gap:.15em;display:inline-flex}.money .ui-icon{vertical-align:0}.rotate-hint{display:none}@media (orientation:landscape) and (pointer:coarse) and (height<=540px){.rotate-hint{z-index:100;background:var(--bg);color:var(--fg);font-family:var(--font-display);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;font-size:16px;display:flex;position:fixed;inset:0}.rotate-hint svg{color:var(--accent-2);animation:1.8s ease-in-out infinite rotateHint}}@keyframes rotateHint{0%,25%{transform:rotate(-90deg)}60%,to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.rotate-hint svg{animation:none}}.app-header{padding:calc(14px + var(--safe-top)) calc(14px + var(--safe-right)) 30px calc(14px + var(--safe-left));background:var(--sky);flex:none;position:relative;overflow:hidden}.header-scenery{pointer-events:none;width:100%;height:76px;position:absolute;bottom:0;left:0}.mtn-far{fill:var(--mtn-far)}.mtn-near{fill:var(--mtn-near)}.mtn-snow{fill:var(--snow)}.mtn-slope{fill:var(--slope)}.snow-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.header-content{z-index:1;align-items:center;gap:8px;display:flex;position:relative}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon-btn{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:none;justify-content:center;align-items:center;margin:-4px -6px -4px 0;padding:0;display:flex;position:relative}.icon-btn:hover{color:var(--accent-2);background:var(--surface-2)}.icon-btn-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;top:3px;right:3px}.round-btn,.crystal-pill{border:2px solid var(--frame-outline);background:var(--card-solid);cursor:pointer;flex:none;align-items:center;height:38px;display:flex;position:relative;box-shadow:inset 0 2px #ffffff2e,inset 0 -4px #00000038}.round-btn:active,.crystal-pill:active{box-shadow:inset 0 2px #ffffff2e,inset 0 -2px #00000038}.round-btn{border-radius:50%;justify-content:center;width:38px;padding:0 0 2px}.wallet-plaque{--frame-r:16px;--frame-ring:4px;border-radius:var(--frame-r);border:3px solid var(--frame-outline);min-width:0;box-shadow:0 4px 0 var(--frame-outline);background:var(--card-bg);flex-direction:column;padding:8px 16px 9px;display:flex;position:relative}.wallet-amount{z-index:2;font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-.4px;color:var(--card-fg);font-size:24px;font-weight:700;line-height:1.15;position:relative}.wallet-amount.pop{transform-origin:0;animation:.26s ease-out walletPop}@keyframes walletPop{40%{transform:scale(1.12)}to{transform:scale(1)}}.wallet-rate{z-index:2;font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--card-muted);align-items:center;font-size:12px;display:flex;position:relative}.wallet-rate.boosted{color:var(--accent);font-weight:700}.rate-boost{align-items:center;margin-left:5px;display:inline-flex}.rate-boost-icon{width:17px;height:17px;margin-right:1px;animation:1.1s ease-in-out infinite rateBoostPulse}@keyframes rateBoostPulse{0%,to{filter:drop-shadow(0 0 0 var(--discover-glow));transform:scale(1)}50%{filter:drop-shadow(0 0 4px var(--discover-glow));transform:scale(1.2)}}@media (prefers-reduced-motion:reduce){.rate-boost-icon{animation:none}}.header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.crystal-pill{color:var(--crystal-fg);font-family:var(--font-num);font-variant-numeric:tabular-nums;border-radius:999px;gap:5px;padding:0 4px 2px 7px;font-size:14px;font-weight:700}.crystal-open{height:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:flex}.crystal-open.ready .crystal-icon{animation:1.2s ease-in-out infinite crystalReadyPulse}@keyframes crystalReadyPulse{0%,to{filter:drop-shadow(0 0 0 var(--crystal-mid));transform:scale(1)}50%{filter:drop-shadow(0 0 4px var(--crystal-mid));transform:scale(1.18)}}.crystal-plus{border:2px solid var(--frame-outline);background:var(--premium-bg);width:24px;height:24px;color:var(--premium-fg);box-shadow:inset 0 1.5px 0 #ffffff59, inset 0 -2.5px 0 var(--premium-lip);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;margin-left:2px;padding:0 0 1px;display:flex}.crystal-plus:active{box-shadow:inset 0 -1px 0 var(--premium-lip)}.crystal-plus svg{display:block}.crystal-icon{flex:none;display:block}.crystal-balance{color:var(--crystal-fg);font-family:var(--font-num);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:6px;font-size:20px;font-weight:700;display:flex}.crystal-level{color:var(--crystal-fg);font-size:.72rem;font-weight:700}.crystal-packs{text-align:left;flex-direction:column;gap:8px;min-height:0;padding-top:8px;display:flex;overflow-y:auto}.crystal-pack{background:var(--card-chip);border:2px solid #0000;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:6px 8px 6px 6px;display:grid;position:relative}.crystal-pack.featured{border-color:var(--crystal-mid)}.crystal-pack-badge{background:var(--crystal-mid);color:var(--premium-fg);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:10px;font-weight:800;position:absolute;top:-9px;right:10px}.crystal-pack-info{flex-direction:column;align-items:flex-start;gap:1px;min-width:0;display:flex}.crystal-pack-name{color:var(--card-fg);font-size:.85rem;font-weight:800}.crystal-pack-amount{white-space:nowrap;font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--crystal-fg);align-items:center;gap:4px;font-size:17px;font-weight:800;display:inline-flex}.crystal-pack-buy{min-width:84px}.crystal-pack-pending{color:var(--crystal-fg);font-weight:700}.main-area{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}.main-area:has(.boost-badge) .app-main{padding-bottom:104px}.boost-dock{right:calc(10px + var(--safe-right));z-index:5;pointer-events:none;gap:8px;display:flex;position:absolute;bottom:10px}.boost-badge{pointer-events:auto;width:64px;color:var(--fg);font-family:var(--font-body);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:1px;padding:0;display:flex}.boost-badge:disabled{cursor:default}.boost-badge-icon{filter:drop-shadow(0 3px 4px #0a141e59);justify-content:center;align-items:center;width:54px;height:54px;font-size:36px;display:flex;position:relative}.boost-badge-icon img{width:100%;height:100%}.boost-badge.ready .boost-badge-icon{animation:2.4s ease-in-out infinite boostBob}.boost-badge:active:not(:disabled) .boost-badge-icon{transform:scale(.92)}.boost-badge-play{border:2px solid var(--surface);background:var(--accent);width:20px;height:20px;color:var(--buy-fg);border-radius:50%;justify-content:center;align-items:center;padding-left:1px;font-size:9px;display:flex;position:absolute;top:-2px;right:-4px}.boost-badge-caption{background:var(--surface);white-space:nowrap;text-overflow:ellipsis;border-radius:8px;max-width:100%;padding:1px 6px;font-size:10.5px;font-weight:800;overflow:hidden;box-shadow:0 1px 3px #0a141e40}.boost-badge.active .boost-badge-caption{color:var(--accent);font-family:var(--font-num);font-variant-numeric:tabular-nums}@keyframes boostBob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.boost-badge.ready .boost-badge-icon{animation:none}}.tab-strip-wrap{background:var(--slope);border-bottom:1px solid var(--line);flex:none;position:relative}.tab-strip-wrap:after{content:"";background:linear-gradient(90deg, transparent, var(--slope));pointer-events:none;width:28px;position:absolute;top:0;bottom:0;right:0}.tab-strip{padding:10px calc(28px + var(--safe-right)) 12px calc(12px + var(--safe-left));gap:8px;display:flex;overflow-x:auto}.tab-strip::-webkit-scrollbar{display:none}.loc-tab{font-family:var(--font-display);flex:none;gap:6px;padding-left:8px;padding-right:12px;font-size:13px;font-weight:600}.loc-tab.active .snow-cap-left{width:52px;height:13px;top:-8px;left:6px}.loc-tab.locked{cursor:default}.loc-tab.locked .flag{filter:grayscale(.85);opacity:.6}.loc-tab .flag{width:20px;height:20px}.phase-dots{gap:3px;margin-left:2px;display:flex}.phase-dots>span{opacity:.55;border:1.5px solid;border-radius:50%;width:7px;height:7px}.phase-dots>span.on{opacity:1;background:currentColor}.phase-dots>span.building{opacity:1;animation:1.2s ease-in-out infinite phaseDotBuild}@keyframes phaseDotBuild{50%{background:currentColor}}.loc-tab .lock-cost{font-family:var(--font-num);font-variant-numeric:tabular-nums;align-items:center;gap:3px;font-size:10.5px;display:flex}.loc-tab.discover{animation:1.4s ease-in-out infinite discoverGlow}.loc-tab .discover-label{background:var(--buy-bg);color:var(--buy-fg);text-shadow:0 1px 0 var(--buy-lip);box-shadow:inset 0 1px 0 #ffffff73, inset 0 -2px 0 var(--buy-lip);border-radius:8px;padding:2px 8px 3px}@media (prefers-reduced-motion:reduce){.loc-tab.discover{box-shadow:var(--btn-gloss), inset 0 calc(-1 * var(--btn-lip-h)) 0 var(--btn-lip), 0 0 10px 2px var(--discover-glow);animation:none}}@keyframes discoverGlow{0%,to{box-shadow:var(--btn-gloss), inset 0 calc(-1 * var(--btn-lip-h)) 0 var(--btn-lip), 0 0 0 0 var(--discover-glow)}50%{box-shadow:var(--btn-gloss), inset 0 calc(-1 * var(--btn-lip-h)) 0 var(--btn-lip), 0 0 12px 3px var(--discover-glow)}}.flag{width:1.25em;height:1.25em;box-shadow:0 0 0 1.5px var(--frame-outline);vertical-align:-.28em;object-fit:cover;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;display:inline-block}.app-main{padding:14px calc(14px + var(--safe-right)) 10px calc(14px + var(--safe-left));flex-direction:column;flex:auto;gap:8px;display:flex;overflow:hidden auto}.loc-heading{font-family:var(--font-display);color:var(--muted);justify-content:flex-end;align-items:center;padding:2px 2px 4px;font-size:13px;font-weight:600;display:flex}.round-btn .icon-btn-dot,.crystal-pill .crystal-free-dot{border:2px solid var(--frame-outline);width:12px;height:12px;top:-3px;right:-3px}.modal.infra-dialog{align-items:stretch;max-width:420px;max-height:100%}.modal.infra-dialog .modal-sub{margin-top:-6px}.modal.modal-framed{border:3px solid var(--frame-outline);box-shadow:0 5px 0 var(--frame-outline);border-radius:18px;position:relative}.modal-framed .snow-cap-left{width:96px;height:24px;top:-10px;left:28px}.modal.crystal-upgrades{height:80dvh}.crystal-upgrades .infra-list{flex:auto;gap:clamp(6px,2dvh,18px)}.crystal-upgrades .infra-pips{margin:2px 0}.crystal-next{color:var(--card-muted);font-size:.72rem}.infra-list{text-align:left;flex-direction:column;gap:6px;min-height:0;display:flex;overflow-y:auto}.infra-row{background:var(--card-chip);border-radius:12px;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:6px;display:grid}.infra-icon{background:var(--card-icon-bg);border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.infra-icon img{-webkit-user-select:none;user-select:none;width:34px;height:34px}.infra-row.locked .infra-icon img{filter:grayscale();opacity:.55}.infra-info{flex-direction:column;gap:2px;min-width:0;display:flex}.infra-name{color:var(--card-fg);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:800;overflow:hidden}.infra-effect{color:var(--card-value);font-size:.75rem}.infra-pips{gap:4px;display:flex}.infra-pip{background:var(--card-chip);border:1px solid var(--card-border);border-radius:999px;width:14px;height:5px}.infra-pip.on{background:var(--bar-ready);border-color:var(--bar-ready)}.infra-buy{min-width:80px}.infra-status{text-align:right;max-width:96px;color:var(--card-muted);font-size:.72rem;font-weight:700}.infra-row.maxed .infra-status{color:var(--card-value)}.biz-list{flex-direction:column;display:flex}.biz{cursor:default;grid-template-columns:56px 1fr;align-items:center;gap:10px;margin:8px 0 9px;padding:9px 10px 8px;transition:border-color .2s;display:grid}.wallet-plaque:after{content:"";border-radius:calc(var(--frame-r) - 3px);border:var(--frame-ring) solid var(--frame);border-top-color:var(--frame-light);border-bottom-color:var(--frame-dark);box-shadow:inset 0 0 0 1.5px var(--frame-outline), inset 0 3px 6px #00000040;pointer-events:none;position:absolute;inset:0}.wallet-plaque .snow-cap-left{width:70px;height:18px;top:-8px;left:10px}.biz.just-bought{border-color:var(--bar-ready)}.biz.reveal{animation:bizReveal .32s ease-out var(--reveal-delay,0s) both}@keyframes bizReveal{0%{opacity:0;transform:scale(.8)}70%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:none}}.biz-puff{z-index:2;pointer-events:none;height:0;position:absolute;inset:auto 0 -2px}.biz-puff>span{background:var(--snow);width:14px;height:14px;animation:bizPuff .55s ease-out calc(var(--reveal-delay,0s) + .15s) both;border-radius:50%;margin-left:-7px;position:absolute;top:-7px;box-shadow:0 1px 2px #00000040}@keyframes bizPuff{0%{opacity:0;transform:rotate(var(--a)) translateX(4px) scale(.5)}25%{opacity:.95}to{opacity:0;transform:rotate(var(--a)) translateX(30px) scale(1.1)}}.region{flex-direction:column;gap:8px;display:flex}.region.celebrate{animation:.4s ease-out regionZoom}@keyframes regionZoom{50%{transform:scale(1.02)}}.phase-fx{z-index:15;pointer-events:none;height:0;margin-bottom:-8px;position:sticky;top:0}.phase-fx-snow{height:0;position:absolute;inset:0 0 auto}.phase-fx-snow>span{background:var(--snow);border-radius:50%;animation:1s ease-in both phaseSnow;position:absolute;top:-12px;box-shadow:0 1px 2px #0000004d}@keyframes phaseSnow{0%{opacity:0;transform:translate(0)}15%{opacity:1}to{opacity:0;transform:translate(var(--drift), 240px)}}.phase-fx-msg{border:3px solid var(--frame-outline);width:fit-content;max-width:calc(100% - 32px);box-shadow:0 3px 0 var(--frame-outline), inset 0 2px 0 #ffffff40, inset 0 -4px 0 #0003;font-family:var(--font-display);text-align:center;border-radius:999px;margin:0 auto;padding:8px 18px 10px;font-size:17px;font-weight:700;position:absolute;top:70px;left:0;right:0}.phase-fx-sub{opacity:.8;font-size:13px;font-weight:600}.phase-fx-banner{background:var(--card-solid);color:var(--card-fg);animation:1s ease-out both phaseMsg}.phase-fx-toast{background:var(--buy-bg);color:var(--buy-fg);animation:1.3s ease-out both phaseMsg}@keyframes phaseMsg{0%{opacity:0;transform:scale(.85)}25%,75%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-8px)}}.biz-content{z-index:2}.biz-icon{z-index:3;width:56px;height:56px;position:relative}.biz-art{flex:none;max-width:none;position:relative}.biz-art>img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.biz-art.on .fx-swing{animation:fxSwing 4.5s ease-in-out var(--fx-delay) infinite}@keyframes fxSwing{0%,72%,to{transform:rotate(0)}12%{transform:rotate(var(--deg))}30%{transform:rotate(calc(var(--deg) * -.7))}46%{transform:rotate(calc(var(--deg) * .4))}60%{transform:rotate(calc(var(--deg) * -.18))}}.biz-art.on .fx-flag{animation:fxFlag 1.4s ease-in-out var(--fx-delay) infinite}@keyframes fxFlag{0%,to{transform:skewY(0)scale(1)}25%{transform:skewY(-3deg)scale(1.06,1.03)}50%{transform:skewY(1.5deg)scale(1.02,1.01)}75%{transform:skewY(-2deg)scale(1.05,1.03)}}.biz-art.on .fx-rotor{opacity:.9;animation:.3s linear infinite fxRotor}@keyframes fxRotor{0%{transform:scaleY(var(--k)) rotate(0deg) scaleY(var(--ik))}to{transform:scaleY(var(--k)) rotate(90deg) scaleY(var(--ik))}}.fx-lights{opacity:0}.biz-art.on .fx-lights{animation:fxFlicker 3.7s linear var(--fx-delay) infinite}@keyframes fxFlicker{0%,to{opacity:.55}9%{opacity:.8}12%{opacity:.45}30%{opacity:.7}47%{opacity:.5}61%{opacity:.78}64%{opacity:.5}82%{opacity:.68}}.fx-smoke{pointer-events:none;width:0;height:0;position:absolute}.fx-smoke i{left:calc(-4px * var(--size));top:calc(-4px * var(--size));width:calc(8px * var(--size));height:calc(8px * var(--size));background:radial-gradient(circle at 40% 40%, var(--smoke) 35%, transparent 72%);opacity:0;animation:3s ease-out infinite fxSmoke;animation-delay:calc(var(--n) * -.45s);border-radius:50%;position:absolute}.fx-smoke i:nth-child(2){animation-delay:calc(var(--n) * -.45s - 1s)}.fx-smoke i:nth-child(3){animation-delay:calc(var(--n) * -.45s - 2s)}@keyframes fxSmoke{0%{opacity:0;transform:translate(0)scale(.4)}15%{opacity:1}to{opacity:0;transform:translate(7px,-20px)scale(1.7)}}.fx-steam i{background:radial-gradient(circle at 45% 45%, var(--steam) 30%, transparent 70%);animation-name:fxSteam;animation-duration:3.6s}@keyframes fxSteam{0%{opacity:0;transform:translate(0)scale(.5)}20%{opacity:.9}60%{transform:translate(-3px,-10px)scale(1.2)}to{opacity:0;transform:translate(2px,-18px)scale(1.6)}}.fx-bubble{pointer-events:none;width:0;height:0;position:absolute}.fx-bubble i{left:calc(-2.5px * var(--size));top:calc(-2.5px * var(--size));width:calc(5px * var(--size));height:calc(5px * var(--size));box-sizing:border-box;border:1px solid var(--bubble-rim);background:radial-gradient(circle at 35% 35%, var(--bubble-shine) 0 20%, var(--bubble) 45%);opacity:0;animation:1.9s ease-in infinite fxBubble;animation-delay:calc(var(--n) * -.53s);border-radius:50%;position:absolute}@keyframes fxBubble{0%{opacity:0;transform:scale(0)}15%{opacity:1}70%{opacity:1;transform:scale(1)}80%{opacity:.8;transform:scale(1.3)}86%,to{opacity:0;transform:scale(1.5)}}.fx-sparkle,.fx-pearls{pointer-events:none;width:0;height:0;position:absolute}.fx-sparkle i{left:calc(-4px * var(--size));top:calc(-4px * var(--size));width:calc(8px * var(--size));height:calc(8px * var(--size));clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);background:radial-gradient(circle, var(--sparkle-core) 0 25%, var(--sparkle) 60%);opacity:0;animation:2.6s ease-in-out infinite fxSparkle;animation-delay:calc(var(--n) * -.75s);position:absolute}@keyframes fxSparkle{0%,45%,to{opacity:0;transform:scale(0)rotate(0)}22%{opacity:1;transform:scale(1)rotate(45deg)}}.biz-art{container-type:size}.fx-pearls i{left:calc(-.8px * var(--size));top:calc(-.8px * var(--size));width:calc(1.6px * var(--size));height:calc(1.6px * var(--size));background:var(--pearl);opacity:0;animation:1.5s linear infinite fxPearl;animation-delay:calc(var(--n) * -.37s);border-radius:50%;position:absolute}.fx-pearls i:nth-child(2){animation-delay:calc(var(--n) * -.37s - .5s)}.fx-pearls i:nth-child(3){animation-delay:calc(var(--n) * -.37s - 1s)}@keyframes fxPearl{0%{opacity:0;transform:translate(0)}15%{opacity:1}50%{transform:translate(.4px, calc(var(--rise) * -.5cqh))}90%{opacity:.8}to{transform:translate(-.3px, calc(var(--rise) * -1cqh));opacity:0}}.fx-room{opacity:0}.biz-art.on .fx-room{animation:fxRoom calc(9s + var(--n) * 2.3s) linear infinite;animation-delay:calc(var(--n) * -3.7s)}@keyframes fxRoom{0%,68%,97%,to{opacity:0}70%,95%{opacity:1}}.biz-art.on .fx-lights.flame{animation:fxFlame 1.1s linear var(--fx-delay) infinite}@keyframes fxFlame{0%,to{opacity:.6}10%{opacity:1}18%{opacity:.35}30%{opacity:.85}42%{opacity:.5}55%{opacity:.95}63%{opacity:.4}78%{opacity:.9}88%{opacity:.55}}.biz-art.on .fx-wiggle{animation:fxWiggle 5s ease-in-out var(--fx-delay) infinite}@keyframes fxWiggle{0%,78%,to{transform:rotate(0)}82%{transform:rotate(var(--deg))}86%{transform:rotate(calc(var(--deg) * -.8))}90%{transform:rotate(calc(var(--deg) * .5))}94%{transform:rotate(calc(var(--deg) * -.2))}}.fx-spray{pointer-events:none;width:0;height:0;position:absolute}.fx-spray i{left:calc(-1.5px * var(--size));top:calc(-1.5px * var(--size));width:calc(3px * var(--size));height:calc(3px * var(--size));box-sizing:border-box;border:.5px solid var(--spray-rim);background:var(--spray);opacity:0;animation:.9s ease-out infinite fxSpray;animation-delay:calc(var(--n) * -.15s);border-radius:50%;position:absolute}@keyframes fxSpray{0%{opacity:0;transform:translate(0)scale(.6)}15%{opacity:1}to{transform:translate(calc(var(--dx) * 1cqw), calc(var(--dy) * 1cqh)) scale(1.1);opacity:0}}.biz-art.on .fx-wave{animation:fxWave 3.2s ease-in-out var(--fx-delay) infinite}@keyframes fxWave{0%,50%,to{transform:rotate(0)}10%{transform:rotate(calc(var(--deg) * -1))}20%{transform:rotate(var(--deg))}30%{transform:rotate(calc(var(--deg) * -1))}40%{transform:rotate(calc(var(--deg) * .5))}}.fx-bulb{width:calc(5px * var(--size));height:calc(5px * var(--size));margin:calc(-2.5px * var(--size)) 0 0 calc(-2.5px * var(--size));background:radial-gradient(circle, var(--bulb-glow) 0 30%, transparent 70%);mix-blend-mode:screen;pointer-events:none;opacity:0;animation:1.5s step-end infinite fxBulb;animation-delay:calc(var(--n) * -.5s);border-radius:50%;position:absolute;top:0;left:0}@keyframes fxBulb{0%{opacity:1}33%{opacity:.15}66%{opacity:.5}}.fx-notes{pointer-events:none;width:0;height:0;position:absolute}.fx-notes i{font:700 calc(7px * var(--size)) / 1 var(--font-num);color:var(--note);text-shadow:0 0 1.5px var(--note-halo), 0 0 1.5px var(--note-halo);opacity:0;font-style:normal;animation:2.4s ease-out infinite fxNote;position:absolute;top:0;left:0}.fx-notes i:before{content:"♪"}.fx-notes i:nth-child(2){animation-delay:-.8s}.fx-notes i:nth-child(2):before{content:"♫"}.fx-notes i:nth-child(3){animation-delay:-1.6s}@keyframes fxNote{0%{opacity:0;transform:translate(0)scale(.6)}15%{opacity:1}50%{transform:translate(7px,-4px)scale(1)}to{opacity:0;transform:translate(13px,-11px)scale(1)}}@media (prefers-reduced-motion:reduce){.biz-art.on .fx-swing,.biz-art.on .fx-flag,.biz-art.on .fx-rotor,.biz-art.on .fx-lights,.biz-art.on .fx-lights.flame,.biz-art.on .fx-room,.biz-art.on .fx-wiggle,.biz-art.on .fx-wave{animation:none}.fx-smoke,.fx-bubble,.fx-sparkle,.fx-pearls,.fx-spray,.fx-bulb,.fx-notes{display:none}}.coin-stack{z-index:3;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:flex;position:absolute;bottom:-19px;right:-19px}.coin-stack:focus-visible{outline:3px solid var(--bar-ready);outline-offset:-4px}.coin-stack-art{transform-origin:50% 90%;width:32px;height:32px;animation:.25s ease-in both coinDrop;position:relative;overflow:visible}.coin-stack .coin-stack-art{animation:.25s ease-in both coinDrop,3.5s ease-in-out 1.5s infinite coinWobble}@keyframes coinWobble{0%,84%,to{transform:none}88%{transform:rotate(-7deg)}92%{transform:rotate(6deg)}96%{transform:rotate(-3deg)}}.coin-stack:active .coin-stack-art{transform:scale(.92)}@keyframes coinDrop{0%{opacity:0;transform:translateY(-22px)}70%{opacity:1;animation-timing-function:ease-out;transform:translateY(1px)scaleY(.9)}to{transform:none}}.coin-rim{fill:var(--coin-rim);stroke:var(--frame-outline);stroke-width:1.4px;stroke-linejoin:round}.coin-face{fill:var(--coin-gold);stroke:var(--frame-outline);stroke-width:1.4px}.coin-inner{fill:none;stroke:var(--coin-rim);stroke-width:1px}.coin-shine{fill:none;stroke:var(--coin-shine);stroke-width:1.4px;stroke-linecap:round}.coin-stack-glow{background:radial-gradient(circle, var(--coin-glow) 0%, transparent 68%);border-radius:50%;animation:1.6s ease-in-out infinite coinGlow;position:absolute;inset:2px}@keyframes coinGlow{0%,to{opacity:.45}50%{opacity:1}}.coin-flights{z-index:20;pointer-events:none;position:fixed;inset:0;overflow:hidden}.flying-coin{opacity:0;width:18px;height:18px;position:absolute;top:-9px;left:-9px}.flying-coin .ui-icon{display:block}.biz-staff-slot{border-radius:50%;flex:none;width:22px;height:22px;padding:0;position:relative}.biz-staff-slot.none{border:2px solid var(--card-disabled);cursor:pointer;opacity:.7;background:0 0}.biz-staff-slot.hire{border:2px solid var(--frame-outline);background:var(--accent);color:#fff;cursor:pointer;justify-content:center;align-items:center;animation:1.4s ease-in-out infinite staffPulse;display:flex;box-shadow:inset 0 2px #ffffff59,inset 0 -2px #00000038}.biz-staff-slot.hire svg{width:13px;height:13px}.biz-staff-slot.hire:before,.biz-staff-slot.hired:before{content:"";border-radius:50%;position:absolute;inset:-10px}.biz-staff-slot.hired{border:2px solid var(--snow);background:var(--badge-bg);box-shadow:0 0 0 1px var(--frame-outline);cursor:pointer}.biz-staff-slot.hired img{-webkit-user-select:none;user-select:none;border-radius:50%;width:100%;height:100%;display:block}@keyframes staffPulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.biz-content{flex-direction:column;gap:4px;min-width:0;display:flex;position:relative}.biz-title{align-items:center;gap:6px;min-width:0;display:flex}.biz-name{min-width:0;font-family:var(--font-display);color:var(--card-fg);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;line-height:1.1;overflow:hidden}.biz-buy{flex:none;min-width:90px}.biz-progress{align-items:center;gap:8px;display:flex}.biz-progress .biz-bar{flex:auto;min-width:0}.biz-ready-label{color:var(--card-value);font-weight:800}.biz-owned{background:var(--card-chip);font-variant-numeric:tabular-nums;color:var(--card-fg);border-radius:10px;flex:none;padding:1px 7px;font-size:.8rem;font-weight:800}.biz-owned-mult{background:var(--milestone-bg);color:var(--milestone-fg);border-radius:999px;margin-left:5px;padding:0 5px}.biz-profit{color:var(--card-value);font-weight:800;display:flex}.biz-cycle{color:var(--card-muted)}.card-locked.met{border-style:solid;border-color:var(--bar-ready)}.phase-lock-sub{color:var(--card-hint);font-size:.75rem;font-weight:700}.phase-card{flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px 12px;display:flex}.phase-head{align-items:center;gap:8px;display:flex}.phase-name{white-space:normal;overflow-wrap:anywhere;flex:auto;overflow:visible}.phase-biz{flex:none;gap:2px;margin:0;padding:0;list-style:none;display:flex}.phase-biz img{object-fit:contain;width:28px;height:28px;display:block}.phase-biz img.unknown{filter:var(--silhouette-filter)}.phase-goals{grid-template-columns:18px minmax(0,max-content) minmax(72px,1fr) auto;gap:5px 6px;margin:0;padding:0;list-style:none;display:grid}.phase-goal{grid-column:1/-1;grid-template-columns:subgrid;color:var(--card-muted);align-items:center;font-size:.82rem;display:grid}.phase-goal-icon{justify-content:center;align-items:center;display:flex}.phase-goal-icon img{object-fit:contain;width:18px;height:18px}.phase-goal-icon img.ui-icon{width:14px;height:14px}.phase-goal-check{background:var(--goal-met);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:900;display:flex}.phase-goal-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.phase-goal-value{font-family:var(--font-num);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;color:var(--card-fg);font-weight:700}.phase-goal.met .phase-goal-label,.phase-goal.met .phase-goal-value{color:var(--goal-met)}.phase-done-check{background:var(--goal-met);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:16px;font-weight:900;display:flex}.phase-progress{align-items:center;gap:8px;display:flex}.phase-progress .ui-bar{flex:auto}.phase-percent{text-align:right;min-width:3.2em;font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--card-fg);font-size:.8rem;font-weight:700}.phase-build-actions{gap:8px;display:flex}.phase-build-actions>*{flex:1 1 0}.phase-remaining{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--card-muted);font-size:.8rem}.modal.staff-screen{text-align:left;align-items:stretch;max-width:420px;max-height:100%}.modal.staff-screen .modal-title,.modal.staff-screen .modal-sub{text-align:center}.staff-sections{flex-direction:column;gap:12px;min-height:0;padding:2px 2px 4px;display:flex;overflow-y:auto}.staff-section-title{font-family:var(--font-display);color:var(--card-fg);align-items:center;gap:6px;margin:0 0 6px;font-size:14px;font-weight:600;display:flex}.staff-section-count{border-radius:var(--radius-pill);background:var(--card-chip);font-family:var(--font-num);font-variant-numeric:tabular-nums;padding:0 7px;font-size:12px;font-weight:800}.staff-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.staff-entry{border:2px solid var(--frame-outline);background:var(--card-bg);color:var(--card-fg);box-shadow:0 3px 0 var(--frame-outline);border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:flex}.staff-entry.vacant{box-shadow:none;background:var(--phase-lock-bg);border-style:dashed}.staff-entry.locked{border-style:dashed;border-color:var(--phase-lock-border);box-shadow:none;opacity:.6;background:0 0}.staff-entry-text{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.staff-entry-name{font-family:var(--font-display);font-size:15px;font-weight:700;line-height:1.2}.staff-entry-role{color:var(--card-hint);font-size:12px;font-weight:700}.staff-entry-quote{color:var(--card-muted);margin-top:3px;font-size:12.5px;font-style:italic;line-height:1.3}.staff-portrait{flex:none;align-self:flex-start;width:50px;height:50px;position:relative}.staff-portrait-avatar{-webkit-user-select:none;user-select:none;width:100%;height:100%}.staff-portrait-avatar.silhouette{filter:grayscale();opacity:.55}.staff-portrait-biz{object-fit:contain;-webkit-user-select:none;user-select:none;width:24px;height:24px;position:absolute;bottom:-4px;right:-6px}.modal.staff-person{max-width:300px}.staff-person-quote{border:3px solid var(--comic-outline);background:var(--surface);color:var(--fg);box-shadow:0 4px 0 var(--comic-outline);font-family:var(--font-display);border-radius:16px;margin:4px 0 6px;padding:9px 14px 10px;font-size:15px;font-weight:600;line-height:1.3;position:relative}.staff-person-quote:after{content:"";background:var(--surface);border:3px solid var(--comic-outline);border-top:0;border-left:0;width:13px;height:13px;position:absolute;bottom:-10px;left:calc(50% - 8px);transform:rotate(45deg)}.staff-person-name{font-size:20px}.staff-entry .ui-btn svg{width:14px;height:14px}.modal.staff-dialog{max-width:320px}.staff-art{width:104px;height:104px;position:relative}.staff-art-main{-webkit-user-select:none;user-select:none;width:100%;height:100%}.staff-art-biz{background:var(--surface);border:2px solid var(--frame-outline);-webkit-user-select:none;user-select:none;border-radius:12px;width:44px;height:44px;padding:4px;position:absolute;bottom:-6px;right:-10px}.staff-wanted{font-family:var(--font-display);color:var(--card-hint);margin-top:-6px;font-size:14px;font-weight:600}.staff-need{color:var(--card-hint);font-weight:700}.staff-hire{height:auto;padding:5px 14px calc(5px + var(--btn-lip-h));flex-direction:column;gap:1px;line-height:1.1}.staff-hire-label{font-family:var(--font-body);font-size:.75rem}.staff-hired{z-index:35;cursor:pointer;background:#0a141e73;justify-content:center;align-items:center;padding:24px;animation:4s ease-in-out both staffHiredFade;display:flex;position:fixed;inset:0}@keyframes staffHiredFade{0%{opacity:0}10%,88%{opacity:1}to{opacity:0}}.staff-hired-card{text-align:center;color:#fff;flex-direction:column;align-items:center;gap:2px;max-width:300px;display:flex}.staff-hired-quote{border:3px solid var(--comic-outline);background:var(--surface);color:var(--fg);box-shadow:0 4px 0 var(--comic-outline);font-family:var(--font-display);border-radius:16px;margin-bottom:14px;padding:9px 14px 10px;font-size:15px;font-weight:600;line-height:1.3;animation:.36s cubic-bezier(.34,1.56,.64,1) .25s both staffQuoteIn;position:relative}.staff-hired-quote:after{content:"";background:var(--surface);border:3px solid var(--comic-outline);border-top:0;border-left:0;width:13px;height:13px;position:absolute;bottom:-10px;left:calc(50% - 8px);transform:rotate(45deg)}@keyframes staffQuoteIn{0%{opacity:0;transform:translateY(8px)scale(.85)}}.staff-hired-avatar{filter:drop-shadow(0 5px #14213d59);width:112px;height:112px;animation:.42s cubic-bezier(.34,1.56,.64,1) both staffAvatarIn}@keyframes staffAvatarIn{0%{transform:scale(.4)}}.staff-hired-kicker{border-radius:var(--radius-pill);background:var(--goal-met);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin-top:8px;padding:2px 10px;font-size:12px;font-weight:600}.staff-hired-name{font-family:var(--font-display);-webkit-text-stroke:5px var(--comic-outline);paint-order:stroke fill;font-size:26px;font-weight:700}.staff-hired-role{font-family:var(--font-display);-webkit-text-stroke:3px var(--comic-outline);paint-order:stroke fill;font-size:15px;font-weight:600}@media (width<=768px){.biz{grid-template-columns:56px 1fr}.biz-buy{min-width:80px}.biz-name{font-size:.95rem}}@media (prefers-reduced-motion:reduce){.biz{transition:none}.coin-stack-art,.coin-stack .coin-stack-art,.phase-dots>span.building,.biz.reveal,.region.celebrate,.phase-fx-toast,.biz-staff-slot.hire,.staff-hired,.staff-hired-quote,.staff-hired-avatar,.crystal-open.ready .crystal-icon{animation:none}.coin-stack-glow{opacity:.8;animation:none}.biz-puff,.phase-fx-snow,.phase-fx-banner{display:none}.wallet-amount.pop{animation:none}}.prestige-card{flex:none;align-items:center;gap:10px;margin:10px 0 6px;padding:10px 12px;display:flex}.prestige-card-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.prestige-card-title{font-family:var(--font-display);color:var(--card-fg);font-size:1.05rem;font-weight:700}.prestige-card-line{color:var(--card-muted);font-size:.8rem;font-weight:700}.prestige-card.ready .prestige-card-line{color:var(--good)}.modal.prestige-dialog{gap:12px;max-width:340px}.prestige-art{width:72px;height:72px;margin-top:2px}.modal-title.prestige-title{font-size:20px}.prestige-story{color:var(--fg);font-size:12.5px;line-height:1.45}.prestige-reward{border:3px solid var(--frame-outline);box-shadow:0 3px 0 var(--frame-outline), inset 0 0 0 3px var(--prestige-ring);background:var(--prestige-bg);border-radius:16px;flex-direction:column;align-self:stretch;align-items:center;gap:4px;padding:12px 14px 14px;display:flex}.prestige-reward-points{font-family:var(--font-display);color:var(--card-fg);align-items:center;gap:8px;font-size:24px;font-weight:700;display:flex}.prestige-reward.empty .prestige-reward-points{font-size:17px}.prestige-reward-hint{color:var(--card-muted);font-size:12px}.prestige-reward-now{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--card-muted);font-size:13px}.prestige-reward-after{background:var(--prestige-after-bg);font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--good);border-radius:999px;padding:3px 12px;font-size:19px;font-weight:700}.prestige-actions{flex-wrap:nowrap;align-self:stretch}.prestige-actions .btn-comic-light{flex:none}.prestige-go{flex:auto;justify-content:center;align-items:center;gap:6px;display:inline-flex}.prestige-go:disabled{opacity:.45;cursor:default}.btn{font-weight:700;font-family:var(--font-body);cursor:pointer;border:none;border-radius:9px;padding:9px 14px;font-size:12.5px}.btn-prestige{background:var(--accent-2);color:var(--surface)}.btn-prestige:disabled{background:var(--surface-2);color:var(--muted);cursor:default}.btn-small{white-space:nowrap;padding:5px 10px;font-size:11.5px}.btn-ad:not(:disabled){background:var(--accent);color:var(--buy-fg)}.btn-go{background:var(--buy-bg);color:var(--buy-fg);text-shadow:0 1px 0 var(--buy-lip)}.btn-comic{border:3px solid var(--comic-outline);box-shadow:0 4px 0 var(--comic-outline);font-family:var(--font-display);border-radius:14px;padding:10px 16px;font-size:15px;font-weight:600}.btn-comic:active:not(:disabled){box-shadow:0 2px 0 var(--comic-outline);transform:translateY(2px)}.btn-comic-light{background:var(--surface);color:var(--fg)}.btn-comic-teal{background:var(--btn-teal-bg);color:var(--btn-teal-fg);text-shadow:0 1px 0 var(--btn-teal-lip)}.btn-ghost{color:var(--muted);border:1px solid var(--line);background:0 0}.float-plus{z-index:4;white-space:nowrap;font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--good);text-shadow:0 0 2px var(--card-solid), 0 0 4px var(--card-solid);pointer-events:none;font-size:12.5px;font-weight:700;animation:.85s ease-out forwards floatUp;display:flex;position:absolute;top:calc(100% - 5px);left:calc(100% - 5px)}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,-30%)}15%{opacity:1}to{opacity:0;transform:translate(-50%,-190%)}}@media (prefers-reduced-motion:reduce){.float-plus{opacity:0;animation:none}}.app-footer{padding:4px calc(16px + var(--safe-right)) calc(9px + var(--safe-bottom)) calc(16px + var(--safe-left));color:var(--muted);text-align:center;background:var(--surface);border-top:1px solid var(--line);flex:none;font-size:10px}.settings-version{text-align:center;color:var(--muted);font-size:.75rem;font-family:var(--font-num);font-variant-numeric:tabular-nums;margin-top:10px}.settings-actions .reset-link{margin-right:auto}.app-safe-bottom{height:var(--safe-bottom);flex:none}.reset-link{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;margin-left:6px;padding:0;text-decoration:underline}.reset-link:hover{color:#d9443a}.btn-danger{color:#fff;background:#d9443a}.modal-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.modal-backdrop{padding:calc(24px + var(--safe-top)) calc(24px + var(--safe-right)) calc(24px + var(--safe-bottom)) calc(24px + var(--safe-left));z-index:30;background:#0a141e8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:300px;padding:20px;display:flex}img.modal-icon{width:60px;height:60px;margin:0 auto;display:block}.modal-title{font-family:var(--font-display);font-size:16px;font-weight:600}.modal-amount{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--accent);justify-content:center;align-items:center;gap:.1em;font-size:20px;font-weight:700;display:flex}.modal-sub{color:var(--muted);font-size:12px}.modal.offline-dialog{max-width:340px}.offline-facts{flex-direction:column;gap:2px;display:flex}.offline-bonus{color:var(--crystal-fg);font-weight:700}.offline-dialog .modal-actions{flex-wrap:nowrap;align-self:stretch;align-items:stretch}.offline-dialog .modal-actions>*{flex:1 1 0}.offline-multiply{height:auto;padding:10px 12px calc(10px + var(--btn-lip-h));font-family:var(--font-display);font-size:15px;font-weight:600}.consent-actions{flex-wrap:nowrap}.consent-actions .btn{flex:1}.modal-backdrop.ad-backdrop{z-index:40}.modal.settings{text-align:left;align-items:stretch;gap:4px;max-width:340px}.modal.settings .modal-title{text-align:center;margin-bottom:6px}.settings-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.settings-label{align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.settings-icon{text-align:center;width:1.4em;font-size:17px;line-height:1}.credits-list{text-align:left;max-height:min(55vh,420px);margin:4px 0 8px;overflow-y:auto}.credits-section h3{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:12px 0 4px;font-size:14px}.credits-entry{border-bottom:1px solid var(--line);padding:4px 0;font-size:13px}.credits-name{font-weight:700}.credits-name a{color:inherit}.credits-by{color:var(--muted)}.settings-links{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.settings-links a{text-decoration:none}.settings-row select{font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--fg);border-radius:8px;padding:4px 6px;font-size:13px}.segmented{background:var(--surface-2);border-radius:10px;padding:2px;display:flex}.segmented button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:5px 9px;font-size:12px;font-weight:700}.segmented button.active{background:var(--accent-2);color:var(--surface)}.switch{background:var(--locked);cursor:pointer;border:none;border-radius:999px;flex:none;width:46px;height:26px;padding:0;transition:background .2s;position:relative}.switch.on{background:var(--accent-2)}.switch-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch.on .switch-knob{transform:translate(20px)}.settings-actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;font-size:12px;display:flex}@media (prefers-reduced-motion:reduce){.switch,.switch-knob{transition:none}}.splash{z-index:50;cursor:pointer;-webkit-user-select:none;user-select:none;background:#1f86e0;transition:opacity .45s;position:fixed;inset:0;overflow:hidden}.splash.leaving{opacity:0;pointer-events:none}.splash-scene{object-fit:cover;object-position:center center;width:100%;height:100%;position:absolute;inset:0}.splash-shade{background:var(--splash-shade);pointer-events:none;position:absolute;inset:0}.splash-logo{left:50%;top:calc(3% + var(--safe-top));width:min(90vw,450px);animation:.6s cubic-bezier(.22,1,.36,1) both splashLogoIn;position:absolute;overflow:visible;transform:translate(-50%)}.splash-word{font-family:var(--font-body);font-weight:900}.splash-tap{left:50%;bottom:calc(4% + var(--safe-bottom));border:3px solid var(--splash-outline);color:var(--splash-outline);font-family:var(--font-display);white-space:nowrap;box-shadow:0 4px 0 var(--splash-outline);background:#fff;border-radius:999px;padding:10px 22px;font-size:17px;font-weight:700;animation:1.3s ease-in-out .8s infinite splashTapPulse;position:absolute;transform:translate(-50%)}@keyframes splashLogoIn{0%{opacity:0;transform:translate(-50%)translateY(-14px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes splashTapPulse{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.07)}}@media (prefers-reduced-motion:reduce){.splash{transition:none}.splash-logo,.splash-tap{animation:none}}.unlock-screen{z-index:35;max-width:var(--app-max-width);padding:calc(28px + var(--safe-top)) calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(16px + var(--safe-left));background:var(--unlock-sky);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:space-between;margin:0 auto;display:flex;position:fixed;inset:0;overflow:hidden}.unlock-bg{object-fit:cover;width:100%;height:100%;animation:1.4s ease-out both unlockBgIn;position:absolute;inset:0}.unlock-screen:after{content:"";background:var(--unlock-shade);pointer-events:none;position:absolute;inset:0}.unlock-head,.unlock-foot{z-index:1;flex-direction:column;display:flex;position:relative}.unlock-head{text-align:center;color:#fff;align-items:center;gap:6px;animation:.7s cubic-bezier(.34,1.56,.64,1) .15s both unlockHeadIn}.unlock-kicker{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;background:#14213d8c;border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:600}.unlock-name{font-family:var(--font-display);font-weight:700;font-size:min(46px, 11vw, (min(100vw, var(--app-max-width)) - 40px) / (var(--name-len) * .72));white-space:nowrap;letter-spacing:.02em;text-transform:uppercase;-webkit-text-stroke:7px var(--comic-outline);paint-order:stroke fill;text-shadow:0 4px 0 var(--comic-outline);margin:2px 0 0;line-height:1.05}.unlock-region{font-family:var(--font-display);-webkit-text-stroke:4px var(--comic-outline);paint-order:stroke fill;align-items:center;gap:8px;font-size:18px;font-weight:600;display:flex}.unlock-flag{width:26px;height:26px;box-shadow:0 0 0 2px var(--comic-outline);animation:.7s cubic-bezier(.34,1.56,.64,1) .4s both unlockFlagIn}.unlock-mult{font-family:var(--font-num);font-variant-numeric:tabular-nums;background:#14213d8c;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700}.unlock-foot{gap:12px;animation:.38s ease-out .3s both storyCardIn}.unlock-actions{gap:10px;display:flex}.unlock-actions .btn{flex:1;padding:12px 14px;font-size:16px}.unlock-travel{flex:1.4}@keyframes unlockBgIn{0%{transform:scale(1.08)}to{transform:none}}@keyframes unlockHeadIn{0%{opacity:0;transform:translateY(-24px)scale(.9)}to{opacity:1;transform:none}}@keyframes unlockFlagIn{0%{opacity:0;transform:scale(.2)rotate(-20deg)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.unlock-bg,.unlock-head,.unlock-flag,.unlock-foot{animation:none}}.story{z-index:45;max-width:var(--app-max-width);background:var(--unlock-sky);-webkit-user-select:none;user-select:none;margin:0 auto;position:fixed;inset:0;overflow:hidden}.story-scene{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.story:after{content:"";background:var(--story-shade);pointer-events:none;position:absolute;inset:0}.story-skip{z-index:2;top:calc(12px + var(--safe-top));right:calc(12px + var(--safe-right));border:2px solid var(--comic-outline);background:var(--surface);color:var(--fg);font-family:var(--font-body);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:700;position:absolute}.story-stage{z-index:1;left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right));bottom:calc(16px + var(--safe-bottom));flex-direction:column;align-items:stretch;display:flex;position:absolute}.story-sepp{filter:drop-shadow(0 6px #14213d40);order:-1;align-self:flex-start;width:min(54vw,210px);margin:0 0 -10px 6px;animation:.6s cubic-bezier(.34,1.56,.64,1) both storySeppIn}.story-card{border:3px solid var(--comic-outline);background:var(--surface);color:var(--fg);box-shadow:0 5px 0 var(--comic-outline);border-radius:18px;padding:18px 18px 14px;animation:.38s ease-out both storyCardIn;position:relative}.story-card:before{content:"";background:var(--surface);border-left:3px solid var(--comic-outline);border-top:3px solid var(--comic-outline);width:22px;height:22px;position:absolute;top:-15px;left:64px;transform:rotate(45deg)skew(8deg,8deg)}.story-title{font-family:var(--font-display);color:var(--accent);font-size:21px;font-weight:700;line-height:1.15}.story-text{margin:8px 0 14px;font-size:14.5px;line-height:1.5}.story-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.story-dots{gap:6px;display:flex}.story-dots span{background:var(--line);border-radius:50%;width:8px;height:8px}.story-dots span.active{background:var(--accent)}.story-next{padding:10px 20px;font-size:14px}@keyframes storySeppIn{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes storyCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.coach-target{animation:1.2s ease-in-out infinite coachPulse}.phase-card.coach-target{animation-name:coachPulse}@keyframes coachPulse{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 0 4px var(--accent)}}.coach-spot{z-index:26;pointer-events:none;border-radius:14px;position:fixed;box-shadow:0 0 0 200vmax #08121e9e}.coach-block{z-index:26;position:fixed}.coach-mark{z-index:27;border:3px solid var(--comic-outline);background:var(--surface);color:var(--fg);box-shadow:0 4px 0 var(--comic-outline);border-radius:16px;align-items:center;gap:8px;padding:8px 10px;animation:.32s cubic-bezier(.34,1.56,.64,1) both coachMarkIn;display:flex;position:fixed}.coach-mark.below{transform-origin:var(--arrow-x) 0}.coach-mark.above{transform-origin:var(--arrow-x) 100%}.coach-mark:before{content:"";left:calc(var(--arrow-x) - 8px);background:var(--surface);border:3px solid var(--comic-outline);width:13px;height:13px;position:absolute;transform:rotate(45deg)}.coach-mark.below:before{border-bottom:0;border-right:0;top:-9.5px}.coach-mark.above:before{border-top:0;border-left:0;bottom:-9.5px}@keyframes coachMarkIn{0%{opacity:0;transform:scale(.7)}}.coach-mark-sepp{border:2px solid var(--comic-outline);background:var(--medallion-bg);object-fit:cover;object-position:50% 15%;border-radius:50%;flex:none;width:38px;height:38px}.coach-mark-text{min-width:0;font-family:var(--font-display);flex:auto;margin:0;font-size:14px;font-weight:600;line-height:1.3}.coach-mark-close{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;align-self:flex-start;margin:-2px -4px 0 0;padding:0;font-size:18px;line-height:1}.coach-hand{z-index:28;pointer-events:none;filter:drop-shadow(0 3px 2px #0000004d);width:40px;height:48px;margin-left:-18px;animation:1.3s ease-in-out infinite coachTap;position:fixed}.coach-hand svg{display:block}.coach-hand-shape{fill:var(--snow);stroke:var(--comic-outline);stroke-width:2.4px;stroke-linejoin:round}.coach-hand-line{fill:none;stroke:var(--comic-outline);stroke-width:1.8px;stroke-linecap:round}@keyframes coachTap{0%,to{transform:translate(10px,14px)}45%{transform:translateY(2px)scale(.92)}60%{transform:translateY(2px)}}@media (prefers-reduced-motion:reduce){.story-sepp,.story-card,.coach-mark,.coach-hand{animation:none}.coach-target{box-shadow:0 0 0 3px var(--accent);animation:none}}.unlock-sepp{align-items:flex-end;gap:4px;display:flex}.unlock-sepp-face{filter:drop-shadow(0 4px #14213d40);flex:none;width:96px;margin-bottom:-12px}.unlock-sepp-bubble{border:3px solid var(--comic-outline);background:var(--surface);min-width:0;color:var(--fg);box-shadow:0 4px 0 var(--comic-outline);white-space:pre-line;border-radius:16px 16px 16px 4px;flex:auto;padding:10px 12px;font-size:13px;line-height:1.45;position:relative}.reward-toasts{top:calc(var(--safe-top) + 72px);max-width:var(--app-max-width);z-index:32;pointer-events:none;justify-content:center;margin:0 auto;display:flex;position:fixed;left:0;right:0}.reward-toast{border:var(--outline-w,3px) solid var(--frame-outline);box-shadow:0 3px 0 var(--frame-outline);background:var(--card-solid);color:var(--card-fg);font-family:var(--font-display);border-radius:999px;flex-direction:column;align-items:center;gap:2px;padding:8px 18px 10px;font-weight:600;animation:3.5s ease-out both rewardToast;display:flex}.reward-toast-event{font-size:14px}.reward-toast-amount,.phase-fx-crystals,.unlock-reward,.prestige-reward-crystals,.crystal-intro-amount,.crystal-ad-gain{font-family:var(--font-num);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:6px;font-weight:800;display:inline-flex}.reward-toast-amount{color:var(--crystal-fg);font-size:17px}@keyframes rewardToast{0%{opacity:0;transform:translateY(14px)scale(.9)}15%{opacity:1;transform:translateY(0)scale(1)}80%{opacity:1;transform:translateY(-8px)}to{opacity:0;transform:translateY(-22px)}}.phase-fx-crystals,.prestige-reward-crystals{color:var(--crystal-fg);font-size:16px}.prestige-reward-crystals{font-size:20px}.unlock-reward{-webkit-text-stroke:4px var(--comic-outline);paint-order:stroke fill;margin-top:4px;font-size:20px}.crystal-intro-amount{color:var(--crystal-fg);font-size:24px}.storage-warning{max-width:340px}.storage-warning-text p{margin:0 0 8px}.storage-warning-text p:last-child{margin-bottom:0}.crystal-ad{flex-direction:column;gap:4px;display:flex}.crystal-ad-free{color:var(--card-muted);font-size:13px;font-weight:800}.crystal-ad-gain{margin-left:8px}.crystal-ad-wait{height:auto;min-height:var(--btn-h);white-space:normal;padding-top:4px;padding-bottom:6px;font-size:14px;line-height:1.2}@media (prefers-reduced-motion:reduce){.reward-toast{animation:none}}
