/* Shared public/auth/admin appearance control. No animation during first paint. */
html[data-theme] body .theme-toggle{position:relative;isolation:isolate;width:53px;height:29px;flex:none;display:block;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);color:var(--muted)}
html[data-theme] body .theme-toggle::before{content:"";position:absolute;inset:3px auto 3px 3px;width:21px;border-radius:50%;background:var(--surface);box-shadow:0 1px 4px #0002;transform:translateX(0);transition:transform .32s cubic-bezier(.2,.75,.25,1),background-color .28s}
html[data-theme=light] body .theme-toggle::before{transform:translateX(24px)}
html[data-theme] body .theme-toggle .theme-moon,html[data-theme] body .theme-toggle .theme-sun{position:absolute;top:5px;width:17px;height:17px;display:grid;place-items:center;transition:color .28s,opacity .28s,transform .32s}
html[data-theme] body .theme-toggle .theme-moon{left:5px;transform:rotate(-12deg)}
html[data-theme] body .theme-toggle .theme-sun{right:5px;opacity:.55;transform:rotate(-55deg) scale(.85)}
html[data-theme] body .theme-toggle .ui-icon{width:13px;height:13px}
html[data-theme=dark] body .theme-toggle .theme-moon,html[data-theme=light] body .theme-toggle .theme-sun{color:var(--accent);opacity:1;transform:rotate(0) scale(1)}
html[data-theme=light] body .theme-toggle .theme-moon{opacity:.55;transform:rotate(38deg) scale(.85)}
html[data-theme] body .theme-toggle:hover{border-color:var(--muted)}
html[data-theme] body .theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
html.appearance-changing,html.appearance-changing body,html.appearance-changing :where(.site-header,.site-footer,.section-shell,.editor-demo,.editor-sidebar,.editor-source,.editor-moments,.editor-result,.editor-timeline,.demo-tabs,.demo-moment,.demo-format,.theme-toggle,.language-link,.auth-card,.auth-visual,.pricing-card,.plan-card,.checkout-form,.checkout-summary,.payment-method,.section-shell article,.section-shell input,.section-shell select,.section-shell textarea,.section-shell button,.section-shell a,.section-shell p,.section-shell h1,.section-shell h2,.section-shell h3,.calendar-days>div,.calendar-heading,.faq-item,.button){transition-property:background-color,color,border-color,box-shadow;transition-duration:.32s;transition-timing-function:ease}
@media(max-width:640px){html[data-theme] body .theme-toggle{width:49px;height:28px}html[data-theme] body .theme-toggle::before{width:20px}html[data-theme=light] body .theme-toggle::before{transform:translateX(21px)}html[data-theme] body .theme-toggle .theme-moon,html[data-theme] body .theme-toggle .theme-sun{top:5px;width:16px;height:16px}}
@media(prefers-reduced-motion:reduce){html[data-theme] body .theme-toggle::before,html[data-theme] body .theme-toggle .theme-moon,html[data-theme] body .theme-toggle .theme-sun,html.appearance-changing,html.appearance-changing body,html.appearance-changing *{transition:none;animation:none}}
