:root{--bg-primary: #0e1621;--bg-secondary: #17212b;--bg-accent: #2b5278;--accent: #667eea;--accent-hover: #7b93ff;--accent-light: rgba(102, 126, 234, .15);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-success: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-accent: linear-gradient(135deg, #7b93ff 0%, #667eea 100%);--gradient-subtle: linear-gradient(135deg, rgba(102, 126, 234, .12) 0%, rgba(118, 75, 162, .08) 100%);--text-primary: #f5f5f5;--text-secondary: #8b9fad;--text-muted: #6c7883;--msg-sent: #2b3e6b;--msg-received: #182533;--border: rgba(255, 255, 255, .08);--success: #4facfe;--error: #f5576c;--warning: #ff9800;--glass-bg: rgba(255, 255, 255, .1);--glass: rgba(23, 33, 43, .8);--glass-border: rgba(255, 255, 255, .2);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .37);--glass-highlight: rgba(255, 255, 255, .06);--radius: 12px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 32px 0 rgba(31, 38, 135, .37)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;overflow:hidden;position:fixed;inset:0}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.4;overscroll-behavior:none;-webkit-overflow-scrolling:touch;touch-action:manipulation;user-select:none;-webkit-user-select:none}input,textarea,[contenteditable=true]{user-select:text;-webkit-user-select:text}html{overscroll-behavior:none}@supports (padding: env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}input,textarea,button{font-family:inherit;font-size:inherit}input,textarea,select{font-size:16px!important}a{color:var(--accent);text-decoration:none}.glass{background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-highlight)}.glass-card{background:#ffffff14;backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-highlight)}.glass-surface{background:#ffffff0f;backdrop-filter:blur(16px) saturate(1.1);-webkit-backdrop-filter:blur(16px) saturate(1.1);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md)}@keyframes skeleton-pulse{0%{opacity:.4}50%{opacity:.7}to{opacity:.4}}.skeleton{background:var(--border);border-radius:var(--radius-sm);animation:skeleton-pulse 1.5s infinite ease-in-out}.twemoji{height:1.2em;width:1.2em;margin:0 .05em 0 .1em;vertical-align:-.2em;display:inline}::selection{background:#5288c159}*{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:768px){::-webkit-scrollbar{display:none}*{scrollbar-width:none}button,a,[role=button]{min-height:44px;min-width:44px}body{-webkit-touch-callout:none}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes messageIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .25s ease-out}.animate-slide-right{animation:slideInRight .3s cubic-bezier(.16,1,.3,1)}.animate-slide-left{animation:slideInLeft .3s cubic-bezier(.16,1,.3,1)}.animate-scale-in{animation:scaleIn .2s ease-out}.animate-message-in{animation:messageIn .2s ease-out}.animate-slide-up{animation:slideUp .25s ease-out}.animate-pop-in{animation:popIn .25s cubic-bezier(.175,.885,.32,1.275)}.typing-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);animation:typingBounce 1.4s infinite}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}button,a,input,textarea,select{transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease,opacity .15s ease}button:active{transform:scale(.97)}*{scroll-behavior:smooth}@keyframes glowPulse{0%,to{box-shadow:0 0 8px #5288c126}50%{box-shadow:0 0 16px #5288c14d}}@keyframes ripple{0%{transform:scale(0);opacity:.4}to{transform:scale(2.5);opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-glow{animation:glowPulse 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
