:root{--night-deep:#14123a;--night-mid:#2a204e;--night-warm:#4a2a55;--night-glow:#6b3a5a;--star:#fff8ec;--star-soft:rgba(255,248,236,0.7);--moon:#ffe9c2;--aurora:rgba(25,200,185,0.18);--glass:rgba(255,255,255,0.10);--glass-strong:rgba(255,255,255,0.18);--glass-deep:rgba(20,18,58,0.55);--glass-border:rgba(255,255,255,0.22);--glass-border-soft:rgba(255,255,255,0.12);--text:#fff8ec;--text-muted:rgba(255,248,236,0.7);--text-disabled:rgba(255,248,236,0.4);--primary:#4ee0d0;--primary-hover:#6deadb;--primary-active:#2bc7b6;--flame:#f5862c;--flame-hot:#ffa64a;--flame-deep:#cc5b0a;--flame-amber:#ffce3d;--flame-amber-glow:#ffe086;--font:var(--font-nunito),var(--font-zen-maru),"M PLUS Rounded 1c",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--font-size-sm:12px;--font-size-base:14px;--font-size-lg:16px;--line-height-base:1.5715;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--radius-sm:12px;--radius-base:18px;--radius-lg:24px;--radius-pill:50px;--radius-full:999px;--border-width:2px;--border-width-thin:1px;--ease:cubic-bezier(0.4,0,0.2,1);--ease-out-quart:cubic-bezier(0.25,1,0.5,1);--ease-out-quint:cubic-bezier(0.22,1,0.36,1);--duration-fast:0.15s;--duration-base:0.25s;--duration-slow:0.35s;--height-sm:32px;--height-base:40px;--height-lg:48px;--layout-phone-max:430px;--layout-tablet-max:760px;--layout-desktop-max:1180px;--layout-desktop-wide-max:1360px;--layout-desktop-rail:96px;--layout-desktop-gutter:28px;--layout-desktop-radius:32px;--shadow-sm:0 2px 4px 0 rgba(10,9,29,0.25);--shadow-base:0 3px 10px 0 rgba(10,9,29,0.35);--shadow-lg:0 8px 24px 0 rgba(10,9,29,0.50);--text-rgb:255,248,236;--accent-rgb:245,134,44;--night-deep-rgb:20,18,58;--accent:var(--flame);--accent-hot:var(--flame-hot);--accent-deep:var(--flame-deep);--accent-amber:var(--flame-amber);--accent-amber-glow:var(--flame-amber-glow);--surface-glass:rgba(var(--text-rgb),0.10);--surface-glass-raised:rgba(var(--text-rgb),0.18);--surface-glass-sunk:rgba(var(--night-deep-rgb),0.55);--surface-border:rgba(var(--text-rgb),0.22);--surface-border-soft:rgba(var(--text-rgb),0.12);--surface-quiet:rgba(var(--text-rgb),0.04);--surface-light-bg:#ffffff;--surface-light-ink:#4c2c0d;--surface-light-ink-soft:rgba(76,44,13,0.78);--surface-light-muted:#a98960;--surface-light-muted-2:#c9b596;--surface-light-border:#ece0c6;--surface-light-bg-rgb:255,255,255;--surface-light-ink-rgb:76,44,13;--surface-light-border-rgb:236,224,198;--surface-light-card:color-mix(in srgb,var(--surface-light-bg) 94%,var(--accent-amber-glow) 6%);--surface-light-card-soft:color-mix(in srgb,var(--surface-light-bg) 88%,var(--accent-amber-glow) 12%);--glass:var(--surface-glass);--glass-strong:var(--surface-glass-raised);--glass-deep:var(--surface-glass-sunk);--glass-border:var(--surface-border);--glass-border-soft:var(--surface-border-soft);--text-xs:11px;--text-sm:13px;--text-base:14px;--text-md:16px;--text-lg:18px;--text-xl:22px;--text-2xl:30px;--text-hero:64px;--text-display:96px;--tracking-tight:0;--tracking-snug:0;--tracking-base:0;--tracking-wide:0.02em;--tracking-caps:0.1em;--z-behind:-1;--z-scene:0;--z-particle:1;--z-content:2;--z-header:3;--z-dock:4;--z-modal:50;--z-sheet:60;--z-toast:70;--z-purchase:80;--blur-sm:6px;--blur-md:12px;--blur-lg:14px;--blur-xl:18px;--saturate-glass:160%;--saturate-soft:140%;--shadow-card:var(--shadow-base);--shadow-float:var(--shadow-lg);--shadow-modal:0 24px 50px rgba(var(--night-deep-rgb),0.55);--shadow-push:0 3px 0 0 var(--accent-deep);--motion-quiet:2.8s ease-in-out;--motion-ritual:0.72s var(--ease-out-quart);--motion-celebration:1.6s var(--ease-out-quint);--tap:44px;--radius-xl:28px;--mood:night;--duo-green-500:#58cc02;--duo-green-600:#58a700;--duo-blue-400:#1cb0f6;--duo-blue-500:#0e8fcc;--duo-red-500:#ff4b4b;--duo-red-600:#d33c3c;--duo-orange-500:#ff9600;--duo-orange-600:#cc7600;--duo-purple-500:#ce82ff;--duo-purple-600:#a55fcc;--duo-yellow-400:#ffc800;--duo-yellow-500:#e5b300;--swan:#4b4b4b;--swan-soft:#777777;--swan-faint:#afafaf;--snow:#f7f7f7;--snow-soft:#e5e5e5;--snow-deep:#d7d7d7;--fg-rgb:255,248,236;--bg-rgb:20,18,58;--fg-primary:rgb(var(--fg-rgb));--fg-secondary:rgba(var(--fg-rgb),0.78);--fg-muted:rgba(var(--fg-rgb),0.56);--fg-disabled:rgba(var(--fg-rgb),0.35);--fg-on-accent:#ffffff;--bg-page:rgb(var(--bg-rgb));--bg-card:rgba(var(--bg-rgb),0.82);--bg-elevated:rgba(var(--bg-rgb),0.92);--bg-hud-pill:rgba(var(--bg-rgb),0.6);--bg-hud-pill-border:rgba(var(--fg-rgb),0.22);--btn-3d-offset:4px;--btn-3d-press-travel:3px;--btn-3d-hover-lift:-1px;--btn-radius:16px;--btn-radius-round:50%;--shadow-3d-button:0 var(--btn-3d-offset) 0 0 var(--accent-deep);--shadow-3d-button-hover:0 calc(var(--btn-3d-offset) + 1px) 0 0 var(--accent-deep);--shadow-3d-button-press:0 0 0 0 var(--accent-deep);--btn-secondary-bg:#ffffff;--btn-secondary-border:rgba(0,0,0,0.06);--btn-secondary-shadow-rest:0 var(--btn-3d-offset) 0 0 rgba(0,0,0,0.12);--btn-secondary-shadow-hover:0 calc(var(--btn-3d-offset) + 1px) 0 0 rgba(0,0,0,0.14);--btn-secondary-shadow-press:0 0 0 0 rgba(0,0,0,0.12);--hud-pill-height:32px;--hud-pill-padding-x:10px;--hud-pill-gap:6px;--hud-icon-size:20px;--hud-number-weight:800;--hud-number-size:var(--text-md);--radius-hud-pill:999px;--text-legibility-stroke:-1px -1px 0 rgba(0,0,0,0.92),1px -1px 0 rgba(0,0,0,0.92),-1px 1px 0 rgba(0,0,0,0.92),1px 1px 0 rgba(0,0,0,0.92),0 -1px 0 rgba(0,0,0,0.92),0 1px 0 rgba(0,0,0,0.92),-1px 0 0 rgba(0,0,0,0.92),1px 0 0 rgba(0,0,0,0.92);--text-backdrop-shadow:var(--text-legibility-stroke),0 2px 10px rgba(0,0,0,0.35);--streak:var(--duo-orange-500);--streak-deep:var(--duo-orange-600);--gem:var(--duo-blue-400);--gem-deep:var(--duo-blue-500);--heart:var(--duo-red-500);--heart-deep:var(--duo-red-600);--xp:var(--duo-green-500);--xp-deep:var(--duo-green-600);--gold:var(--duo-yellow-400);--gold-deep:var(--duo-yellow-500);--ultra:var(--duo-purple-500);--ultra-deep:var(--duo-purple-600);--font-weight-body:600;--font-weight-strong:700;--font-weight-display:900;--game-bg-deep:#0a0f1f;--game-bg-mid:#10162a;--game-coin:#ffcc00;--game-coin-tier-2:#ccff00;--game-coin-tier-3:#ff66cc;--game-coin-tier-4:#66e0ff;--game-streak-glow:#ff66cc;--game-bridge:#3a2a1c;--game-zone-safe:#ccff00;--game-zone-fall:#ff8d28}*,:after,:before{box-sizing:border-box;min-width:0}body,html{margin:0;padding:0}html{background:var(--night-deep)}body{font-family:var(--font);color:var(--fg-primary);display:grid;place-items:stretch;width:100vw;height:100dvh}@media (min-width:720px){body{background:radial-gradient(ellipse at 30% 20%,#2c2256 0,#15102e 55%,#050314 100%);place-items:center;padding:16px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.app{width:100%;max-width:100%;height:100%;background:radial-gradient(ellipse 80% 50% at 50% 100%,var(--night-glow) 0,var(--night-warm) 35%,var(--night-mid) 65%,var(--night-deep) 100%);display:flex;flex-direction:column;overflow:hidden;position:relative;isolation:isolate;transition:background var(--duration-slow) var(--ease),color var(--duration-slow) var(--ease)}@media (min-width:720px){.app{width:min(calc(100vw - 32px),var(--layout-desktop-max));max-width:var(--layout-desktop-max);height:min(calc(100dvh - 32px),920px);display:grid;grid-template-columns:var(--layout-desktop-rail) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);border-radius:var(--layout-desktop-radius);box-shadow:0 40px 90px -28px rgba(0,0,0,.7),0 0 0 1px rgba(255,248,236,.06),inset 0 1px 0 rgba(255,248,236,.08)}}.app:before{content:"";background:radial-gradient(ellipse 60% 30% at 80% 15%,var(--aurora) 0,transparent 70%),radial-gradient(ellipse 50% 25% at 15% 30%,rgba(255,166,74,.12) 0,transparent 70%)}.app:before,.stars{position:absolute;inset:0;pointer-events:none;z-index:var(--z-scene)}.stars{overflow:hidden}.stars svg{position:absolute;inset:0;width:100%;height:100%;display:block}@keyframes twinkle{0%,to{opacity:.85}50%{opacity:.35}}@keyframes twinkleSlow{0%,to{opacity:.6}50%{opacity:1}}.stars .s-fast{animation:twinkle 2.4s ease-in-out infinite}.stars .s-slow{animation:twinkleSlow 4.8s ease-in-out infinite}.stars .s-d1{animation-delay:.4s}.stars .s-d2{animation-delay:1.1s}.stars .s-d3{animation-delay:1.8s}.stars .s-d4{animation-delay:2.6s}@keyframes drift{0%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:.9}to{transform:translateY(-180px) translateX(20px);opacity:0}}.ember{position:absolute;width:4px;height:4px;border-radius:50%;background:radial-gradient(circle,#ffe086 0,#ffa64a 60%,transparent 100%);box-shadow:0 0 8px rgba(255,206,61,.8);pointer-events:none;z-index:var(--z-particle);animation:drift 7s ease-in infinite}.ember.e1{left:18%;bottom:20%;animation-delay:0s}.ember.e3{left:45%;bottom:16%;animation-delay:4.1s;width:5px;height:5px}.app-content{flex:1 1 auto;position:relative;z-index:var(--z-content);display:grid;place-items:center;padding:12px calc(env(safe-area-inset-right, 0px) + 24px) calc(env(safe-area-inset-bottom, 0px) + 282px) calc(env(safe-area-inset-left, 0px) + 24px);overflow:hidden;transition:opacity .28s var(--ease)}.adventures-core{width:100%;height:100%;min-height:0;display:grid;place-items:center;container-type:size}@media (min-width:720px){.app-content{grid-column:2;grid-row:2;min-height:0;padding:24px var(--layout-desktop-gutter);padding-bottom:176px;overflow:hidden}.adventures-core{width:min(100%,var(--layout-desktop-wide-max));max-width:var(--layout-desktop-wide-max);margin:0 auto}}.app:not([data-active-view=adventures]) .app-content{opacity:0;pointer-events:none}.view{position:absolute;inset:0;z-index:calc(var(--z-dock) + 1);display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top, 0px) + 72px) calc(env(safe-area-inset-right, 0px) + 20px) 140px calc(env(safe-area-inset-left, 0px) + 20px);visibility:hidden;pointer-events:none;transform:translateY(100%);transition:none}@media (min-width:720px){.view{inset:0 0 0 var(--layout-desktop-rail);padding:92px var(--layout-desktop-gutter) 132px var(--layout-desktop-gutter);border-radius:0 var(--layout-desktop-radius) var(--layout-desktop-radius) 0}}.app[data-active-overlay=achievement] .view-profile,.app[data-active-overlay=inventory] .view-inventory,.app[data-active-overlay=mission] .view-quests,.app[data-active-overlay=shop] .view-marketplace{visibility:visible;pointer-events:auto;transform:translateY(0);transition:none}.overlay-nav{position:-webkit-sticky;position:sticky;top:0;z-index:5;display:flex;align-items:center;min-height:calc(env(safe-area-inset-top, 0px) + 64px);padding:calc(env(safe-area-inset-top, 0px) + 12px) calc(env(safe-area-inset-right, 0px) + 20px) 10px calc(env(safe-area-inset-left, 0px) + 20px);color:var(--fg-primary);background:linear-gradient(180deg,color-mix(in oklch,var(--night-deep) 92%,var(--night-mid) 8%) 0,color-mix(in oklch,var(--night-deep) 72%,transparent) 78%,transparent 100%);font-family:var(--font)}.overlay-nav h1{margin:0;color:currentColor;font-size:22px;font-weight:900;line-height:1;letter-spacing:.01em;text-shadow:var(--text-backdrop-shadow)}.overlay-bottom-action{position:-webkit-sticky;position:sticky;bottom:0;z-index:5;display:flex;justify-content:center;margin-top:auto;padding:42px calc(env(safe-area-inset-right, 0px) + 20px) calc(env(safe-area-inset-bottom, 0px) + 18px) calc(env(safe-area-inset-left, 0px) + 20px);background:linear-gradient(0deg,color-mix(in oklch,var(--night-deep) 94%,var(--night-mid) 6%) 0,color-mix(in oklch,var(--night-deep) 78%,transparent) 68%,transparent 100%)}.overlay-back{width:min(100%,360px);height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 24px;color:var(--fg-primary);background:color-mix(in oklch,var(--fg-primary) 9%,var(--night-mid));border:var(--border-width) solid color-mix(in oklch,var(--fg-primary) 22%,var(--night-deep));border-radius:20px;cursor:pointer;font-family:var(--font);font-size:16px;font-weight:900;letter-spacing:.03em;line-height:1;box-shadow:0 var(--btn-3d-offset) 0 0 color-mix(in oklch,var(--fg-primary) 8%,var(--night-deep));transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.overlay-back:hover{background:color-mix(in oklch,var(--fg-primary) 12%,var(--night-mid));transform:translateY(-1px);box-shadow:0 calc(var(--btn-3d-offset) + 1px) 0 0 color-mix(in oklch,var(--fg-primary) 10%,var(--night-deep))}.overlay-back:active{transform:translateY(var(--btn-3d-press-travel));box-shadow:0 0 0 0 color-mix(in oklch,var(--fg-primary) 10%,var(--night-deep))}.overlay-back:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.bottom-dock{position:absolute;right:0;bottom:0;left:0;isolation:isolate;z-index:calc(var(--z-dock) + 2);display:flex;flex-direction:column}@media (min-width:720px){.bottom-dock{left:var(--layout-desktop-rail)}}.bottom-dock:before{content:"";position:absolute;inset:-24px 0 0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(20,18,58,.78) 24%,rgba(20,18,58,.96))}.adventure-action-cluster{position:relative;isolation:isolate}.adventure-action-cluster:before{content:"";position:absolute;inset:-24px 0 8px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 72% 50% at 50% 34%,rgba(74,42,85,.38) 0,rgba(42,32,78,.26) 42%,transparent 76%),radial-gradient(ellipse 40% 28% at 18% 42%,rgba(107,58,90,.18) 0,transparent 72%),radial-gradient(ellipse 38% 26% at 82% 46%,rgba(255,166,74,.08) 0,transparent 74%);filter:blur(1px)}.cta-row{padding:12px calc(env(safe-area-inset-right, 0px) + 20px) 14px calc(env(safe-area-inset-left, 0px) + 20px);display:flex;justify-content:center}.app[data-active-view=adventures] .dock-slot[data-view=adventures] .cta-row{padding-bottom:46px}.dock-slot{display:none}.app[data-active-overlay=none][data-active-view=adventures] .dock-slot[data-view=adventures],.app[data-active-overlay=none][data-active-view=league] .dock-slot[data-view=league],.app[data-active-overlay=none][data-active-view=marketplace] .dock-slot[data-view=marketplace],.app[data-active-overlay=none][data-active-view=profile] .dock-slot[data-view=profile],.app[data-active-overlay=none][data-active-view=quests] .dock-slot[data-view=quests],.app[data-active-overlay=none][data-active-view=quickplay] .dock-slot[data-view=quickplay]{display:contents}@media (min-width:720px){.app[data-active-view=adventures] .dock-slot[data-view=adventures] .cta-row{padding-bottom:24px}}.view-placeholder{margin:auto;text-align:center;color:var(--fg-muted);font-family:var(--font);max-width:280px;padding:0 16px}.view-placeholder h2{font-size:28px;font-weight:800;color:var(--fg-primary);margin:0 0 12px;letter-spacing:.005em;line-height:1.2;text-shadow:var(--text-backdrop-shadow)}.view-placeholder p{font-size:14px;font-weight:600;margin:0;letter-spacing:.01em;line-height:1.5}.app-header{padding:calc(env(safe-area-inset-top, 0px) + 16px) calc(env(safe-area-inset-right, 0px) + 20px) 10px calc(env(safe-area-inset-left, 0px) + 20px);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;position:relative;z-index:var(--z-header)}@media (min-width:720px){.app-header{grid-column:2;grid-row:1;padding:22px var(--layout-desktop-gutter) 12px}}.brand-row{display:flex;align-items:center;gap:12px;min-width:0;flex-shrink:1}.streak-chip{display:inline-flex;align-items:center;gap:6px;height:var(--height-base);padding:0 14px 0 10px;border-radius:var(--radius-full);background:var(--accent);border:var(--border-width) solid var(--accent);color:var(--fg-on-accent);font-family:var(--font);font-weight:800;font-size:var(--font-size-lg);letter-spacing:.01em;cursor:pointer;outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:1;flex-shrink:0;text-shadow:0 1px 0 rgba(126,35,4,.4);box-shadow:0 var(--btn-3d-offset) 0 0 var(--accent-deep);transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.streak-chip:hover{transform:translateY(var(--btn-3d-hover-lift));box-shadow:0 calc(var(--btn-3d-offset) + 1px) 0 0 var(--accent-deep)}.streak-chip:active{transform:translateY(var(--btn-3d-press-travel));box-shadow:0 0 0 0 var(--accent-deep)}.streak-chip:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.streak-flame-icon{width:18px;height:18px;fill:var(--accent-amber-glow);filter:drop-shadow(0 0 4px rgba(255,224,134,.8))}.streak-count{line-height:1;padding-right:2px}.header-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0}.header-settings{width:var(--height-base);height:var(--height-base);display:grid;place-items:center;flex:0 0 auto;padding:0;color:var(--text);background:linear-gradient(180deg,color-mix(in oklch,var(--night-mid) 78%,var(--fg-primary) 10%),color-mix(in oklch,var(--night-deep) 86%,var(--fg-primary) 6%));border:0;border-radius:var(--radius-full);box-shadow:0 var(--btn-3d-offset) 0 0 rgba(var(--night-deep-rgb),.36);cursor:pointer;outline:none;transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.header-settings:hover{transform:translateY(var(--btn-3d-hover-lift));box-shadow:0 calc(var(--btn-3d-offset) + 1px) 0 0 rgba(var(--night-deep-rgb),.42)}.header-settings:active{transform:translateY(var(--btn-3d-press-travel));box-shadow:0 0 0 0 rgba(var(--night-deep-rgb),.36)}.header-settings:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.header-settings svg{width:25px;height:25px;fill:currentColor}.currency{position:relative;display:inline-flex;align-items:center;gap:9px;min-width:90px;height:var(--height-base);padding:0 15px 0 9px;background:linear-gradient(180deg,color-mix(in oklch,var(--night-mid) 72%,var(--gem) 16%),color-mix(in oklch,var(--night-deep) 82%,var(--gem) 10%));border:0;border-radius:var(--radius-full);color:var(--text);font-family:var(--font);font-size:var(--text-md);font-weight:900;letter-spacing:var(--tracking-base);line-height:1;text-shadow:none;box-shadow:0 var(--btn-3d-offset) 0 0 rgba(var(--night-deep-rgb),.36);transform-origin:center}.currency.is-fed{animation:currencyFeedImpact .98s var(--ease-out-quint) both}.currency.is-fed:after{content:"";position:absolute;inset:-8px;border:2px solid color-mix(in srgb,var(--gem) 64%,var(--accent-amber-glow));border-radius:inherit;pointer-events:none;animation:currencyFeedRing .74s ease-out both}.currency-gem{width:25px;height:23px;flex:0 0 auto;display:block;object-fit:contain;transform:none;box-shadow:none}.currency-amount{min-width:4ch;height:1em;display:inline-flex;align-items:center;justify-content:flex-end;overflow:hidden;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.currency-amount-value{display:block;line-height:1}.currency-amount.is-rolling .currency-amount-value{animation:currencyAmountRoll .22s linear infinite}@keyframes currencyFeedImpact{0%{transform:translateY(0) rotate(0deg) scale(1)}12%{transform:translateY(-2px) rotate(-4deg) scale(1.06)}24%{transform:translateY(1px) rotate(4deg) scale(1.12)}36%{transform:translateY(-1px) rotate(-5deg) scale(1.16)}50%{transform:translateY(1px) rotate(5deg) scale(1.12)}66%{transform:translateY(-1px) rotate(-2deg) scale(1.06)}82%{transform:translateY(0) rotate(1deg) scale(1.02)}to{transform:translateY(0) rotate(0deg) scale(1)}}@keyframes currencyFeedRing{0%{opacity:.95;transform:scale(.82)}70%{opacity:.35}to{opacity:0;transform:scale(1.35)}}@keyframes currencyAmountRoll{0%{opacity:.72;filter:blur(.35px);transform:translateY(58%)}48%{opacity:1;filter:blur(0);transform:translateY(-16%)}to{opacity:1;filter:blur(0);transform:translateY(0)}}.mascot-stage{position:relative;display:grid;place-items:center;width:min(100%,480px);max-width:480px}.mascot-stage-spaceship{width:min(58vw,230px);max-width:230px}.mascot-stage:before{content:"";inset:-10% -10% 0 -10%;background:radial-gradient(ellipse 60% 60% at 50% 50%,rgba(255,224,134,.25) 0,rgba(245,134,44,.1) 35%,transparent 70%);filter:blur(8px);z-index:var(--z-behind)}.mascot-shadow,.mascot-stage:before{position:absolute;pointer-events:none}.mascot-shadow{bottom:-6px;left:50%;width:60%;height:18px;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(0,0,0,.35) 0,transparent 70%);filter:blur(2px);animation:shadowPulse 4.5s ease-in-out infinite}@keyframes shadowPulse{0%,to{transform:translateX(-50%) scale(1);opacity:.55}50%{transform:translateX(-50%) scale(.85);opacity:.4}}.mascot{width:100%;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25)) drop-shadow(0 8px 20px rgba(0,0,0,.35)) drop-shadow(0 0 30px rgba(255,166,74,.25));animation:mascotFloat 4.5s ease-in-out infinite;transform-origin:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.mascot-stage-spaceship .mascot{filter:drop-shadow(0 1px 1px rgba(0,0,0,.22)) drop-shadow(0 8px 18px rgba(0,0,0,.32))}.mascot-stage-spaceship:before{inset:-14% -18% -2%;background:radial-gradient(ellipse 64% 58% at 50% 46%,rgba(177,242,244,.18) 0,rgba(131,102,206,.1) 42%,transparent 74%)}.mascot-stage-spaceship .mascot-shadow{width:52%;bottom:2px}@media (min-width:720px){.mascot-stage{width:min(48vw,560px);width:clamp(280px,42cqw,620px);max-width:620px}.mascot-stage-spaceship{width:min(32vw,300px);width:clamp(260px,36cqw,560px);max-width:560px}}@keyframes mascotFloat{0%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-14px) rotate(3deg)}to{transform:translateY(0) rotate(-3deg)}}.onboarding-screen{position:relative;z-index:var(--z-content);grid-column:1/-1;grid-row:1/-1;flex:1 1 auto;width:100%;min-height:100%;display:grid;place-items:center;padding:calc(env(safe-area-inset-top, 0px) + 28px) calc(env(safe-area-inset-right, 0px) + 24px) calc(env(safe-area-inset-bottom, 0px) + 28px) calc(env(safe-area-inset-left, 0px) + 24px);overflow:hidden}.onboarding-stage{position:relative;width:min(100%,420px);height:min(100%,640px);min-height:min(640px,calc(100dvh - 56px));display:grid;place-items:center}.onboarding-screen .mascot-stage{position:absolute;top:63%;left:50%;z-index:1;width:min(78vw,330px);max-width:330px;transform:translate(-50%,-50%)}.onboarding-bubble{position:absolute;top:6%;left:50%;z-index:2;width:min(100%,360px);padding:18px 18px 16px;color:#4c2c0d;background:#fff8ec;border:1px solid #f0d9b8;border-radius:26px 26px 26px 10px;box-shadow:0 8px 24px 0 rgba(10,9,29,.5);font-family:var(--font);transform:translateX(-50%)}.onboarding-bubble:after{content:"";position:absolute;bottom:-9px;left:54px;width:18px;height:18px;background:#fff8ec;border-right:1px solid #f0d9b8;border-bottom:1px solid #f0d9b8;transform:rotate(45deg)}.onboarding-speaker{display:block;margin-bottom:8px;color:#9d3c19;font-size:13px;font-weight:900;line-height:1;letter-spacing:0;text-transform:uppercase}.onboarding-bubble p{min-height:36px;margin:0;font-size:16px;font-weight:var(--font-weight-body);line-height:1.5715;white-space:pre-line}.onboarding-energy-highlight{color:var(--accent);font-weight:900}.onboarding-caret{display:inline-block;width:2px;height:1em;margin-left:2px;transform:translateY(2px);background:currentColor;animation:onboardingCaretBlink .8s steps(2,start) infinite}@keyframes onboardingCaretBlink{0%,45%{opacity:1}46%,to{opacity:0}}.onboarding-name-input{width:100%;height:48px;margin-top:16px;padding:0 16px;color:#4c2c0d;background:#ffffff;border:1px solid #f0d9b8;border-radius:18px;font:inherit;font-size:16px;font-weight:800;line-height:1;outline:none}.onboarding-name-input::placeholder{color:#a98960}.onboarding-name-input:focus{border-color:var(--accent-amber);box-shadow:0 0 0 3px rgba(255,206,61,.22)}.onboarding-next{display:inline-flex;align-items:center;justify-content:center;min-width:112px;height:42px;margin-top:16px;padding:0 18px;color:#27142d;background:linear-gradient(180deg,#ffe59b,#ffb24d);border:0;border-radius:999px;box-shadow:0 4px 0 #b95c25;cursor:pointer;font:inherit;font-size:14px;font-weight:900;line-height:1;transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),filter var(--duration-fast) var(--ease)}.onboarding-next:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 5px 0 #b95c25}.onboarding-next:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #b95c25}.onboarding-next:disabled{cursor:not-allowed;filter:saturate(.65);opacity:.62}.onboarding-next:focus-visible{outline:2px solid var(--fg-primary);outline-offset:3px}@media (min-width:720px){.onboarding-stage{width:min(100%,500px);height:min(100%,720px);min-height:min(720px,calc(100dvh - 56px))}.onboarding-screen .mascot-stage{top:65%;width:min(34vw,380px);max-width:380px}.onboarding-bubble{top:7%;width:min(100%,410px)}}.paywall-screen{position:relative;inset:0;z-index:7;width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;padding:calc(env(safe-area-inset-top, 0px) + 34px) calc(env(safe-area-inset-right, 0px) + 22px) calc(env(safe-area-inset-bottom, 0px) + 0px) calc(env(safe-area-inset-left, 0px) + 22px);overflow:hidden;color:var(--fg-primary)}.paywall-screen:before{background:color-mix(in oklch,var(--gem) 82%,var(--snow) 18%)}.paywall-screen:after,.paywall-screen:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}.paywall-screen:after{background:radial-gradient(circle at 20% 22%,rgba(var(--text-rgb),.56) 0 2px,transparent 3px),radial-gradient(circle at 77% 18%,rgba(var(--text-rgb),.52) 0 2px,transparent 3px),radial-gradient(circle at 68% 34%,rgba(var(--text-rgb),.44) 0 1.6px,transparent 2.6px),radial-gradient(circle at 30% 38%,rgba(var(--text-rgb),.4) 0 1.6px,transparent 2.6px),radial-gradient(circle at 54% 16%,rgba(var(--text-rgb),.5) 0 1.6px,transparent 2.6px),radial-gradient(circle at 10% 70%,rgba(var(--text-rgb),.36) 0 2px,transparent 3px),radial-gradient(circle at 86% 74%,rgba(var(--text-rgb),.36) 0 2px,transparent 3px),radial-gradient(circle at 50% 58%,rgba(var(--text-rgb),.3) 0 1.4px,transparent 2.4px),radial-gradient(circle at 40% 82%,rgba(var(--text-rgb),.26) 0 1.4px,transparent 2.4px),radial-gradient(circle at 64% 84%,rgba(var(--text-rgb),.28) 0 1.4px,transparent 2.4px);animation:paywallConstellationDrift 7s ease-in-out infinite}.paywall-content{position:relative;width:min(100%,430px);margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;flex:1 1 auto;gap:16px}.paywall-content:before{content:"";position:absolute;top:122px;left:50%;z-index:-1;width:min(360px,86vw);aspect-ratio:1;border-radius:var(--radius-full);background:repeating-conic-gradient(from 12deg,rgba(var(--text-rgb),.2) 0deg 6deg,transparent 6deg 18deg);opacity:.42;transform:translateX(-50%) scale(.76);animation:paywallSunburstSpin 13s linear infinite;-webkit-mask-image:radial-gradient(circle,transparent 0 26%,#000 28% 58%,transparent 66%);mask-image:radial-gradient(circle,transparent 0 26%,#000 28% 58%,transparent 66%)}.paywall-brand{margin-top:2px;display:inline-flex;align-items:baseline;gap:6px;font-size:var(--text-2xl);font-weight:900;line-height:1;text-transform:lowercase;letter-spacing:-.02em;opacity:0;animation:paywallBrandIn .46s var(--ease-out-quart) .04s forwards}.paywall-brand-main{color:var(--fg-primary)}.paywall-brand-plus{color:var(--accent)}.paywall-hero{position:relative;margin-top:clamp(42px,14vh,132px);margin-bottom:6px;align-self:center;opacity:0;transform:translateY(18px) scale(.92) rotate(-3deg);animation:paywallHeroIn .62s var(--ease-out-quart) .14s forwards}.paywall-hero:after,.paywall-hero:before{content:"";position:absolute;inset:-22% -26%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 18% 38%,rgba(var(--text-rgb),.78) 0 3px,transparent 4px),radial-gradient(circle at 28% 72%,rgba(var(--text-rgb),.58) 0 2px,transparent 3px),radial-gradient(circle at 78% 28%,rgba(var(--text-rgb),.7) 0 2px,transparent 3px),radial-gradient(circle at 84% 66%,rgba(var(--text-rgb),.5) 0 2px,transparent 3px)}.paywall-hero:after{inset:-28% -34%;background:radial-gradient(circle at 12% 58%,rgba(var(--text-rgb),.48) 0 1.5px,transparent 2.5px),radial-gradient(circle at 40% 18%,rgba(var(--text-rgb),.54) 0 1.5px,transparent 2.5px),radial-gradient(circle at 64% 82%,rgba(var(--text-rgb),.44) 0 1.5px,transparent 2.5px),radial-gradient(circle at 92% 48%,rgba(var(--text-rgb),.5) 0 1.5px,transparent 2.5px);animation:paywallHeroSparkles 3.8s ease-in-out infinite}.paywall-hero .mascot-stage:after{content:"";position:absolute;inset:-16%;z-index:-1;border:2px solid rgba(var(--text-rgb),.42);border-radius:var(--radius-full);opacity:0;transform:scale(.72);animation:paywallOrbitPulse 2.6s var(--ease-out-quart) .48s infinite}.paywall-hero .mascot-stage{width:min(220px,58vw);margin-inline:auto}.paywall-hero .mascot-shadow,.paywall-hero .mascot-stage:before{display:none}.paywall-hero .mascot{animation:none;transform:none;filter:drop-shadow(0 1px 0 #ffffff) drop-shadow(1px 0 0 #ffffff) drop-shadow(0 -1px 0 #ffffff) drop-shadow(-1px 0 0 #ffffff) drop-shadow(1px 1px 0 #ffffff) drop-shadow(-1px 1px 0 #ffffff) drop-shadow(1px -1px 0 #ffffff) drop-shadow(-1px -1px 0 #ffffff) drop-shadow(0 4px 10px rgba(30,110,155,.22))}.paywall-copy{margin:0;color:var(--fg-primary);font-size:var(--text-xl);font-weight:var(--font-weight-display);line-height:1.12;text-align:center;opacity:0;transform:translateY(12px);animation:paywallFadeUp .44s var(--ease-out-quart) .32s forwards}.paywall-paging{display:inline-flex;align-items:center;gap:10px;margin-top:2px}.paywall-paging span{width:8px;height:8px;border-radius:var(--radius-full);background:rgba(var(--text-rgb),.35)}.paywall-paging span.is-active{background:rgba(var(--text-rgb),.95)}.paywall-actions{width:min(100%,420px);margin:0 auto;padding:0 0 calc(env(safe-area-inset-bottom, 0px) + 22px);display:flex;flex-direction:column;align-items:stretch;gap:14px;opacity:0;transform:translateY(18px);animation:paywallFadeUp .5s var(--ease-out-quart) .44s forwards}.paywall-price-note{max-width:100%;margin:0 auto 2px;color:rgba(var(--text-rgb),.9);font-size:var(--text-sm);font-weight:var(--font-weight-strong);line-height:1.35;text-align:center;white-space:nowrap}@media (max-width:380px){.paywall-price-note{white-space:normal}}.paywall-cta-row{display:flex;width:100%;margin:0}.paywall-cta-row .btn-start{width:100%;max-width:100%}.paywall-dismiss{padding:0;color:var(--fg-primary);background:transparent;border:0;cursor:pointer;font-family:var(--font);font-size:var(--text-md);font-weight:900;letter-spacing:var(--tracking-wide);text-transform:uppercase;opacity:.96}.paywall-dismiss:focus-visible{outline:2px solid var(--accent-amber);outline-offset:4px}@media (min-width:720px){.paywall-brand{font-size:34px}.paywall-hero .mascot-stage{width:min(260px,42vw)}}@keyframes paywallConstellationDrift{0%,to{opacity:.58;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-8px) scale(1.02)}}@keyframes paywallHeroSparkles{0%,to{opacity:.52;transform:scale(.98)}50%{opacity:1;transform:scale(1)}}@keyframes paywallSunburstSpin{0%{transform:translateX(-50%) scale(.76) rotate(0deg)}50%{opacity:.56;transform:translateX(-50%) scale(.82) rotate(180deg)}to{transform:translateX(-50%) scale(.76) rotate(1turn)}}@keyframes paywallOrbitPulse{0%{opacity:0;transform:scale(.72)}35%{opacity:.58}to{opacity:0;transform:scale(1.18)}}@keyframes paywallBrandIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes paywallHeroIn{0%{opacity:0;transform:translateY(18px) scale(.92) rotate(-3deg)}68%{opacity:1;transform:translateY(-3px) scale(1.03) rotate(1deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0deg)}}@keyframes paywallFadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.btn-start{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;max-width:360px;height:52px;padding:0 36px;font-family:var(--font);font-weight:800;font-size:18px;letter-spacing:.03em;color:var(--fg-on-accent);background:var(--accent);border:var(--border-width) solid var(--accent);border-radius:20px;cursor:pointer;outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:1;white-space:nowrap;text-shadow:0 1px 0 rgba(126,35,4,.5);box-shadow:0 var(--btn-3d-offset) 0 0 var(--accent-deep);transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.btn-start:hover:not(:disabled){background:var(--accent);border-color:var(--accent);transform:translateY(var(--btn-3d-hover-lift));box-shadow:0 calc(var(--btn-3d-offset) + 1px) 0 0 var(--accent-deep)}.btn-start:active:not(:disabled){background:var(--accent);border-color:var(--accent);transform:translateY(var(--btn-3d-press-travel));box-shadow:0 0 0 0 var(--accent-deep)}.btn-start:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.btn-start:disabled{cursor:not-allowed;opacity:1;color:color-mix(in oklch,var(--fg-primary) 68%,var(--night-mid));background:color-mix(in oklch,var(--fg-muted) 30%,var(--night-mid));border-color:color-mix(in oklch,var(--fg-muted) 30%,var(--night-mid));text-shadow:none;box-shadow:0 var(--btn-3d-offset) 0 0 color-mix(in oklch,var(--fg-muted) 18%,var(--night-deep))}.btn-start-locked{letter-spacing:.02em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"tnum"}.btn-start-locked,.btn-start-locked:disabled{color:color-mix(in oklch,var(--accent-amber) 78%,var(--fg-primary))}.cta-start-group{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:360px}.cta-start-group .btn-start{flex:1 1 auto;max-width:none;padding:0 18px}.adv-checkin{width:100%;max-height:128px;align-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin:10px auto 0;padding:0;color:var(--fg-primary);font-family:var(--font);opacity:1;overflow:visible;transform:none;transition:opacity .28s var(--ease),max-height .34s var(--ease-out-quart),margin .34s var(--ease-out-quart),transform .34s var(--ease-out-quart)}.adv-checkin.is-dismissed{max-height:0;margin-top:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateY(8px) scale(.98)}.adv-checkin-slots{justify-content:center}.adv-checkin-slots,.adv-checkin-step{position:relative;display:inline-flex;align-items:center}.adv-checkin-slot{position:relative;z-index:2;width:63px;height:63px;display:grid;place-items:center;padding:0;color:var(--fg-muted);background:color-mix(in oklch,var(--night-mid) 72%,var(--night-deep) 28%);border:4px solid color-mix(in oklch,var(--fg-muted) 24%,var(--night-deep));border-radius:999px;cursor:pointer;outline:none;font-family:var(--font);font-weight:900;line-height:1;filter:grayscale(1) saturate(.3);box-shadow:inset 0 1px 0 rgba(var(--fg-rgb),.06);transition:transform var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),filter var(--duration-fast) var(--ease)}.adv-checkin-slot:hover{color:var(--fg-primary);border-color:rgba(var(--fg-rgb),.28);transform:translateY(-1px)}.adv-checkin-slot:active{transform:translateY(1px)}.adv-checkin-slot:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.adv-checkin-slot.is-claimable{color:var(--accent-amber-glow);background:color-mix(in oklch,var(--accent) 36%,var(--night-mid));border-color:var(--accent-amber);filter:none;box-shadow:inset 0 1px 0 rgba(var(--fg-rgb),.18),0 0 18px color-mix(in oklch,var(--accent-amber) 34%,transparent);animation:checkinClaimPulse 1.35s ease-in-out infinite}.adv-checkin-slot.is-claimed{color:color-mix(in oklch,var(--fg-muted) 68%,var(--night-deep));background:color-mix(in oklch,var(--night-mid) 94%,var(--fg-primary) 6%);border-color:color-mix(in oklch,var(--fg-muted) 30%,var(--night-deep))}.adv-checkin-link{position:relative;z-index:1;width:72px;height:12px;margin:0 -10px;border-radius:999px;background:color-mix(in oklch,var(--fg-muted) 35%,var(--night-deep))}.adv-checkin-link.is-claimable{background:color-mix(in oklch,var(--accent-amber) 58%,var(--night-mid))}.adv-checkin-link.is-claimed{background:color-mix(in oklch,var(--xp) 46%,var(--night-mid))}.adv-checkin-step:nth-child(2) .adv-checkin-link{width:88px;margin-right:-24px;z-index:1}.adv-checkin-hint{margin:0;color:var(--fg-muted);font-size:var(--text-xs);font-weight:var(--font-weight-strong);line-height:1.25;text-align:center}.adv-checkin-icon{width:33px;height:33px;fill:currentColor}.adv-checkin-img{width:38px;height:38px;display:block;object-fit:contain;filter:none}.adv-checkin-slot:has(.adv-checkin-img){filter:none}.adv-checkin-step:nth-child(3) .adv-checkin-slot{z-index:2;overflow:visible;filter:none;isolation:isolate;background:transparent;border-color:transparent;box-shadow:none}.adv-checkin-step:nth-child(3) .adv-checkin-slot:before{content:"";position:absolute;inset:0;z-index:-1;border:4px solid color-mix(in oklch,var(--fg-muted) 24%,var(--night-deep));border-radius:inherit;background:color-mix(in oklch,var(--night-mid) 72%,var(--night-deep) 28%);box-shadow:inset 0 1px 0 rgba(var(--fg-rgb),.06);display:none}.adv-checkin-step:nth-child(3) .adv-checkin-slot.is-claimable:before{background:color-mix(in oklch,var(--accent) 36%,var(--night-mid));border-color:var(--accent-amber);box-shadow:inset 0 1px 0 rgba(var(--fg-rgb),.18),0 0 18px color-mix(in oklch,var(--accent-amber) 34%,transparent)}.adv-checkin-step:nth-child(3) .adv-checkin-slot.is-claimed:before{background:color-mix(in oklch,var(--night-mid) 70%,var(--fg-primary) 6%);border-color:color-mix(in oklch,var(--fg-muted) 30%,var(--night-deep))}.adv-checkin-step:nth-child(3) .adv-checkin-img{position:relative;z-index:1;width:82px;height:82px;transform:translateX(-9px) translateY(-11px);filter:drop-shadow(0 0 3px rgba(255,255,255,.95)) drop-shadow(0 0 5px rgba(255,255,255,.64)) drop-shadow(0 8px 10px rgba(var(--night-deep-rgb),.34))}.adv-checkin-step:nth-child(3) .adv-checkin-slot.is-claimed .adv-checkin-img{filter:drop-shadow(0 8px 10px rgba(var(--night-deep-rgb),.28))}.adv-checkin-check{position:absolute;z-index:4;right:-7px;bottom:-6px;width:29px;height:29px;padding:3px;color:var(--fg-on-accent);background:var(--xp);border:3px solid var(--night-deep);border-radius:999px;fill:none;stroke:var(--fg-on-accent);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}@keyframes checkinClaimPulse{0%,to{transform:translateY(0) scale(1);box-shadow:0 0 0 0 color-mix(in oklch,var(--accent-amber) 42%,transparent)}50%{transform:translateY(-1px) scale(1.06);box-shadow:inset 0 1px 0 rgba(var(--fg-rgb),.18),0 0 0 8px color-mix(in oklch,var(--accent-amber) 0%,transparent)}}.checkin-modal{position:absolute;inset:0;z-index:calc(var(--z-modal) + 2);display:grid;place-items:center;padding:calc(env(safe-area-inset-top, 0px) + 24px) calc(env(safe-area-inset-right, 0px) + 24px) calc(env(safe-area-inset-bottom, 0px) + 24px) calc(env(safe-area-inset-left, 0px) + 24px);opacity:0;pointer-events:none;transition:opacity .28s var(--ease)}.checkin-modal.open{opacity:1;pointer-events:auto}.checkin-scrim{position:absolute;inset:0;padding:0;border:0;background:rgba(var(--night-deep-rgb),.72);cursor:pointer}.checkin-card{position:relative;width:min(100%,430px);display:flex;flex-direction:column;align-items:center;gap:13px;padding:36px 24px 28px;color:#ffffff;background:#2F80ED;border:4px solid rgba(255,255,255,.92);border-radius:var(--radius-xl);box-shadow:0 18px 44px rgba(var(--night-deep-rgb),.46);text-align:center;font-family:var(--font);transform:translateY(12px) scale(.96);transition:transform .28s var(--ease)}.checkin-modal.open .checkin-card{transform:none}.checkin-close{position:absolute;top:14px;right:14px;width:34px;height:34px;display:grid;place-items:center;padding:0;color:rgba(255,255,255,.82);background:rgba(255,255,255,.14);border:var(--border-width-thin) solid rgba(255,255,255,.32);border-radius:999px;cursor:pointer;font-family:var(--font);font-size:22px;font-weight:800;line-height:1;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.checkin-close:hover{color:#ffffff;background:rgba(255,255,255,.22)}.checkin-close:active{transform:translateY(1px)}.checkin-close:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.checkin-reward-name{margin:0;color:#ffffff;font-family:var(--font);font-size:clamp(30px,9vw,42px);font-weight:900;line-height:.95;letter-spacing:-.02em;text-shadow:0 3px 0 rgba(var(--night-deep-rgb),.18)}.checkin-reward-stage{position:relative;width:min(100%,360px);min-height:312px;display:grid;place-items:center;margin:-2px 0 0}.checkin-medal{position:relative;width:min(82vw,328px);height:min(82vw,328px);display:grid;place-items:center;color:#2F80ED;background:transparent;border-radius:999px;border:0;filter:none}.checkin-medal.is-claimable{animation:checkinClaimPulse 1.35s ease-in-out infinite}.checkin-medal.is-claimable,.checkin-medal.is-claimed{color:#2F80ED;background:transparent;border-color:transparent;filter:none}.checkin-medal svg{width:min(52vw,212px);height:min(52vw,212px);fill:currentColor;overflow:visible;filter:drop-shadow(5px 0 0 #ffffff) drop-shadow(-5px 0 0 #ffffff) drop-shadow(0 5px 0 #ffffff) drop-shadow(0 -5px 0 #ffffff) drop-shadow(0 10px 14px rgba(var(--night-deep-rgb),.28))}.checkin-medal svg path{stroke:#ffffff;stroke-width:1.8;stroke-linejoin:round;paint-order:stroke fill}.checkin-medal-img{width:min(74vw,300px);height:min(74vw,300px);display:block;object-fit:contain;filter:drop-shadow(0 0 5px rgba(255,255,255,.96)) drop-shadow(0 0 9px rgba(255,255,255,.66)) drop-shadow(0 12px 16px rgba(var(--night-deep-rgb),.28))}.checkin-medal-check{position:absolute;right:22px;bottom:22px;width:42px!important;height:42px!important;padding:7px;color:var(--fg-on-accent);background:var(--xp);border:3px solid #ffffff;border-radius:999px;fill:none;stroke:var(--fg-on-accent);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.checkin-sticker{position:absolute;top:26px;right:2px;z-index:1;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:92px;padding:9px 10px 8px;color:#733300;background:radial-gradient(circle at 22% 18%,rgba(255,255,255,.92),transparent 18%),linear-gradient(145deg,#ffe86a,#ffce3d 54%,#ff9f2e);border:3px solid #ffffff;border-radius:18px 18px 18px 8px;box-shadow:0 5px 0 #d96b10,0 10px 18px rgba(var(--night-deep-rgb),.24);font-family:var(--font);line-height:1;text-transform:uppercase;transform:rotate(8deg)}.checkin-sticker span{font-size:9px;font-weight:900;letter-spacing:.08em}.checkin-sticker strong{font-size:13px;font-weight:900;letter-spacing:.03em}.checkin-progress{width:min(100%,270px);display:flex;flex-direction:column;gap:7px;color:rgba(255,255,255,.86);font-size:12px;font-weight:900;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.checkin-progress.is-complete{color:#ffffff}.checkin-progress-track{width:100%;height:10px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.24)}.checkin-progress-fill{display:block;width:0;height:100%;border-radius:inherit;background:#ffffff;transition:width .35s var(--ease)}.checkin-progress.is-complete .checkin-progress-fill{width:100%}.checkin-card .btn-start{width:100%;max-width:330px;padding-right:22px;padding-left:22px}.checkin-card .btn-start:disabled{min-height:52px;height:auto;white-space:normal;line-height:1.15}.checkin-exclusive{display:flex;flex-direction:column;color:#ffffff;line-height:1.1}.checkin-exclusive strong{color:rgba(255,255,255,.9);font-size:11px;font-weight:var(--font-weight-strong);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gem-flight-layer{position:fixed;inset:0;z-index:calc(var(--z-purchase) + 1);pointer-events:none;overflow:hidden}.gem-flight{position:fixed;left:0;top:0;width:var(--gem-size);height:var(--gem-size);background:url(/gem-icon.svg) 50%/contain no-repeat;filter:drop-shadow(0 0 2px rgba(255,248,236,.86)) drop-shadow(0 0 16px color-mix(in srgb,var(--gem) 54%,transparent));opacity:0;transform:translate(var(--from-x),var(--from-y)) translate(-50%,-50%) rotate(-8deg) scale(.45);animation:gemFlightToWallet var(--gem-duration) var(--ease-out-quart) var(--gem-delay) both}@keyframes gemFlightToWallet{0%{opacity:0;transform:translate(var(--from-x),var(--from-y)) translate(-50%,-50%) rotate(-8deg) scale(.35)}10%{opacity:1;transform:translate(var(--from-x),var(--from-y)) translate(-50%,-50%) rotate(10deg) scale(1.15)}46%{opacity:1;transform:translate(var(--mid-x),var(--mid-y)) translate(-50%,-50%) rotate(22deg) scale(1)}78%{opacity:1;transform:translate(var(--to-x),var(--to-y)) translate(-50%,-50%) rotate(-12deg) scale(.72)}to{opacity:0;transform:translate(var(--to-x),var(--to-y)) translate(-50%,-50%) rotate(-12deg) scale(.12)}}@media (prefers-reduced-motion:reduce){.gem-flight-layer{display:none}}.tab-bar{position:relative;isolation:isolate;overflow:visible;background:color-mix(in oklch,var(--night-deep) 92%,var(--night-mid) 8%);padding:8px calc(env(safe-area-inset-right, 0px) + 12px) calc(env(safe-area-inset-bottom, 0px) + 12px) calc(env(safe-area-inset-left, 0px) + 12px);display:flex;align-items:center;justify-content:space-around;gap:4px}.desktop-nav{display:none}.tab-bar:before{content:"";position:absolute;top:0;right:0;left:0;height:1px;pointer-events:none;background:color-mix(in oklch,var(--fg-primary) 14%,transparent)}.tab-item{position:relative;z-index:1;flex:1 1;min-width:0;height:56px;padding:6px 8px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:14px;color:var(--fg-muted);cursor:pointer;font-family:var(--font);transition:background var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease),filter var(--duration-fast) var(--ease)}.tab-icon{width:36px;height:36px;object-fit:contain;opacity:.72;filter:saturate(.8);transition:opacity var(--duration-fast) var(--ease),filter var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.tab-item:hover:not(.active):not(.is-locked) .tab-icon{opacity:.92;filter:saturate(1);transform:translateY(-1px)}.tab-item:active:not(.active):not(.is-locked) .tab-icon{transform:translateY(1px)}.tab-item.active{background:color-mix(in oklch,var(--accent) 18%,transparent)}.tab-item.active .tab-icon{opacity:1;filter:none;transform:scale(1.06)}.tab-notification-dot{position:absolute;top:9px;left:calc(50% + 12px);width:10px;height:10px;border:2px solid color-mix(in oklch,var(--night-deep) 92%,var(--night-mid) 8%);border-radius:999px;background:var(--heart);box-shadow:0 0 0 2px rgba(var(--night-deep-rgb),.16);pointer-events:none}.tab-item.is-locked{cursor:pointer}.tab-item.is-locked .tab-icon{opacity:.46;filter:grayscale(1) saturate(0) brightness(.78)}.tab-item.is-locked:hover .tab-icon{opacity:.46;transform:none}.tab-item.is-locked:active .tab-icon{transform:translateY(1px)}.tab-item:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.tab-item[data-tab=adventure] .tab-icon{width:42px;height:42px}.tab-locked-hint{position:absolute;left:50%;bottom:calc(100% + 8px);z-index:5;width:max-content;max-width:178px;padding:8px 10px;color:var(--fg-primary);background:color-mix(in oklch,var(--night-deep) 92%,var(--night-mid) 8%);border:var(--border-width-thin) solid var(--surface-border-soft);border-radius:14px;box-shadow:var(--shadow-lg);font-family:var(--font);font-size:12px;font-weight:850;line-height:1.2;text-align:center;transform:translateX(-50%);pointer-events:none;animation:tabLockedHintIn .16s var(--ease)}.tab-locked-hint:after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;background:inherit;border-right:var(--border-width-thin) solid var(--surface-border-soft);border-bottom:var(--border-width-thin) solid var(--surface-border-soft);transform:translateX(-50%) rotate(45deg)}.tab-item[data-overlay=shop] .tab-locked-hint{right:4px;left:auto;transform:none}.tab-item[data-overlay=shop] .tab-locked-hint:after{right:24px;left:auto;transform:rotate(45deg)}@keyframes tabLockedHintIn{0%{opacity:0;transform:translateX(-50%) translateY(4px) scale(.96)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.tab-item[data-overlay=shop] .tab-locked-hint{animation-name:tabLockedHintInRight}@keyframes tabLockedHintInRight{0%{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:360px){.tab-bar{gap:2px;padding-left:calc(env(safe-area-inset-left, 0px) + 8px);padding-right:calc(env(safe-area-inset-right, 0px) + 8px)}.tab-item{height:52px;border-radius:12px}.tab-icon{width:32px;height:32px}.tab-item[data-tab=adventure] .tab-icon{width:38px;height:38px}.tab-notification-dot{top:8px;left:calc(50% + 10px)}}@media (min-width:720px){.tab-bar{display:none}.desktop-nav{grid-column:1;grid-row:1/span 2;position:relative;z-index:calc(var(--z-dock) + 3);display:flex;flex-direction:column;align-items:stretch;gap:18px;padding:24px 12px;background:linear-gradient(180deg,color-mix(in oklch,var(--night-deep) 90%,var(--night-mid) 10%),color-mix(in oklch,var(--night-deep) 76%,var(--night-warm) 24%));border-right:var(--border-width-thin) solid var(--surface-border-soft)}.desktop-nav-brand{width:54px;height:54px;display:grid;place-items:center;align-self:center;color:var(--fg-on-accent);background:linear-gradient(180deg,var(--accent-hot),var(--accent));border-radius:18px;box-shadow:0 var(--btn-3d-offset) 0 0 var(--accent-deep);font-family:var(--font);font-size:17px;font-weight:900;letter-spacing:-.03em}.desktop-nav-list{display:flex;flex-direction:column;gap:10px}.desktop-nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:70px;padding:9px 6px;color:var(--fg-muted);background:transparent;border:0;border-radius:18px;cursor:pointer;font-family:var(--font);font-size:11px;font-weight:900;line-height:1;text-align:center;transition:color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.desktop-nav-icon{width:34px;height:34px;object-fit:contain;opacity:.72;filter:saturate(.8);transition:opacity var(--duration-fast) var(--ease),filter var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.desktop-nav-item:hover:not(.active):not(.is-locked){color:var(--fg-primary);background:color-mix(in oklch,var(--fg-primary) 8%,transparent);transform:translateY(-1px)}.desktop-nav-item:hover:not(.active):not(.is-locked) .desktop-nav-icon{opacity:.94;filter:saturate(1)}.desktop-nav-item.active{color:var(--fg-primary);background:color-mix(in oklch,var(--accent) 18%,transparent)}.desktop-nav-item.active .desktop-nav-icon{opacity:1;filter:none;transform:scale(1.04)}.desktop-nav-item.is-locked{cursor:pointer}.desktop-nav-item.is-locked .desktop-nav-icon,.desktop-nav-item.is-locked span{opacity:.46;filter:grayscale(1) saturate(0) brightness(.78)}.desktop-nav-item.is-locked .desktop-nav-hint{opacity:1;filter:none}.desktop-nav-item:focus-visible{outline:2px solid var(--accent-amber);outline-offset:2px}.desktop-nav-dot{top:12px;right:18px;width:10px;height:10px;border:2px solid color-mix(in oklch,var(--night-deep) 92%,var(--night-mid) 8%);border-radius:999px;background:var(--heart);box-shadow:0 0 0 2px rgba(var(--night-deep-rgb),.16)}.desktop-nav-dot,.desktop-nav-hint{position:absolute;pointer-events:none}.desktop-nav-hint{left:calc(100% + 10px);top:50%;z-index:5;width:max-content;max-width:210px;padding:9px 11px;color:var(--fg-primary);background:color-mix(in oklch,var(--night-deep) 92%,var(--night-mid) 8%);border:var(--border-width-thin) solid var(--surface-border-soft);border-radius:14px;box-shadow:var(--shadow-lg);font-family:var(--font);font-size:12px;font-weight:850;line-height:1.2;text-align:center;transform:translateY(-50%)}.desktop-nav-hint:after{content:"";position:absolute;left:-5px;top:50%;width:10px;height:10px;background:inherit;border-left:var(--border-width-thin) solid var(--surface-border-soft);border-bottom:var(--border-width-thin) solid var(--surface-border-soft);transform:translateY(-50%) rotate(45deg)}}@media (prefers-reduced-motion:reduce){.desktop-nav-icon,.desktop-nav-item,.tab-icon,.tab-item{transition:none}}