:root{--primary: #6366f1;--primary-light: #818cf8;--primary-dark: #4f46e5;--secondary: #0ea5e9;--accent: #22d3ee;--gradient-primary: linear-gradient(135deg, #6366f1, #8b5cf6);--gradient-bg: linear-gradient(135deg, #0f0f23 0%, #1a1a3e 50%, #0f0f23 100%);--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .05));--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .3);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--success: #22c55e;--warning: #f59e0b;--error: #ef4444;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 1.5rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--gradient-bg);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}.app-container{display:flex;flex-direction:column;min-height:100vh;position:relative}.background-gradient{position:fixed;inset:0;background:radial-gradient(circle at 20% 20%,rgba(99,102,241,.15) 0%,transparent 40%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.15) 0%,transparent 40%),radial-gradient(circle at 50% 50%,rgba(14,165,233,.1) 0%,transparent 50%);z-index:-2;animation:backgroundPulse 15s ease-in-out infinite}.background-blur{position:fixed;inset:0;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);z-index:-1}@keyframes backgroundPulse{0%,to{opacity:1}50%{opacity:.7}}.header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);background:var(--glass-bg);border-bottom:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.logo{display:flex;align-items:center;gap:var(--spacing-sm)}.logo-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);border-radius:var(--radius-sm);color:#fff}.logo-icon svg{width:24px;height:24px}.logo-text{font-size:1.25rem;font-weight:600;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.status-indicator{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-full)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--warning);animation:statusPulse 2s ease-in-out infinite}.status-indicator.connected .status-dot{background:var(--success)}.status-indicator.error .status-dot{background:var(--error)}.status-indicator.recording .status-dot{background:var(--error);animation:recordingPulse 1s ease-in-out infinite}.status-text{font-size:.875rem;color:var(--text-secondary)}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes recordingPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.main-content{flex:1;display:flex;flex-direction:column;padding:var(--spacing-xl);max-width:800px;margin:0 auto;width:100%}.chat-container{flex:1;display:flex;flex-direction:column;gap:var(--spacing-md);overflow-y:auto;padding:var(--spacing-md);margin-bottom:var(--spacing-xl)}.welcome-message{text-align:center;padding:var(--spacing-2xl);animation:fadeIn .5s ease}.welcome-icon{width:80px;height:80px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);border-radius:var(--radius-lg);color:#fff}.welcome-icon svg{width:48px;height:48px}.welcome-message h2{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-sm)}.welcome-message p{color:var(--text-secondary);max-width:400px;margin:0 auto}.message{display:flex;flex-direction:column;max-width:80%;animation:slideIn .3s ease}.message.user{align-self:flex-end}.message.agent{align-self:flex-start}.message-content{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.message.user .message-content{background:var(--gradient-primary);border:none}.message.agent .message-content{background:#ffffff14}.chat-link{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease,opacity .2s ease;cursor:pointer}.chat-link:hover{border-bottom-color:var(--accent);opacity:.85}.chat-link-email:before{content:"✉ ";font-size:.85em}.chat-link-phone:before{content:"📞 ";font-size:.85em}.message-label{font-size:.75rem;color:var(--text-muted);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.message.user .message-label{text-align:right}.email-form-wrapper{max-width:90%!important}.email-form{padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-lg);background:linear-gradient(135deg,#6366f126,#8b5cf61a);border:1px solid rgba(99,102,241,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center}.email-form-icon{width:48px;height:48px;margin:0 auto var(--spacing-md);display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);border-radius:var(--radius-sm);color:#fff}.email-form-icon svg{width:28px;height:28px}.email-form-title{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.email-form-desc{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.email-form-input-group{display:flex;gap:var(--spacing-sm);max-width:400px;margin:0 auto}.email-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:#ffffff14;color:var(--text-primary);font-family:inherit;font-size:.9rem;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.email-input::placeholder{color:var(--text-muted)}.email-input:focus{border-color:var(--primary-light);box-shadow:0 0 0 3px #6366f133}.email-input:disabled{opacity:.6;cursor:not-allowed}.email-submit-btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);border:none;background:var(--gradient-primary);color:#fff;font-family:inherit;font-size:.9rem;font-weight:500;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast);white-space:nowrap}.email-submit-btn:hover:not(:disabled){transform:scale(1.03);box-shadow:0 4px 15px #6366f166}.email-submit-btn:disabled{opacity:.6;cursor:not-allowed}.email-form-status{font-size:.8rem;margin-top:var(--spacing-sm);min-height:1.2em}.email-form-status.success{color:var(--success)}.email-form-status.error{color:var(--error)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mic-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.mic-button{position:relative;width:100px;height:100px;border-radius:50%;border:none;background:var(--gradient-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-normal);box-shadow:0 4px 20px #6366f166,0 0 60px #6366f133}.mic-button:hover{transform:scale(1.05);box-shadow:0 6px 30px #6366f180,0 0 80px #6366f14d}.mic-button:active,.mic-button.recording{transform:scale(.95);background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 20px #ef444466,0 0 60px #ef444433}.mic-button.recording .mic-pulse{animation:micPulse 1s ease-in-out infinite}.mic-pulse{position:absolute;width:100%;height:100%;border-radius:50%;background:inherit;opacity:0}@keyframes micPulse{0%{transform:scale(1);opacity:.5}to{transform:scale(1.5);opacity:0}}.mic-icon{z-index:1}.mic-icon svg{width:40px;height:40px}.mic-hint{font-size:.875rem;color:var(--text-secondary)}.mic-button.processing{background:linear-gradient(135deg,#f59e0b,#d97706);animation:processingPulse 1.5s ease-in-out infinite}@keyframes processingPulse{0%,to{opacity:1}50%{opacity:.7}}.footer{text-align:center;padding:var(--spacing-lg);color:var(--text-muted);font-size:.875rem;border-top:1px solid var(--glass-border)}.chat-container::-webkit-scrollbar{width:6px}.chat-container::-webkit-scrollbar-track{background:transparent}.chat-container::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:var(--radius-full)}.chat-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media(max-width:640px){.header,.main-content{padding:var(--spacing-md)}.welcome-message{padding:var(--spacing-lg)}.mic-button{width:80px;height:80px}.mic-icon svg{width:32px;height:32px}.email-form-input-group{flex-direction:column}.email-form{padding:var(--spacing-md)}}.connection-overlay{position:fixed;inset:0;background:#0f0f23f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal)}.connection-overlay.visible{opacity:1;visibility:visible}.overlay-content{text-align:center;animation:fadeIn .5s ease}.overlay-title{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-sm);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.overlay-text{color:var(--text-secondary);font-size:1rem}.loader-ring{display:inline-block;position:relative;width:80px;height:80px;margin-bottom:var(--spacing-lg)}.loader-ring div{box-sizing:border-box;display:block;position:absolute;width:64px;height:64px;margin:8px;border:4px solid transparent;border-radius:50%;border-top-color:var(--primary);animation:loaderRing 1.2s cubic-bezier(.5,0,.5,1) infinite}.loader-ring div:nth-child(1){animation-delay:-.45s;border-top-color:var(--primary)}.loader-ring div:nth-child(2){animation-delay:-.3s;border-top-color:var(--primary-light)}.loader-ring div:nth-child(3){animation-delay:-.15s;border-top-color:var(--secondary)}.loader-ring div:nth-child(4){border-top-color:var(--accent)}@keyframes loaderRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
