.phi-press{transition:transform 90ms}.phi-press:active{transform:scale(.97)}@keyframes phi-anim-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.phi-anim-rise{animation:.5s backwards phi-anim-rise}.phi-stagger>*{animation:.5s backwards phi-anim-rise;animation-delay:calc(var(--i,0) * 60ms)}@keyframes phi-wiggle{0%{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}to{transform:rotate(0)}}.phi-wiggle-hover:hover svg,.phi-wiggle-hover:focus-visible svg,svg.phi-wiggle-hover:hover,svg.phi-wiggle-hover:focus-visible{animation:.45s phi-wiggle}@keyframes phi-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}.phi-pop{animation:.35s cubic-bezier(.34,1.56,.64,1) both phi-pop}@keyframes phi-draw-in{0%{stroke-dashoffset:1px}}.phi-draw-in{stroke-dasharray:1;stroke-dashoffset:var(--phi-trail-offset,0);animation:1.1s ease-out phi-draw-in}@keyframes phi-confetti-piece{0%{opacity:1;transform:translate(-50%,-50%)translate(0)rotate(0)}to{transform:translate(-50%, -50%) translate(var(--cx,0px), 70px) rotate(var(--cr,0deg));opacity:0}}.phi-confetti-piece{animation:.9s ease-out forwards phi-confetti-piece;position:absolute}@media (prefers-reduced-motion:reduce){.phi-press,.phi-anim-rise,.phi-stagger>*,.phi-wiggle-hover:hover svg,.phi-wiggle-hover:focus-visible svg,svg.phi-wiggle-hover:hover,svg.phi-wiggle-hover:focus-visible,.phi-pop,.phi-draw-in,.phi-confetti-piece{transition:none!important;animation:none!important}.phi-press:active{transform:none}}
.phi-root-hydration-watchdog{z-index:9999;border:1px solid var(--phi-border-strong);width:min(92vw,34rem);color:var(--phi-text);background:var(--phi-surface);box-shadow:var(--phi-shadow);text-align:center;border-radius:14px;padding:16px 20px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.phi-root-hydration-watchdog:focus{outline:3px solid var(--phi-focus-ring);outline-offset:3px}.phi-root-hydration-watchdog-heading{margin:0 0 8px;font-size:16px;font-weight:600}.phi-root-hydration-watchdog-message{color:var(--phi-text-soft);margin:0;font-size:13.5px;line-height:1.6}.phi-root-hydration-watchdog-details{max-width:100%;color:var(--phi-text-faint);white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;font:12px/1.4 ui-monospace,monospace;overflow:auto}@media (max-width:520px){.phi-root-hydration-watchdog{bottom:max(16px, env(safe-area-inset-bottom));width:calc(100vw - 32px);padding:15px 16px}}@media (prefers-reduced-motion:reduce){.phi-root-hydration-watchdog{scroll-behavior:auto}}
