.tree{--tc-wood:#985d3b;--tc-cut:#dfbd96;--tc-bark:#613d2e;--tc-rotten:#6f7357;--tc-rotten-cut:#9aa07c;--tc-hollow:#221b12;--wl-marigold:#e8a13a;--wl-surface:#f4efe6;--wl-pine:#1d3a2a;--wl-fern:#4e7a4e;--wl-mist:#cfe0d4;--wl-coral:#d96a4f;--wl-font:inherit;max-width:760px;margin:auto}.tree-stage{background:var(--wl-pine);aspect-ratio:18/19;touch-action:none;border-radius:12px;position:relative;overflow:hidden}.tree-stage canvas{touch-action:none;width:100%;height:100%;display:block}.tree-stage canvas:focus-visible{outline:2px solid var(--wl-marigold);outline-offset:-2px}.tree-overlay{text-align:center;background:color-mix(in srgb, var(--wl-pine) 58%, transparent);color:var(--wl-mist);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:20px;display:flex;position:absolute;inset:0}.tree-overlay h2{max-width:100%;font-size:1.6rem}.tree-overlay p{color:var(--wl-mist)}.tree-stage .tree-effects{pointer-events:none;z-index:2;position:absolute;inset:0}.tree-progress{gap:4px;margin-top:16px;display:flex}.tree-progress span{background:#ffffff1f;border-radius:2px;flex:1;height:4px}.tree-progress span[data-reached=true]{background:var(--wl-marigold)}.tree-tap-hint{z-index:3;pointer-events:none;color:color-mix(in srgb, var(--wl-mist) 55%, transparent);justify-content:space-between;align-items:center;padding:8px 16px;font-size:1.25rem;line-height:1;display:flex;position:absolute;bottom:0;left:0;right:0}.ghost-cat{--gc-bg:oklch(12% .025 260);--gc-fg:oklch(96% .01 250);--gc-muted:oklch(74% .03 250);--gc-card:oklch(17% .03 260/.86);--gc-border:oklch(85% .03 250/.18);--gc-moon:oklch(97% .012 240);--gc-candy:oklch(74% .17 55);--gc-candy-ink:oklch(16% .03 50);--gc-font-display:"Creepster", "Patrick Hand", cursive;--gc-font-hand:"Patrick Hand", "Comic Sans MS", cursive;background:var(--gc-bg);color:var(--gc-fg);font-family:var(--gc-font-hand);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.ghost-cat .gc-muted{color:var(--gc-muted)}.ghost-cat .gc-title{font-family:var(--gc-font-display);color:var(--gc-moon);text-shadow:0 0 18px oklch(97% .012 240/.55),0 0 2px oklch(97% .012 240/.9);letter-spacing:.04em;line-height:.95}.ghost-cat .gc-candy{color:var(--gc-candy);text-shadow:0 0 16px oklch(74% .17 55/.8)}.ghost-cat .gc-card{background:var(--gc-card);border:1px solid var(--gc-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:1.5rem;box-shadow:0 0 40px oklch(97% .012 240/.25)}.ghost-cat .gc-btn{font-family:var(--gc-font-display);letter-spacing:.06em;background:var(--gc-candy);color:var(--gc-candy-ink);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.75rem;font-size:1.35rem;transition:transform .15s,filter .15s;display:inline-flex;box-shadow:0 0 28px oklch(74% .17 55/.55),0 6px oklch(45% .12 45)}.ghost-cat .gc-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px)}.ghost-cat .gc-btn:active:not(:disabled){transform:translateY(3px)}.ghost-cat .gc-btn:disabled{opacity:.5}.ghost-cat .gc-chip{border:1px solid var(--gc-border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:oklch(12% .025 260/.6);border-radius:999px;align-items:center;gap:.4rem;padding:.2rem .7rem;font-size:1.15rem;display:inline-flex}.ghost-cat .gc-pad{width:4.25rem;height:4.25rem;color:var(--gc-moon);pointer-events:auto;touch-action:none;background:oklch(96% .01 250/.12);border:2px solid oklch(96% .01 250/.35);border-radius:999px;justify-content:center;align-items:center;transition:background 80ms,transform 80ms;display:flex}.ghost-cat .gc-pad[data-down=true]{background:oklch(96% .01 250/.3);transform:scale(.94)}.ghost-cat .gc-pad-jump{background:oklch(74% .17 55/.25);border-color:oklch(74% .17 55/.7);width:5.25rem;height:5.25rem}.ghost-cat .gc-pad-jump[data-down=true]{background:oklch(74% .17 55/.5)}.ghost-cat .gc-bet{font-family:var(--gc-font-hand)}.ghost-cat .gc-float{animation:3.2s ease-in-out infinite gc-float}.ghost-cat .gc-pop{animation:.35s ease-out gc-pop;display:inline-block}@keyframes gc-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-12px)rotate(2deg)}}@keyframes gc-pop{0%{transform:scale(1.45)}to{transform:scale(1)}}.wizard-watch{--tc-bg:oklch(19% .04 238);--tc-fg:oklch(95% .03 85);--tc-muted:oklch(78% .04 80);--tc-border:oklch(95% .03 85/.22);--tc-parchment:oklch(93% .035 85);--tc-ink:oklch(22% .05 238);--tc-tesla:oklch(85% .11 295);--tc-gold:oklch(86% .13 80);--tc-life:oklch(82% .08 10);--tc-gradient-night:radial-gradient(ellipse at 50% 20%, oklch(32% .07 232/.2), oklch(12% .04 238/.92) 75%);--tc-gradient-panel:linear-gradient(160deg, oklch(29% .055 238/.94), oklch(20% .045 238/.96));--tc-gradient-candle:linear-gradient(180deg, oklch(88% .13 82), oklch(74% .14 62));--tc-shadow-glow:0 0 24px oklch(85% .11 295/.45);--tc-shadow-panel:0 18px 50px oklch(8% .03 238/.65);--tc-font-display:"IM Fell English SC", Georgia, serif;--tc-font-body:"Patrick Hand", "Comic Sans MS", system-ui, sans-serif;background:var(--tc-bg);color:var(--tc-fg);font-family:var(--tc-font-body);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.wizard-watch .tc-muted{color:var(--tc-muted)}.wizard-watch .tc-gold{color:var(--tc-gold)}.wizard-watch .tc-life{color:var(--tc-life)}.wizard-watch .tc-dim{color:var(--tc-muted);opacity:.3}.wizard-watch .tc-vignette{pointer-events:none;background:radial-gradient(#0000 55%,oklch(10% .04 238/.55) 100%);position:absolute;inset:0}.wizard-watch .tc-scrim{background:var(--tc-gradient-night);position:absolute;inset:0}.wizard-watch .tc-panel{background:var(--tc-gradient-panel);box-shadow:var(--tc-shadow-panel), inset 0 1px 0 oklch(100% 0 0/.08);color:var(--tc-fg);border:2px solid oklch(86% .13 80/.35);border-radius:1.5rem}.wizard-watch .tc-title{font-family:var(--tc-font-display);color:var(--tc-parchment);letter-spacing:.02em;text-shadow:0 0 18px oklch(85% .11 295/.7),0 3px oklch(15% .04 238)}.wizard-watch .tc-btn{font-family:var(--tc-font-display);background:var(--tc-gradient-candle);color:var(--tc-ink);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.8rem;font-size:1.3rem;transition:transform .12s,box-shadow .12s;display:inline-flex;box-shadow:0 6px oklch(50% .1 55),0 10px 30px oklch(86% .13 80/.35)}.wizard-watch .tc-btn:active{transform:translateY(4px);box-shadow:0 2px oklch(50% .1 55),0 6px 18px oklch(86% .13 80/.3)}.wizard-watch .tc-btn:disabled{opacity:.55;pointer-events:none}.wizard-watch .tc-chip{border:1px solid var(--tc-border);color:var(--tc-parchment);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:oklch(16% .04 238/.72);border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-size:1.1rem;line-height:1.2;display:inline-flex}.wizard-watch .tc-icon-btn{border:1px solid var(--tc-border);width:2.5rem;height:2.5rem;color:var(--tc-parchment);pointer-events:auto;background:oklch(16% .04 238/.72);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.wizard-watch .tc-pad{pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;padding-bottom:max(1.5rem, calc(env(safe-area-inset-bottom) + 1.25rem))}.wizard-watch .tc-pad .tc-touch{pointer-events:none}.wizard-watch .tc-touch{pointer-events:auto;color:var(--tc-parchment);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);touch-action:none;background:oklch(93% .035 85/.16);border:2px solid oklch(93% .035 85/.4);border-radius:999px;justify-content:center;align-items:center;transition:transform 60ms,background 60ms;display:flex}.wizard-watch .tc-touch[data-down=true]{box-shadow:var(--tc-shadow-glow);background:oklch(85% .11 295/.4);transform:scale(.92)}.wizard-watch .tc-effect-bar{background:var(--tc-tesla);height:4px;box-shadow:var(--tc-shadow-glow);border-radius:999px;transition:width .1s linear}.wizard-watch .tc-orb{background:var(--tc-tesla);box-shadow:var(--tc-shadow-glow)}.wizard-watch .tc-banner{font-family:var(--tc-font-display);color:var(--tc-parchment);text-shadow:0 0 14px oklch(85% .11 295/.8),0 2px oklch(12% .04 238);animation:2.8s forwards tc-banner}.wizard-watch .tc-pop{animation:.35s ease-out tc-pop;display:inline-block}.wizard-watch .tc-float{animation:3.4s ease-in-out infinite tc-float}.wizard-watch .tc-breathe{transform-origin:50% 96%;animation:2.6s ease-in-out infinite tc-breathe}.wizard-watch .tc-snooze{font-family:var(--tc-font-display);color:var(--tc-parchment);opacity:0;animation:3.2s ease-out infinite tc-snooze}.wizard-watch .tc-snooze-late{animation-delay:1.6s}.wizard-watch .tc-bet{font-family:ui-sans-serif,system-ui,sans-serif}@keyframes tc-breathe{0%,to{transform:scale(1)}50%{transform:scale(.992,1.02)}}@keyframes tc-snooze{0%{opacity:0;transform:translateY(8px)scale(.8)}25%{opacity:.9}to{opacity:0;transform:translate(10px,-26px)scale(1.15)}}@keyframes tc-banner{0%{opacity:0;transform:translateY(-10px)scale(.96)}12%{opacity:1;transform:translateY(0)scale(1)}80%{opacity:1}to{opacity:0;transform:translateY(-6px)}}@keyframes tc-pop{0%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes tc-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}
