body,html{margin:0;padding:0;height:100%;background:radial-gradient(ellipse 120% 90% at 50% 120%,#070a17 0,#03040a 55%),#03040a;overflow:hidden;-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}::selection{background:hsla(38,46%,69%,.18)}input::placeholder{color:hsla(37,39%,94%,.26);font-weight:300;letter-spacing:.08em}@keyframes voidIn{0%{opacity:0;filter:blur(11px);transform:translateY(14px) scale(.978);letter-spacing:.5em}55%{opacity:1}to{opacity:1;filter:blur(0);transform:none;letter-spacing:.06em}}@keyframes haloExpand{0%{opacity:0;transform:translate(-50%,-50%) scale(.15)}28%{opacity:.7}to{opacity:0;transform:translate(-50%,-50%) scale(2.6)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px) scale(.99);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes glowPulse{0%,to{opacity:.78;transform:scale(1)}50%{opacity:1;transform:scale(1.035)}}@keyframes hueDrift{0%{filter:hue-rotate(0deg) saturate(1)}50%{filter:hue-rotate(26deg) saturate(1.12)}to{filter:hue-rotate(0deg) saturate(1)}}@keyframes dotbob{0%,80%,to{opacity:.14;transform:translateY(0)}40%{opacity:.85;transform:translateY(-3px)}}@keyframes uiIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.msg{position:relative}.msg-ai:before{content:"";position:absolute;inset:-38% -8%;background:radial-gradient(ellipse 58% 64% at 50% 50%,hsla(38,46%,69%,.08) 0,hsla(39,46%,61%,.03) 42%,transparent 72%);filter:blur(10px);pointer-events:none;z-index:-1}.scroll{scrollbar-width:thin;scrollbar-color:hsla(38,46%,69%,.22) transparent;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.scroll::-webkit-scrollbar{width:6px}.scroll::-webkit-scrollbar-track{background:transparent}.scroll::-webkit-scrollbar-thumb{background:linear-gradient(hsla(38,46%,69%,.06),hsla(38,46%,69%,.3),hsla(38,46%,69%,.06));border-radius:6px}.scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(hsla(38,46%,69%,.1),hsla(38,46%,69%,.5),hsla(38,46%,69%,.1))}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important}}