@media (max-width:960px){.room-fullscreen,.room-fullscreen-page,body:has(.room-fullscreen-page),html:has(.room-fullscreen-page){height:var(--room-visual-height,100dvh);overflow:hidden;overscroll-behavior:none}}.mobile-bottom-bar{--mobile-bottom-gap:6px;--mobile-glow-dock-width:110px;--mobile-dock-height:38px;position:fixed;left:max(8px,env(safe-area-inset-left,0px));right:calc(max(8px, env(safe-area-inset-right, 0px)) + var(--mobile-glow-dock-width) + var(--mobile-bottom-gap));transform:none;bottom:max(10px,calc(env(safe-area-inset-bottom, 0px) + 8px));z-index:40;display:flex;flex-direction:column;align-items:flex-start;gap:5px;pointer-events:none;min-width:0;max-width:none}.mobile-bottom-bar__more-tray,.mobile-bottom-bar__row{pointer-events:auto;display:flex;gap:5px;align-items:center;justify-content:flex-start;flex-wrap:nowrap;min-width:0;width:max-content;max-width:100%;box-sizing:border-box}.mobile-bottom-bar__more-tray{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100%;gap:2px;padding:4px;border:1px solid rgba(245,210,175,.14);border-radius:16px;background:linear-gradient(180deg,rgba(43,24,15,.94),rgba(15,7,3,.94));backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 14px 26px rgba(4,1,0,.5)}@keyframes mbb-tray-extend{0%{opacity:.2;clip-path:inset(0 100% 0 0 round 16px);transform:translateY(8px)}to{opacity:1;clip-path:inset(0 0 0 0 round 16px);transform:translateY(0)}}@keyframes mbb-tray-collapse{0%{opacity:1;clip-path:inset(0 0 0 0 round 16px);transform:translateY(0)}to{opacity:.2;clip-path:inset(0 100% 0 0 round 16px);transform:translateY(8px)}}@keyframes mbb-tray-item-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.mobile-bottom-bar__more-tray{transform-origin:left bottom;animation:mbb-tray-extend .4s cubic-bezier(.22,1,.36,1) both}.mobile-bottom-bar__more-tray--closing{animation:mbb-tray-collapse .24s cubic-bezier(.4,0,1,1) both}.mobile-bottom-bar__more-tray--closing .mobile-bottom-bar__btn{animation:none}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn{animation:mbb-tray-item-in .3s cubic-bezier(.22,1,.36,1) both}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:first-child{animation-delay:.05s}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:nth-child(2){animation-delay:.09s}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:nth-child(3){animation-delay:.13s}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:nth-child(4){animation-delay:.17s}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:nth-child(5){animation-delay:.21s}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:nth-child(6){animation-delay:.25s}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:nth-child(7){animation-delay:.29s}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:nth-child(n+8){animation-delay:.33s}@media (prefers-reduced-motion:reduce){.mobile-bottom-bar__more-tray,.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn,.mobile-bottom-bar__more-tray--closing{animation:none}}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:not(.mobile-bottom-bar__btn--labeled){border-radius:12px;border-color:transparent;background:transparent}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn:not(.mobile-bottom-bar__btn--labeled).is-active{border-color:rgba(232,135,74,.42);background:rgba(232,135,74,.15)}.mobile-bottom-bar__more-tray .mobile-bottom-bar__btn.has-notify:after{border-color:#1a0d05;background:#ff6f5e;box-shadow:none}.mobile-bottom-bar__more-tray::-webkit-scrollbar{display:none}.mobile-bottom-bar__row{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:10px 3px 3px;margin-top:-7px;border:1px solid rgba(245,210,175,.14);border-radius:999px;background:rgba(14,7,4,.64);backdrop-filter:blur(18px) saturate(1.25);-webkit-backdrop-filter:blur(18px) saturate(1.25);box-shadow:0 12px 30px rgba(5,2,1,.34)}.mobile-bottom-bar__row::-webkit-scrollbar{display:none}.mobile-bottom-bar__btn{position:relative;flex:0 0 auto;width:var(--mobile-dock-height);height:var(--mobile-dock-height);padding:0;border-radius:var(--pill-radius,999px);border:1px solid rgba(245,210,175,.16);background:rgba(30,14,7,.58);backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--text-cream);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s,border-color .18s,transform .15s}.mobile-bottom-bar__btn:active{transform:translateY(1px)}.mobile-bottom-bar__btn.is-active{background:var(--glass-bg-deep);border-color:var(--glass-border-active)}.mobile-bottom-bar__btn.has-notify{border-color:rgba(212,151,112,.42)}.mobile-bottom-bar__btn.has-notify:after{content:"";position:absolute;top:-3px;right:-3px;width:9px;height:9px;border-radius:999px;border:1px solid rgba(43,24,8,.7);background:#eebe71;box-shadow:0 0 0 2px rgba(20,12,6,.72);pointer-events:none}.mobile-bottom-bar__badge{position:absolute;top:-7px;right:-7px;display:inline-flex;align-items:center;justify-content:center;min-height:16px;min-width:28px;padding:0 6px;border-radius:999px;border:1px solid rgba(238,190,113,.42);background:rgba(238,190,113,.88);color:#2a1a0d;font-size:.52rem;font-weight:900;line-height:1;text-transform:uppercase;white-space:nowrap;pointer-events:none;box-shadow:0 2px 6px rgba(0,0,0,.35)}.mobile-bottom-bar__badge--plus{right:-13px;border-color:rgba(255,210,114,.64);background:rgba(245,190,82,.96);color:#2b1a05}.mobile-bottom-bar__icon{width:18px;height:18px;stroke-width:2.25;opacity:.9}.mobile-bottom-bar__more-tray:has(.mobile-bottom-bar__btn--labeled){gap:1px;padding:4px;border-radius:16px;border-color:rgba(245,210,175,.14);background:linear-gradient(180deg,rgba(43,24,15,.94),rgba(15,7,3,.94));backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 14px 26px rgba(4,1,0,.5)}.mobile-bottom-bar__btn--labeled{flex-direction:column;width:auto;min-width:46px;height:auto;gap:3px;padding:6px 8px 5px;border-radius:12px;border:1px solid transparent;background:transparent;box-sizing:border-box;color:rgba(242,229,211,.92)}.mobile-bottom-bar__btn--labeled .mobile-bottom-bar__icon{width:16px;height:16px;opacity:1}.mobile-bottom-bar__cap{font-family:var(--font-jetbrains-mono),ui-monospace,SFMono-Regular,monospace;font-size:.5rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;line-height:1;color:rgba(242,229,211,.92)}.mobile-bottom-bar__btn--labeled.is-active{border-color:rgba(232,135,74,.42);background:rgba(232,135,74,.15);color:var(--accent)}.mobile-bottom-bar__btn--labeled.is-active .mobile-bottom-bar__cap{color:var(--accent)}.mobile-bottom-bar__btn--labeled.has-notify{border-color:transparent}.mobile-bottom-bar__btn--labeled.has-notify:after{top:4px;left:50%;right:auto;transform:translateX(4px);width:7px;height:7px;border-color:#1a0d05;background:#ff6f5e;box-shadow:none}.mobile-bottom-cluster{position:fixed;right:max(10px,env(safe-area-inset-right,0px));bottom:max(10px,calc(env(safe-area-inset-bottom, 0px) + 8px));z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.mobile-bottom-cluster>*{pointer-events:auto}@media (max-width:960px){.mobile-bottom-cluster{bottom:calc(max(10px, env(safe-area-inset-bottom, 0px) + 8px) + 44px)}.room-glow-chip{position:fixed;right:max(10px,env(safe-area-inset-right,0px));bottom:max(10px,calc(env(safe-area-inset-bottom, 0px) + 8px));top:auto;left:auto;z-index:41;min-width:110px;min-height:48px;padding:0 14px;border-color:rgba(232,135,74,.28);background:linear-gradient(180deg,rgba(232,135,74,.16),rgba(245,210,175,.04)),rgba(22,10,5,.72);box-shadow:0 12px 30px rgba(5,2,1,.34)}}@media (max-width:430px){.mobile-bottom-bar{--mobile-bottom-gap:5px;--mobile-glow-dock-width:90px;--mobile-dock-height:35px}.mobile-bottom-bar__more-tray,.mobile-bottom-bar__row{gap:4px;padding:3px}.mobile-bottom-bar__row{padding:10px 3px 3px}.mobile-bottom-bar__icon{width:17px;height:17px}.room-glow-chip{gap:6px;min-width:90px;min-height:43px;padding:0 11px}.room-glow-chip__label{display:none}}@media (max-width:360px){.mobile-bottom-bar{--mobile-glow-dock-width:78px;--mobile-dock-height:34px}.room-glow-chip{min-width:78px;min-height:42px;padding:0 9px}}.room-dev-panel__exit-preview{position:fixed;left:auto;right:var(--dev-rail-right,max(18px,env(safe-area-inset-right)));top:auto;bottom:var(--dev-rail-bottom-anchor,calc(max(18px, env(safe-area-inset-bottom)) + 42px + 12px));z-index:2147482610;height:var(--dev-pill-h,30px);min-width:var(--dev-pill-h,30px);padding:0 10px;border-radius:999px;border:1px solid rgba(255,190,124,.32);background:rgba(20,10,5,.85);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);color:rgba(255,190,124,.92);font-size:14px;line-height:1;cursor:pointer;pointer-events:auto;transition:border-color .15s ease,background .15s ease;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(8,3,1,.4)}.room-dev-panel__exit-preview:hover{border-color:rgba(255,190,124,.65);background:rgba(40,18,8,.92)}@media (min-width:961px){.mobile-bottom-bar,.mobile-bottom-cluster{display:none}}@media (max-width:960px){.room-fullscreen:has(.avatar-editor-card) .gdk,.room-fullscreen:has(.avatar-editor-card) .mobile-bottom-bar,.room-fullscreen:has(.avatar-editor-card) .mobile-bottom-cluster,.room-fullscreen:has(.avatar-editor-card) .room-dev-panel,.room-fullscreen:has(.avatar-editor-card) .room-dev-panel__exit-preview,.room-fullscreen:has(.avatar-editor-card) .room-glow-chip,.room-fullscreen:has(.avatar-editor-card) .room-local-dev-tools,.room-fullscreen:has(.avatar-editor-card) .room-scene-fp-btn,.room-fullscreen:has(.avatar-editor-card) .seat-map-dev{display:none!important;pointer-events:none!important}}:root{--dev-rail-right:max(18px,env(safe-area-inset-right));--dev-rail-bottom-anchor:calc(max(18px, env(safe-area-inset-bottom)) + var(--pill-h) + 12px);--dev-pill-h:30px;--dev-pill-gap:6px}.gdk{position:fixed;left:auto;right:var(--dev-rail-right);bottom:var(--dev-rail-bottom-anchor);z-index:2147482610;color:#fff7ed;display:flex;flex-direction:column;align-items:flex-end}.gdk,.gdk__tab,.room-dev-panel__toggle,.room-scene-fp-btn,.seat-map-dev__toggle{font-family:var(--font-jetbrains-mono),ui-monospace,SFMono-Regular,monospace;pointer-events:auto}.gdk__tab,.room-dev-panel__toggle,.room-scene-fp-btn,.seat-map-dev__toggle{height:var(--dev-pill-h);padding:0 12px;border:1px solid rgba(255,190,124,.32);border-radius:999px;background:rgba(20,10,5,.85);color:rgba(255,190,124,.92);font-size:.66rem;font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 8px 22px rgba(8,3,1,.4);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);transition:border-color .15s ease,background .15s ease}.gdk__tab:hover,.room-dev-panel__toggle:hover,.room-scene-fp-btn:hover,.seat-map-dev__toggle:hover{border-color:rgba(255,190,124,.65);background:rgba(40,18,8,.92)}.gdk__tab:active,.room-dev-panel__toggle:active,.room-scene-fp-btn:active,.seat-map-dev__toggle:active{transform:scale(.96)}.gdk__tabrow{display:flex;align-items:center;gap:var(--dev-pill-gap)}.gdk__rail-toggle{opacity:.55}.gdk__rail-toggle:hover{opacity:1}.gdk__panel{display:grid;gap:10px;width:min(300px,calc(100vw - 28px));margin-bottom:8px;order:-1;padding:12px;border:1px solid rgba(255,247,237,.16);border-radius:10px;background:rgba(18,8,4,.94);box-shadow:0 18px 48px rgba(8,3,1,.5);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);max-height:calc(100vh - 80px);overflow-y:auto}.gdk__section{display:grid;gap:6px}.gdk__divider{height:1px;background:rgba(255,247,237,.1)}.gdk__label{color:rgba(255,190,124,.55);font-size:.62rem;font-weight:800;letter-spacing:.12em}.gdk__hint{margin:3px 0 0;color:rgba(255,247,237,.58);font-size:.68rem;line-height:1.35}.gdk__current{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.76rem;color:rgba(255,247,237,.9);min-width:0}@media (max-width:700px) and (orientation:portrait){:root{--dev-rail-right:auto;--dev-rail-left:max(10px,env(safe-area-inset-left))}.gdk,.room-local-dev-tools{align-items:flex-start}.gdk,.room-dev-panel__exit-preview,.room-local-dev-tools{right:auto;left:var(--dev-rail-left)}}.gdk__current>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.gdk__row{display:flex;flex-wrap:wrap;gap:5px}.gdk__stack{display:grid;gap:5px}.gdk__btn{padding:6px 9px;border:1px solid rgba(255,247,237,.18);border-radius:7px;background:rgba(28,14,8,.86);color:#fff7ed;font:inherit;font-size:.74rem;font-weight:700;cursor:pointer;transition:border-color .12s ease,background .12s ease;text-align:left;text-decoration:none;display:inline-block}.gdk__btn:hover:not(:disabled){border-color:rgba(255,190,124,.5);background:rgba(60,28,12,.9)}.gdk__btn:disabled{cursor:wait;opacity:.5}.gdk__btn--active{border-color:rgba(255,190,124,.7)!important;background:rgba(169,91,51,.9)!important}.gdk__btn--danger{border-color:rgba(220,80,80,.35);color:rgba(255,150,150,.9)}.gdk__btn--danger:hover:not(:disabled){border-color:rgba(220,80,80,.65);background:rgba(80,20,20,.9)}.gdk__lab{padding:10px;border:1px solid rgba(255,190,124,.22);border-radius:9px;background:linear-gradient(180deg,rgba(169,91,51,.16),rgba(255,247,237,.045))}.gdk__lab-grid{display:grid;grid-template-columns:1fr;gap:7px}.gdk__btn--lab{display:grid;gap:3px;width:100%;padding:9px 10px;border-color:rgba(255,190,124,.34);background:rgba(50,24,12,.92)}.gdk__btn--lab strong{color:#fff7ed;font-size:.76rem;line-height:1.2}.gdk__btn--lab span{color:rgba(255,247,237,.58);font-size:.66rem;font-weight:600;line-height:1.3}.gdk__btn--lab:hover:not(:disabled){border-color:rgba(255,190,124,.72);background:rgba(76,35,15,.95)}.gdk__ghost-btn{padding:4px 6px;border:1px solid transparent;border-radius:6px;background:transparent;color:rgba(255,247,237,.45);font:inherit;font-size:.68rem;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:color .12s ease}.gdk__ghost-btn:hover:not(:disabled){color:rgba(255,247,237,.8)}.gdk__ghost-btn:disabled{cursor:wait;opacity:.5}.gdk__email-row{display:flex;gap:5px}.gdk__input{flex:1 1;padding:6px 9px;border:1px solid rgba(255,247,237,.18);border-radius:7px;background:rgba(28,14,8,.86);color:#fff7ed;font:inherit;font-size:.74rem;outline:none;min-width:0;transition:border-color .12s ease}.gdk__input:focus{border-color:rgba(255,190,124,.5)}.gdk__input::placeholder{color:rgba(255,247,237,.3)}.gdk__input:disabled{opacity:.5}.gdk__status{margin:0;padding:6px 8px;border-radius:6px;background:rgba(255,247,237,.06);color:rgba(255,247,237,.65);font-size:.7rem;line-height:1.4}.seat-map-dev{color:#fff7ed;font-family:var(--font-jetbrains-mono),ui-monospace,SFMono-Regular,monospace;pointer-events:auto;display:flex;flex-direction:column-reverse;align-items:flex-end}.seat-map-dev__panel{display:grid;gap:10px;width:min(360px,calc(100vw - 28px));margin-bottom:8px;padding:12px;border:1px solid rgba(255,247,237,.16);border-radius:10px;background:rgba(18,8,4,.94);box-shadow:0 18px 48px rgba(8,3,1,.5);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);max-height:calc(100vh - 80px);overflow-y:auto}.room-local-dev-tools .seat-map-dev__panel{max-height:min(78vh,680px)}.seat-map-dev__export-head,.seat-map-dev__header,.seat-map-dev__seat-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.seat-map-dev__header strong,.seat-map-dev__seat-head strong{font-size:.76rem}.seat-map-dev__export-head span,.seat-map-dev__header span,.seat-map-dev__label{color:rgba(255,190,124,.62);font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.seat-map-dev__facing,.seat-map-dev__label{display:grid;gap:5px}.seat-map-dev__export textarea,.seat-map-dev__facing select,.seat-map-dev__row input,.seat-map-dev__select{border:1px solid rgba(255,247,237,.18);border-radius:7px;background:rgba(28,14,8,.86);color:#fff7ed;font:inherit;font-size:.74rem;outline:none}.seat-map-dev__facing select,.seat-map-dev__select{padding:7px 9px}.seat-map-dev__actions{display:flex;flex-wrap:wrap;gap:6px}.seat-map-dev__panel button{border:1px solid rgba(255,247,237,.18);border-radius:7px;background:rgba(28,14,8,.86);color:#fff7ed;font:inherit;font-size:.7rem;font-weight:700;cursor:pointer}.seat-map-dev__panel button:hover:not(:disabled){border-color:rgba(255,190,124,.5);background:rgba(60,28,12,.9)}.seat-map-dev__panel button:disabled{cursor:not-allowed;opacity:.45}.seat-map-dev__actions button,.seat-map-dev__export-head button,.seat-map-dev__seat-head button{padding:6px 9px}.seat-map-dev__seats{display:grid;gap:8px}.seat-map-dev__seat{display:grid;gap:7px;padding:9px;border:1px solid rgba(255,247,237,.12);border-radius:8px;background:rgba(255,247,237,.045)}.seat-map-dev__row{display:grid;grid-template-columns:22px 28px minmax(0,1fr) 28px;align-items:center;gap:5px}.seat-map-dev__row span{color:rgba(255,190,124,.55);font-size:.64rem;font-weight:800}.seat-map-dev__row button{width:28px;height:28px}.seat-map-dev__row input{width:100%;min-width:0;padding:6px 8px}.seat-map-dev__facing{color:rgba(255,190,124,.55);font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.seat-map-dev__export{display:grid;gap:6px}.seat-map-dev__export textarea{min-height:118px;resize:vertical;padding:8px;color:rgba(255,247,237,.76);line-height:1.45}.seat-map-dev__status{margin:0;padding:6px 8px;border-radius:6px;background:rgba(255,247,237,.06);color:rgba(255,247,237,.68);font-size:.7rem;line-height:1.4}@keyframes celebration-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes celebration-modal-in{0%{opacity:0;transform:scale(.92) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes celebration-spark-float{0%{opacity:0;transform:translateY(0) scale(1)}15%{opacity:1}85%{opacity:.5}to{opacity:0;transform:translateY(calc(-65vh - 40px)) scale(.3)}}@keyframes celebration-trail-dot-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes celebration-trail-today-bloom{0%{opacity:0;transform:scale(.3)}60%{transform:scale(1.35)}to{opacity:1;transform:scale(1)}}@keyframes daily-rule-draw{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes daily-type-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes celebration-legendary-shimmer{0%{filter:hue-rotate(0deg) brightness(1)}50%{filter:hue-rotate(180deg) brightness(1.2)}to{filter:hue-rotate(1turn) brightness(1)}}@keyframes celebration-birthday-flame{0%,to{transform:translateX(-50%) scale(1);opacity:.9}45%{transform:translateX(-50%) scale(1.16,.9);opacity:1}}body.celebration-active .arrange-overlay,body.celebration-active .hud-visibility-anchor,body.celebration-active .mobile-bottom-bar,body.celebration-active .object-cue,body.celebration-active .pet-scene-cue,body.celebration-active .pill-tray,body.celebration-active .record-player-ambient-pill,body.celebration-active .room-glow-chip,body.celebration-active .room-glow-reward{opacity:0!important;pointer-events:none!important;transition:opacity .3s ease}.celebration-overlay{position:fixed;inset:0;z-index:2147483646}.celebration-overlay,.celebration-trail{display:flex;align-items:center;justify-content:center}.celebration-trail{gap:12px}.celebration-trail__dot{width:5px;height:5px;border-radius:50%;background:rgba(242,229,211,.45);animation:celebration-trail-dot-in .45s calc(var(--trail-i, 0) * .11s) cubic-bezier(.22,1,.36,1) both}.celebration-trail__dot--today{width:10px;height:10px;background:#f5ead7;box-shadow:0 0 18px rgba(242,229,211,.9);animation:celebration-trail-today-bloom .6s calc(var(--trail-i, 0) * .11s + .15s) cubic-bezier(.34,1.56,.64,1) both}.celebration-trail--daily{margin-bottom:clamp(22px,2.6vw,34px)}.celebration-trail--daily .celebration-trail__dot:first-child{width:4px;height:4px;background:rgba(242,229,211,.3)}.celebration-trail--daily .celebration-trail__dot:nth-child(2){width:4px;height:4px;background:rgba(242,229,211,.38)}.celebration-trail--daily .celebration-trail__dot:nth-child(3){background:rgba(242,229,211,.45)}.celebration-trail--daily .celebration-trail__dot:nth-child(4){background:rgba(242,229,211,.52)}.celebration-trail--daily .celebration-trail__dot:nth-child(5){width:6px;height:6px;background:rgba(242,229,211,.62)}.celebration-trail--daily .celebration-trail__dot:nth-child(6){width:6px;height:6px;background:rgba(242,229,211,.72)}.celebration-trail--milestone{margin-bottom:24px}.celebration-trail__dot--past{background:var(--celebration-primary,#4f8ef7);box-shadow:0 0 8px var(--celebration-glow,rgba(79,142,247,.4))}.celebration-trail__dot--current{width:9px;height:9px;background:color-mix(in srgb,var(--celebration-primary,#4f8ef7) 45%,#f5ead7);box-shadow:0 0 16px var(--celebration-glow,rgba(79,142,247,.4)),0 0 30px var(--celebration-glow,rgba(79,142,247,.4));animation:celebration-trail-today-bloom .6s calc(var(--trail-i, 0) * .11s + .15s) cubic-bezier(.34,1.56,.64,1) both}.celebration-trail__dot--future{background:rgba(242,229,211,.18)}.celebration-trail--broken{margin-bottom:28px}.celebration-trail__dot--fading{background:rgba(242,229,211,calc(.26 - var(--trail-i, 0) * .06))}.celebration-trail__gap{width:24px}.celebration-overlay--daily{overflow:hidden;background:rgba(10,8,6,.64);pointer-events:auto;animation:celebration-overlay-in .35s ease both}.daily-complete-content{position:relative;display:flex;flex-direction:column;align-items:center;width:min(82vw,720px);justify-content:center}.celebration-modal--daily-complete{max-width:720px;overflow:visible}.daily-complete__plate{position:relative;display:grid;justify-items:center;width:100%;isolation:isolate}.daily-complete__count{font-family:var(--font-display);font-style:italic;font-size:clamp(9.4rem,18vw,16rem);font-weight:400;line-height:.96;color:#f5ead7;letter-spacing:0;font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums;text-shadow:0 0 80px rgba(242,229,211,.18),0 28px 84px rgba(0,0,0,.38);transform:translateX(-.02em)}.daily-complete__plate--digits-1 .daily-complete__count,.daily-complete__plate--digits-2 .daily-complete__count{font-size:clamp(9.4rem,18vw,16rem)}.daily-complete__plate--digits-3 .daily-complete__count{font-size:clamp(7.2rem,13vw,11.6rem)}.daily-complete__plate--digits-4 .daily-complete__count{font-size:clamp(5.8rem,9.6vw,8.8rem)}.daily-complete__rule{display:block;width:min(34vw,320px);height:1px;margin:clamp(16px,1.6vw,28px) 0 12px;background:linear-gradient(90deg,transparent,rgba(242,229,211,.58),transparent);transform-origin:center;animation:daily-rule-draw .62s cubic-bezier(.22,1,.36,1) .42s both}.daily-complete__label{font-family:var(--font-display);font-size:clamp(.88rem,1.45vw,1.2rem);font-weight:400;color:rgba(242,229,211,.74);text-transform:uppercase;letter-spacing:.58em;padding-left:.58em}.daily-complete__body{margin:22px 0 0;font-size:clamp(1.2rem,1.8vw,1.55rem);color:rgba(242,229,211,.58);animation:daily-type-rise .62s cubic-bezier(.22,1,.36,1) .52s both}.daily-complete__body,.daily-complete__folio{font-family:var(--font-display);font-style:italic;font-weight:400;line-height:1.25;letter-spacing:.02em}.daily-complete__folio{margin:12px 0 0;font-size:clamp(1rem,1.35vw,1.18rem);text-transform:none;color:rgba(242,229,211,.34);animation-delay:.66s}.celebration-overlay--milestone{background:var(--celebration-background);pointer-events:auto;animation:celebration-overlay-in .35s ease both}.celebration-sparks{position:absolute;inset:0;pointer-events:none;overflow:hidden}.celebration-spark{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--celebration-primary,#4f8ef7);opacity:0;left:calc(8% + (var(--spark-i) * 5.5%));bottom:calc(14% + (var(--spark-i) * 3.4%));animation:celebration-spark-float 2.6s calc(var(--spark-i) * .17s) ease-out infinite}.celebration-spark:nth-child(2n){width:3px;height:3px;background:rgba(242,229,211,.55);animation-duration:3s}.celebration-modal{position:relative;box-sizing:border-box;animation:celebration-modal-in .52s cubic-bezier(.22,1,.36,1) both;text-align:center;-webkit-user-select:none;user-select:none;padding:32px 28px 26px;max-width:380px;width:calc(100% - 40px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}.celebration-modal--constellation{max-width:440px}.celebration-modal--constellation:before{content:"";position:absolute;top:50%;left:50%;width:165%;aspect-ratio:1;transform:translate(-50%,-50%);z-index:-1;background:radial-gradient(circle closest-side at 50% 50%,rgba(6,5,10,.8) 0,rgba(6,5,10,.62) 34%,rgba(6,5,10,.32) 56%,rgba(6,5,10,.1) 74%,transparent 90%);pointer-events:none}.celebration-modal__count{display:block;font-family:var(--font-display);font-style:italic;font-size:clamp(4.6rem,12vw,6.6rem);font-weight:400;line-height:1;color:#f5ead7;text-shadow:0 0 60px var(--celebration-glow,rgba(79,142,247,.4)),0 2px 18px rgba(0,0,0,.55);font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.celebration-modal__sublabel{margin:10px 0 0;font-family:var(--font-display);font-size:.78rem;font-weight:400;text-transform:uppercase;letter-spacing:.5em;padding-left:.5em;color:rgba(242,229,211,.82);text-shadow:0 1px 10px rgba(0,0,0,.5)}.celebration-modal__headline{margin:16px 0 0;font-family:var(--font-display);font-style:italic;font-size:clamp(1.4rem,2.4vw,1.7rem);font-weight:400;line-height:1.2;letter-spacing:.02em;color:rgba(242,229,211,.96);text-shadow:0 1px 12px rgba(0,0,0,.55);overflow-wrap:anywhere}.celebration-milestone-map{margin:20px 0 0;font-family:var(--font-display);font-size:.84rem;letter-spacing:.08em;color:rgba(242,229,211,.62);text-shadow:0 1px 8px rgba(0,0,0,.45);font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.celebration-milestone-map__sep{color:rgba(242,229,211,.34);padding:0 2px}.celebration-milestone-map__tier--past{color:rgba(242,229,211,.6)}.celebration-milestone-map__tier--current{color:color-mix(in srgb,var(--celebration-primary,#4f8ef7) 50%,#fff8ec)}.celebration-milestone-map__tier--future{color:rgba(242,229,211,.4)}.celebration-modal__body{margin:14px 0 0;font-family:var(--font-display);font-size:1rem;line-height:1.55;letter-spacing:.02em;color:rgba(242,229,211,.58);overflow-wrap:anywhere}.celebration-modal__body--dropped{max-width:100%;margin-top:8px;color:rgba(242,229,211,.62);font-family:var(--font-body);font-size:.88rem;font-weight:600;line-height:1.38;letter-spacing:.01em;text-shadow:0 8px 28px rgba(0,0,0,.36)}.celebration-modal__dropped-copy{display:inline-flex;flex-wrap:wrap;justify-content:center;column-gap:.34em;row-gap:.02em}.celebration-modal__hint{margin:22px 0 0;font-size:.68rem;color:rgba(242,229,211,.26);letter-spacing:.1em}.celebration-modal__restore-card{margin:22px auto 0;max-width:350px;padding:16px 18px 17px;border:1px solid rgba(245,210,175,.14);border-radius:22px;background:radial-gradient(ellipse 80% 90% at 50% 0,rgba(232,135,74,.12),transparent 70%),linear-gradient(180deg,rgba(255,245,235,.07),rgba(255,245,235,.026)),rgba(38,18,10,.34);box-shadow:inset 0 1px 0 rgba(255,245,235,.06),0 16px 44px rgba(8,3,1,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.celebration-modal__restore-card--locked{border-color:rgba(245,164,116,.18);background:radial-gradient(ellipse 80% 90% at 50% 0,rgba(245,164,116,.12),transparent 70%),linear-gradient(180deg,rgba(245,164,116,.055),rgba(255,245,235,.026)),rgba(38,18,10,.34)}.celebration-modal__restore-kicker{display:block;color:var(--accent);font-family:var(--font-body);font-size:.68rem;font-weight:800;line-height:1;letter-spacing:.11em;text-transform:uppercase}.celebration-modal__restore-card--locked .celebration-modal__restore-kicker{color:#f5a474}.celebration-modal__restore-note{margin:8px 0 0;color:rgba(242,229,211,.72);font-family:var(--font-body);font-size:.86rem;font-weight:600;line-height:1.44;letter-spacing:0}.celebration-modal__glow-line{justify-content:center;flex-wrap:wrap;gap:7px;margin:14px 0 0;color:rgba(242,229,211,.54);font-weight:700;line-height:1.25}.celebration-modal__glow-line,.celebration-modal__glow-pill{display:inline-flex;align-items:center;font-family:var(--font-body);font-size:.76rem}.celebration-modal__glow-pill{min-height:26px;padding:0 12px;border:1px solid rgba(232,135,74,.25);border-radius:999px;background:rgba(232,135,74,.12);color:var(--accent);font-weight:800;line-height:1}.celebration-modal__restore-card--locked .celebration-modal__glow-pill{border-color:rgba(245,164,116,.3);background:rgba(245,164,116,.12);color:#ffd4bc}.celebration-actions{margin:24px auto 0;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.celebration-actions--dropped{width:min(100%,360px);flex-direction:column;align-items:stretch;gap:10px}.celebration-actions--dropped .celebration-streak-action{width:100%;height:42px;min-height:42px;padding:0 18px;font-size:.82rem;letter-spacing:.01em;text-transform:none;box-shadow:0 12px 30px rgba(8,3,1,.22)}.celebration-actions--dropped .celebration-streak-action--restore{box-shadow:0 14px 34px rgba(232,135,74,.18),0 10px 28px rgba(8,3,1,.24)}.celebration-actions--dropped .celebration-streak-action--needs-glow{background:rgba(245,164,116,.14);border-color:rgba(245,164,116,.28);color:#ffd4bc;box-shadow:0 12px 30px rgba(8,3,1,.22)}.celebration-actions--dropped .celebration-streak-action--needs-glow:hover:not(:disabled){background:rgba(245,164,116,.2);border-color:rgba(245,164,116,.4);color:#ffe4d5}.celebration-overlay--exiting{animation:celebration-overlay-out .48s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none}.celebration-overlay--exiting .celebration-modal{animation:celebration-modal-out .48s cubic-bezier(.4,0,.2,1) forwards}@keyframes celebration-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes celebration-modal-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-6px) scale(.985)}}.celebration-overlay--legendary .celebration-modal__count{animation:celebration-legendary-shimmer 5s linear .65s infinite}.celebration-overlay--legendary .celebration-spark{animation:celebration-spark-float 2.6s calc(var(--spark-i) * .17s) ease-out infinite,celebration-legendary-shimmer 5s calc(var(--spark-i) * .3s) linear infinite}.celebration-overlay--special-day{background:radial-gradient(ellipse 80% 70% at 50% 42%,rgba(245,226,184,.14) 0,rgba(9,7,3,.88) 100%);pointer-events:auto;animation:celebration-overlay-in .35s ease both}.celebration-sparks--gold .celebration-spark{background:#f5e2b8}.celebration-sparks--gold .celebration-spark:nth-child(2n){background:rgba(245,226,184,.5)}.celebration-modal__eyebrow{margin:0;font-family:var(--font-display);font-size:.72rem;font-weight:400;text-transform:uppercase;letter-spacing:.5em;padding-left:.5em;color:rgba(242,229,211,.6)}.celebration-modal__eyebrow--gold{color:rgba(245,226,184,.65)}.celebration-modal__special-label{margin:16px 0 0;font-family:var(--font-display);font-style:italic;font-size:clamp(2.4rem,6vw,3.4rem);font-weight:400;line-height:1.08;letter-spacing:0;color:#f5ead7;text-shadow:0 0 70px rgba(245,226,184,.4);overflow-wrap:anywhere}.celebration-modal__rule{display:block;width:min(46vw,220px);height:1px;margin:20px auto 14px;background:linear-gradient(90deg,transparent,rgba(242,229,211,.55),transparent);transform-origin:center;animation:daily-rule-draw .62s cubic-bezier(.22,1,.36,1) .32s both}.celebration-modal__rule--gold{background:linear-gradient(90deg,transparent,rgba(245,226,184,.6),transparent)}.celebration-modal__special-date{margin:0;font-family:var(--font-display);font-size:.92rem;color:rgba(242,229,211,.55);letter-spacing:.05em;overflow-wrap:anywhere}.celebration-overlay--birthday{background:radial-gradient(ellipse 48% 42% at 50% 35%,rgba(255,178,209,.22) 0,rgba(255,178,209,0) 72%),radial-gradient(ellipse 78% 68% at 50% 46%,rgba(248,205,117,.14) 0,rgba(10,4,8,.88) 100%);pointer-events:auto;animation:celebration-overlay-in .35s ease both}.celebration-sparks--birthday .celebration-spark{background:#ffb2d1;box-shadow:0 0 16px rgba(255,178,209,.46)}.celebration-sparks--birthday .celebration-spark:nth-child(3n){width:6px;height:6px;background:#f8cd75}.celebration-sparks--birthday .celebration-spark:nth-child(2n){background:rgba(245,234,215,.72)}.celebration-modal--birthday{max-width:500px}.celebration-birthday-cake{position:relative;width:112px;height:88px;margin:0 auto 20px}.celebration-birthday-cake__base,.celebration-birthday-cake__top{position:absolute;left:50%;transform:translateX(-50%);border:1px solid rgba(245,234,215,.28);box-shadow:0 24px 54px rgba(255,178,209,.18)}.celebration-birthday-cake__top{bottom:28px;width:92px;height:26px;border-radius:16px 16px 8px 8px;background:linear-gradient(180deg,#f9ddae,#f2b7ce)}.celebration-birthday-cake__base{bottom:0;width:112px;height:34px;border-radius:10px 10px 18px 18px;background:linear-gradient(90deg,rgba(245,234,215,.18) 0 10%,transparent 10% 22%,rgba(245,234,215,.18) 22% 32%,transparent 32% 44%,rgba(245,234,215,.18) 44% 54%,transparent 54% 66%,rgba(245,234,215,.18) 66% 76%,transparent 76% 88%,rgba(245,234,215,.18) 88% 100%),linear-gradient(180deg,#d86fa5,#a94f84)}.celebration-birthday-cake__candle{position:absolute;bottom:54px;width:8px;height:26px;border-radius:999px;background:linear-gradient(180deg,#f5ead7,#ffb2d1)}.celebration-birthday-cake__candle:before{content:"";position:absolute;left:50%;top:-14px;width:10px;height:14px;border-radius:999px 999px 999px 0;background:#f8cd75;box-shadow:0 0 18px rgba(248,205,117,.85);transform:translateX(-50%) rotate(-12deg);animation:celebration-birthday-flame 1.1s ease-in-out infinite}.celebration-birthday-cake__candle--left{left:32px}.celebration-birthday-cake__candle--middle{left:52px}.celebration-birthday-cake__candle--right{left:72px}.celebration-modal__eyebrow--birthday{color:rgba(255,178,209,.76)}.celebration-modal__special-label--birthday{font-size:clamp(2.2rem,5.8vw,3.7rem);color:#fff0f7;text-shadow:0 0 54px rgba(255,178,209,.42),0 24px 80px rgba(0,0,0,.36)}.celebration-modal__rule--birthday{background:linear-gradient(90deg,transparent,rgba(255,178,209,.68),rgba(248,205,117,.62),transparent)}.celebration-overlay--streak-dropped{background:radial-gradient(ellipse 42% 34% at 50% 48%,rgba(232,135,74,.14),transparent 66%),radial-gradient(ellipse 70% 54% at 50% 50%,rgba(245,210,175,.08),transparent 68%),rgba(10,6,4,.86);pointer-events:auto;animation:celebration-overlay-in .35s ease both}.celebration-modal--streak-dropped{max-width:430px;padding:28px 24px 24px;border:1px solid rgba(245,210,175,.18);border-radius:24px;background:linear-gradient(180deg,rgba(38,18,10,.76),rgba(20,9,5,.56)),rgba(38,18,10,.62);box-shadow:0 24px 70px rgba(8,3,1,.42),inset 0 1px 0 rgba(255,245,235,.06);backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px)}.celebration-modal__headline--dropped{margin-top:2px;margin-bottom:0;font-size:clamp(2.15rem,5vw,2.72rem);font-weight:700;line-height:1.04;letter-spacing:-.01em;color:#f2e5d3;text-shadow:0 2px 24px rgba(232,135,74,.16)}@media (max-width:480px){.daily-complete-content{width:min(88vw,430px)}.daily-complete__count,.daily-complete__plate--digits-1 .daily-complete__count,.daily-complete__plate--digits-2 .daily-complete__count{font-size:clamp(7rem,32vw,10rem)}.daily-complete__plate--digits-3 .daily-complete__count{font-size:clamp(5.4rem,24vw,7.6rem)}.daily-complete__plate--digits-4 .daily-complete__count{font-size:clamp(4.4rem,18vw,6.2rem)}.daily-complete__rule{width:min(62vw,250px);margin-top:clamp(16px,4vw,24px)}.daily-complete__label{font-size:.76rem;letter-spacing:.42em;padding-left:.42em}.daily-complete__body{font-size:1.08rem}.daily-complete__folio{font-size:.92rem}.celebration-actions--dropped{width:100%}.celebration-trail{gap:10px}.celebration-trail__gap{width:20px}.celebration-modal{padding:24px 20px 20px}.celebration-modal--streak-dropped{border-radius:20px}.celebration-modal__restore-card{padding:12px 14px 13px}}html.auth-redirect-pending body{background:#0a0503;visibility:hidden}