*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:IBM Plex Sans,Segoe UI,sans-serif;background:#F0F3F8;color:#0d1526;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#C8D0E0;border-radius:3px}::selection{background:rgba(26,39,102,.13)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.06)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes ping{0%{transform:scale(1);opacity:1}75%,to{transform:scale(2.2);opacity:0}}@keyframes voiceWave{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}@keyframes botPulse{0%{transform:scale(1);opacity:.55}to{transform:scale(1.75);opacity:0}}@keyframes dotBounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}}@keyframes alertPulse{0%,to{box-shadow:0 0 #b8301880}70%{box-shadow:0 0 0 14px #b8301800}}
