:root{--primary: #6495ED;--primary-hover: #5080dd;--bg-dark: #141423;--bg-light: #fafafa;--glass-bg: rgba(20, 20, 35, .6);--glass-bg-light: rgba(255, 255, 255, .8);--glass-border: rgba(255, 255, 255, .1);--glass-border-light: rgba(0, 0, 0, .1);--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--text-primary-light: #333333;--text-secondary-light: #666666;--user-msg-bg: var(--primary);--bot-msg-bg: rgba(255, 255, 255, .08);--bot-msg-bg-light: rgba(0, 0, 0, .05);--shadow: 0 10px 30px rgba(0, 0, 0, .3);--shadow-light: 0 10px 30px rgba(0, 0, 0, .1)}[data-theme=light]{--bg-dark: #fafafa;--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(0, 0, 0, .1);--text-primary: #333333;--text-secondary: #666666;--bot-msg-bg: rgba(0, 0, 0, .05);--shadow: 0 10px 30px rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}body{font-family:Outfit,sans-serif;background:var(--bg-dark);color:var(--text-primary);line-height:1.6}.app-container{display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:900px;margin:0 auto;padding:0 1rem;transition:padding .3s ease}@media (max-width: 480px){.app-container{padding:0 .75rem}}.header{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--glass-border)}.header-title{display:flex;align-items:center;gap:.75rem}.header-title .logo{font-size:2rem}.header-title h1{font-size:clamp(1.2rem,5vw,1.5rem);font-weight:600;background:linear-gradient(135deg,var(--primary),#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-actions{display:flex;gap:.5rem}.icon-btn{width:44px;height:44px;border:none;border-radius:50%;background:var(--glass-bg);color:var(--text-primary);font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border)}.icon-btn:hover{background:#ffffff26;transform:scale(1.1)}.icon-btn:active{transform:scale(.95)}.main-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-logo{font-size:5rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-title{font-size:clamp(1.5rem,8vw,2.5rem);font-weight:600;margin-bottom:.5rem;background:linear-gradient(135deg,var(--primary),#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.empty-subtitle{color:var(--text-secondary);font-size:clamp(.95rem,4vw,1.1rem);margin-bottom:2rem}.prompt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:500px;width:100%}.prompt-card{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;cursor:pointer;transition:all .3s ease;text-align:left;font-family:inherit;color:var(--text-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.prompt-card:hover{background:#ffffff1f;border-color:var(--primary);transform:translateY(-3px)}.prompt-icon{font-size:1.5rem}.prompt-text{font-size:.95rem;line-height:1.4}.prompt-text small{color:var(--text-secondary);font-size:.85rem}.chat-view{flex:1;display:flex;flex-direction:column;overflow:hidden}.messages-container{flex:1;overflow-y:auto;padding:1rem 0;display:flex;flex-direction:column;gap:1rem}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.message{display:flex;gap:.75rem;max-width:85%;animation:slideIn .3s ease}@media (max-width: 600px){.message{max-width:92%;gap:.5rem}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end;flex-direction:row-reverse}.message.bot{align-self:flex-start}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.message.user .message-avatar{background:var(--primary)}.message.bot .message-avatar{background:var(--glass-bg);border:1px solid var(--glass-border)}.message-content{padding:.875rem 1.25rem;border-radius:20px;line-height:1.5}.message.user .message-content{background:var(--primary);color:#fff;border-bottom-right-radius:6px}.message.bot .message-content{background:var(--bot-msg-bg);border:1px solid var(--glass-border);border-bottom-left-radius:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width: 480px){.message-content{padding:.75rem 1rem;font-size:.95rem}}.audio-message{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;min-width:min(280px,100%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.audio-play-btn{width:40px;height:40px;border-radius:50%;background:var(--primary);border:none;color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.audio-play-btn:hover{background:var(--primary-hover);transform:scale(1.05)}.audio-progress{flex:1;display:flex;flex-direction:column;gap:4px}.audio-slider{width:100%;height:6px;border-radius:3px;background:#fff3;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.audio-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary);cursor:pointer;transition:transform .2s ease}.audio-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.audio-time{font-size:.75rem;color:var(--text-secondary)}.audio-volume{width:24px;height:24px;background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1rem}.image-message{max-width:300px;border-radius:16px;overflow:hidden;cursor:pointer;transition:transform .3s ease}.image-message:hover{transform:scale(1.02)}.image-message img{width:100%;height:auto;display:block}.input-area{padding:1rem 0 1.5rem;border-top:1px solid var(--glass-border)}@media (max-width: 480px){.input-area{padding:.75rem 0 1rem}}.input-container{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:30px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width: 480px){.input-container{gap:.5rem;padding:.5rem .75rem}}.file-upload-btn{width:40px;height:40px;border-radius:50%;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.3rem;transition:all .2s ease;flex-shrink:0}.file-upload-btn:hover{background:#ffffff1a}.message-input{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:1rem;font-family:inherit;outline:none}.message-input::placeholder{color:var(--text-secondary)}.send-btn{width:44px;height:44px;border-radius:50%;background:var(--primary);border:none;color:#fff;font-size:1.2rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.send-btn:hover{background:var(--primary-hover);transform:scale(1.05)}.send-btn:active{transform:scale(.95)}.file-preview{display:flex;gap:.5rem;padding:.75rem;flex-wrap:wrap}.file-preview-item{position:relative;width:60px;height:60px;border-radius:10px;overflow:hidden;background:var(--glass-bg);border:1px solid var(--glass-border)}.file-preview-item img{width:100%;height:100%;object-fit:cover}.file-preview-item .file-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.file-preview-remove{position:absolute;top:-5px;right:-5px;width:20px;height:20px;border-radius:50%;background:#f44;border:none;color:#fff;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.footer-text{text-align:center;font-size:.8rem;color:var(--text-secondary);margin-top:.75rem}.modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:1rem}.modal-close{position:absolute;top:-40px;right:0;width:36px;height:36px;border-radius:50%;background:var(--glass-bg);border:1px solid var(--glass-border);color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close:hover{background:#fff3}.modal-image{max-width:100%;max-height:80vh;border-radius:10px;object-fit:contain;transition:transform .3s ease}.modal-actions{display:flex;gap:.75rem}.modal-btn{padding:.5rem 1rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;color:#fff;font-family:inherit;cursor:pointer;transition:all .2s ease}.modal-btn:hover{background:#fff3}@media (max-width: 600px){.modal-content{max-width:95vw;gap:.5rem}.modal-image{max-height:70vh}.modal-actions{flex-wrap:wrap;justify-content:center}.modal-btn{padding:.4rem .8rem;font-size:.85rem}.modal-close{top:-45px;right:5px}}.hidden{display:none!important}@media (max-width: 600px){.prompt-grid{grid-template-columns:1fr;gap:.75rem}.empty-logo{font-size:3.5rem}.audio-message{min-width:unset;width:100%}.header-actions{gap:.25rem}.icon-btn{width:40px;height:40px;font-size:1.1rem}}@media (max-width: 400px){.header-actions{gap:0}.message-avatar{width:32px;height:32px;font-size:1rem}}.typing-indicator{display:flex;gap:4px;padding:.5rem}.typing-dot{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:typing 1.4s infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}
