.fx-chrome{--fx-chrome-font:12px;--fx-rail-size:46px;--fx-rail-icon:22px}html[data-profile=kid] .fx-chrome{--fx-chrome-font:13.5px;--fx-rail-size:54px;--fx-rail-icon:26px}.fx-topbar{position:fixed;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(env(safe-area-inset-top, 0px) + 10px) 16px 10px;pointer-events:none;background:linear-gradient(180deg,rgba(11,11,15,.82),transparent);transition:opacity .22s ease-out}.fx-topbar[data-dim=true]{opacity:.35}.fx-dots{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.fx-dot{height:3px;flex:1 1 0;min-width:3px;max-width:22px;border-radius:999px;background:var(--color-hairline);transition:background-color .26s ease-out,transform .26s ease-out;transform-origin:center}.fx-dot[data-on=true]{background:var(--color-ink-muted)}.fx-dot[data-on=true][data-fresh=true]{animation:fx-dot-in .38s cubic-bezier(.2,.8,.2,1) both}.fx-dots[data-complete=true] .fx-dot[data-on=true]{background:var(--color-cat-money)}@keyframes fx-dot-in{0%{transform:scaleY(.4);opacity:.4}to{transform:none;opacity:1}}.fx-streak{display:inline-flex;align-items:center;gap:4px;flex:none;font-size:var(--fx-chrome-font);font-weight:650;font-variant-numeric:tabular-nums;color:var(--color-ink-muted)}.fx-streak[data-alive=true]{color:#f6b26b}.fx-bonus{flex:none;font-size:var(--fx-chrome-font);font-weight:650;font-variant-numeric:tabular-nums;color:var(--color-cat-money)}.fx-rail{position:absolute;right:calc(env(safe-area-inset-right, 0px) + 8px);bottom:calc(env(safe-area-inset-bottom, 0px) + 92px);z-index:20;gap:6px;pointer-events:auto}.fx-rail,.fx-rail-btn{display:flex;flex-direction:column}.fx-rail-btn{align-items:center;justify-content:center;gap:2px;width:var(--fx-rail-size);height:var(--fx-rail-size);border-radius:999px;color:var(--color-ink-muted);background:color-mix(in srgb,var(--color-surface) 62%,transparent);backdrop-filter:blur(6px);-webkit-tap-highlight-color:transparent;transition:transform .14s cubic-bezier(.2,.8,.2,1),color .14s linear,background-color .14s linear}.fx-rail-btn:active{transform:scale(.9)}.fx-rail-btn svg{width:var(--fx-rail-icon);height:var(--fx-rail-icon)}.fx-rail-btn[data-on=true]{color:var(--fx-on,var(--color-ink))}.fx-rail-btn[data-on=true] svg{animation:fx-pop .32s cubic-bezier(.34,1.56,.64,1) both}@keyframes fx-pop{0%{transform:scale(.6)}60%{transform:scale(1.18)}to{transform:none}}.fx-burst{position:absolute;z-index:25;pointer-events:none;translate:-50% -50%;color:#fb7185;animation:fx-burst .72s cubic-bezier(.2,.8,.2,1) both}@keyframes fx-burst{0%{opacity:0;transform:scale(.2) rotate(-14deg)}18%{opacity:1;transform:scale(1.15) rotate(6deg)}40%{transform:scale(.98) rotate(-3deg)}to{opacity:0;transform:scale(1.5) translateY(-34px) rotate(0deg)}}.fx-ring{position:absolute;z-index:24;pointer-events:none;translate:-50% -50%;width:34px;height:34px;border-radius:999px;border:2px solid rgba(251,113,133,.55);animation:fx-ring .62s cubic-bezier(.2,.8,.2,1) both}@keyframes fx-ring{0%{opacity:.9;transform:scale(.35)}to{opacity:0;transform:scale(2.6)}}.fx-toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom, 0px) + 96px);z-index:45;translate:-50% 0;max-width:min(88vw,30rem);padding:11px 16px;border-radius:999px;background:rgba(29,29,38,.94);border:1px solid var(--color-hairline);color:var(--color-ink);font-size:14px;line-height:1.35;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.45);animation:fx-toast-in .22s cubic-bezier(.2,.8,.2,1) both}@keyframes fx-toast-in{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}.fx-scrim{position:fixed;inset:0;z-index:50;background:rgba(6,6,9,.62);animation:fx-fade .16s linear both}@keyframes fx-fade{0%{opacity:0}to{opacity:1}}.fx-sheet{position:fixed;left:0;right:0;bottom:0;z-index:51;border-radius:22px 22px 0 0;background:var(--color-surface);border-top:1px solid var(--color-hairline);padding:10px 10px calc(env(safe-area-inset-bottom, 0px) + 14px);animation:fx-sheet-in .24s cubic-bezier(.2,.8,.2,1) both}@keyframes fx-sheet-in{0%{transform:translateY(102%)}to{transform:none}}.fx-sheet-grip{width:38px;height:4px;border-radius:999px;background:var(--color-hairline);margin:2px auto 10px}.fx-sheet-item{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border-radius:14px;text-align:left;font-size:16px;color:var(--color-ink);-webkit-tap-highlight-color:transparent;transition:background-color .12s linear}.fx-sheet-item:active{background:var(--color-surface2)}.fx-goal-ring{animation:fx-goal-ring .9s cubic-bezier(.2,.8,.2,1) both}@keyframes fx-goal-ring{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:none}}.fx-goal-flame{animation:fx-flame 2.4s ease-in-out infinite;transform-origin:50% 90%}@keyframes fx-flame{0%,to{transform:scale(1) rotate(-2deg)}50%{transform:scale(1.06) rotate(2deg)}}.fx-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:17px 22px;border-radius:999px;background:var(--color-ink);color:#0b0b0f;font-size:17px;font-weight:700;letter-spacing:-.01em;-webkit-tap-highlight-color:transparent;transition:transform .14s cubic-bezier(.2,.8,.2,1)}.fx-primary:active{transform:scale(.975)}.fx-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;border-radius:999px;color:var(--color-ink-muted);font-size:14.5px;font-weight:550;-webkit-tap-highlight-color:transparent}