.scroll-to-top{position:fixed;right:1.25rem;bottom:1.25rem;z-index:50;display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border:none;border-radius:9999px;background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--primary)) 65%,hsl(var(--primary)/.9));color:hsl(var(--primary-foreground));box-shadow:0 18px 45px rgba(59,130,246,.35),0 10px 25px rgba(15,23,42,.18);cursor:pointer;opacity:0;transform:translateY(16px) scale(.98);pointer-events:none;transition:opacity .25s ease,transform .25s ease,box-shadow .2s ease}.scroll-to-top__icon{width:1.25rem;height:1.25rem}.scroll-to-top--visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;animation:scroll-to-top-fade-in .25s ease}.scroll-to-top:focus-visible,.scroll-to-top:hover{box-shadow:0 20px 50px rgba(59,130,246,.4),0 12px 28px rgba(15,23,42,.24);transform:translateY(-2px) scale(1.02)}.scroll-to-top:focus-visible{outline:3px solid rgba(59,130,246,.35);outline-offset:2px}.dark .scroll-to-top{background:linear-gradient(135deg,#38bdf8,#6366f1 65%,#8b5cf6);color:#0b1224;box-shadow:0 16px 40px rgba(99,102,241,.35),0 10px 26px rgba(0,0,0,.55)}@keyframes scroll-to-top-fade-in{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:640px){.scroll-to-top{right:.85rem;bottom:.85rem}}.notification-indicators{display:inline-flex;align-items:center;gap:.35rem}.notification-priority-dot{position:relative;display:inline-flex;width:.8rem;height:.8rem;border-radius:9999px;box-shadow:0 0 0 3px rgba(0,0,0,.04)}.notification-priority-dot:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:.35;animation:priorityPulse 1.6s ease-in-out infinite}.notification-priority-dot-critical,.notification-priority-dot-critical:after{background-color:#ef4444}.notification-priority-dot-high,.notification-priority-dot-high:after{background-color:#f97316}@keyframes priorityPulse{0%{transform:scale(1);opacity:.5}70%{transform:scale(1.8);opacity:0}to{transform:scale(1.8);opacity:0}}@media (prefers-reduced-motion:reduce){.notification-priority-dot:after{animation:none}}