*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0003}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.4}}.animate-page{animation:fadeInUp .35s ease-out}.animate-fade{animation:fadeIn .3s ease-out}.animate-scale{animation:scaleIn .3s ease-out}.status-dot-pulse{animation:statusPulse 2s ease-in-out infinite}.stagger-1{animation-delay:.04s;animation-fill-mode:both}.stagger-2{animation-delay:.08s;animation-fill-mode:both}.stagger-3{animation-delay:.12s;animation-fill-mode:both}.stagger-4{animation-delay:.16s;animation-fill-mode:both}.stagger-5{animation-delay:.2s;animation-fill-mode:both}.stagger-6{animation-delay:.24s;animation-fill-mode:both}::selection{background:var(--portal-primary, #2563eb);color:#fff}
