:root{--bg-primary: #080B11;--bg-secondary: #0F1322;--bg-card: rgba(17, 24, 39, .6);--border-color: rgba(255, 255, 255, .08);--border-color-glow: rgba(99, 102, 241, .3);--text-primary: #F3F4F6;--text-secondary: #9CA3AF;--text-muted: #6B7280;--accent-blue: #3b82f6;--accent-indigo: #6366f1;--accent-purple: #a855f7;--accent-cyan: #06b6d4;--accent-rose: #ec4899;--gradient-cyber: linear-gradient(135deg, #6366f1 0%, #a855f7 100%);--gradient-cyan-rose: linear-gradient(135deg, #06b6d4 0%, #ec4899 100%);--gradient-gold: linear-gradient(135deg, #f59e0b 0%, #eab308 100%);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .5);--shadow-glow: 0 0 15px rgba(99, 102, 241, .25);--font-sans: "Inter", system-ui, sans-serif;--font-display: "Outfit", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);background-image:radial-gradient(at 10% 10%,rgba(99,102,241,.12) 0px,transparent 50%),radial-gradient(at 90% 80%,rgba(236,72,153,.08) 0px,transparent 50%),radial-gradient(at 50% 50%,rgba(6,182,212,.06) 0px,transparent 50%);background-attachment:fixed;color:var(--text-primary);font-family:var(--font-sans);overflow:hidden;height:100vh;width:100vw;-webkit-font-smoothing:antialiased}.app-container{display:flex;height:100vh;width:100vw;overflow:hidden}.sidebar{width:320px;background-color:#0a0e19d9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--border-color);display:flex;flex-direction:column;height:100%;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:10}@media (max-width: 768px){.sidebar{position:absolute;left:-320px;top:0;bottom:0}.sidebar.open{left:0}}.sidebar-header{padding:24px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand-logo{width:36px;height:36px;background:var(--gradient-cyber);border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-glow)}.brand-logo svg{color:#fff;width:20px;height:20px}.brand-name{font-family:var(--font-display);font-size:1.4rem;font-weight:800;letter-spacing:-.5px;background:linear-gradient(to right,#fff,#9ca3af);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.new-chat-btn{margin:16px 24px;padding:12px;background:var(--gradient-cyber);border:none;border-radius:12px;color:#fff;font-family:var(--font-display);font-weight:600;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .2s ease}.new-chat-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-glow);filter:brightness(1.1)}.new-chat-btn:active{transform:translateY(1px)}.thread-list{flex:1;overflow-y:auto;padding:0 16px}.thread-list::-webkit-scrollbar{width:4px}.thread-list::-webkit-scrollbar-track{background:transparent}.thread-list::-webkit-scrollbar-thumb{background:#ffffff0d;border-radius:10px}.thread-item{display:flex;align-items:center;justify-content:space-between;padding:12px;margin-bottom:8px;border-radius:10px;background:transparent;border:1px solid transparent;cursor:pointer;transition:all .2s ease}.thread-item:hover{background:#ffffff08;border-color:#ffffff0d}.thread-item.active{background:#6366f11a;border-color:#6366f133;box-shadow:inset 0 0 10px #6366f10d}.thread-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.thread-title{font-size:.9rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-item.active .thread-title{color:#fff;font-weight:600}.thread-actions{display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .2s ease}.thread-item:hover .thread-actions{opacity:1}.thread-action-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.thread-action-btn:hover{color:var(--accent-rose);background:#ec48991a}.sidebar-footer{padding:16px 24px;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.settings-btn{display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .2s ease}.settings-btn:hover{color:#fff;background:#ffffff0d}.chat-panel{flex:1;display:flex;flex-direction:column;height:100%;position:relative;overflow:hidden}.chat-header{height:70px;padding:0 24px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;background:#0a0e1980;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5}.menu-toggle{display:none;background:transparent;border:none;color:var(--text-primary);cursor:pointer}@media (max-width: 768px){.menu-toggle{display:block;margin-right:12px}}.active-thread-details{display:flex;flex-direction:column}.active-thread-title{font-family:var(--font-display);font-weight:600;font-size:1.1rem}.active-thread-meta{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.model-badge{background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.3);padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:600}.chat-header-actions{display:flex;align-items:center;gap:8px}.messages-container{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:40px;gap:16px}.empty-state-icon{width:64px;height:64px;background:var(--gradient-cyber);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-glow);margin-bottom:8px}.empty-state h2{font-family:var(--font-display);font-weight:800;font-size:2rem;background:linear-gradient(135deg,#fff 30%,#9ca3af);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.empty-state p{color:var(--text-secondary);max-width:450px;font-size:1rem}.suggested-prompts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:600px;margin-top:16px}@media (max-width: 600px){.suggested-prompts{grid-template-columns:1fr}}.prompt-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:16px;cursor:pointer;text-align:left;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:6px}.prompt-card:hover{transform:translateY(-2px);border-color:var(--border-color-glow);box-shadow:0 4px 15px #6366f114}.prompt-card-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}.prompt-card-desc{font-size:.8rem;color:var(--text-secondary)}.message-bubble{display:flex;gap:16px;max-width:85%;align-self:flex-start;animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.message-bubble.user{align-self:flex-end;flex-direction:row-reverse}.avatar{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-sm)}.message-bubble.assistant .avatar{background:var(--gradient-cyber);color:#fff}.message-bubble.user .avatar{background:var(--gradient-cyan-rose);color:#fff}.message-content-wrapper{display:flex;flex-direction:column;gap:6px}.message-bubble.user .message-content-wrapper{align-items:flex-end}.message-bubble-body{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);padding:16px;border-radius:16px;font-size:.95rem;line-height:1.6;color:var(--text-primary)}.message-bubble.user .message-bubble-body{background:#6366f126;border-color:#6366f140;border-top-right-radius:4px}.message-bubble.assistant .message-bubble-body{border-top-left-radius:4px}.message-bubble-body pre{background:#0006;border:1px solid var(--border-color);border-radius:8px;padding:12px;margin:12px 0;overflow-x:auto;position:relative}.message-bubble-body code{font-family:Courier New,Courier,monospace;font-size:.85rem;background:#ffffff14;padding:2px 6px;border-radius:4px}.message-bubble-body pre code{background:transparent;padding:0;border-radius:0}.code-header{display:flex;justify-content:space-between;align-items:center;background:#ffffff0d;border-bottom:1px solid var(--border-color);padding:6px 12px;border-top-left-radius:8px;border-top-right-radius:8px;margin:12px 0 -12px;font-size:.75rem;color:var(--text-secondary)}.copy-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;transition:all .15s ease}.copy-btn:hover{background:#ffffff14;color:#fff}.generated-image-container{margin-top:12px;border-radius:12px;overflow:hidden;border:1px solid var(--border-color);position:relative;max-width:400px;aspect-ratio:1;background:#0003}.generated-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.generated-image:hover{transform:scale(1.02)}.media-download-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:16px;display:flex;justify-content:flex-end;opacity:0;transition:opacity .2s ease}.generated-image-container:hover .media-download-overlay{opacity:1}.media-btn{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:#fff;padding:8px 12px;border-radius:8px;font-size:.8rem;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.media-btn:hover{background:#ffffff40;transform:translateY(-1px)}.video-sim-player{margin-top:12px;width:100%;max-width:500px;aspect-ratio:16/9;background:#000;border-radius:14px;position:relative;overflow:hidden;border:1px solid var(--border-color-glow);box-shadow:0 0 20px #6366f126}.video-sim-canvas{width:100%;height:100%;position:relative;background-size:cover;background-position:center;transition:transform .1s linear}.video-sim-canvas.playing{animation:kenBurnsSim 8s infinite alternate ease-in-out}@keyframes kenBurnsSim{0%{transform:scale(1) translate(0)}50%{transform:scale(1.12) translate(-2%,1%)}to{transform:scale(1.05) translate(1%,-1%)}}.video-sim-overlay-glitch{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background:linear-gradient(#12101000 50%,#00000040 50%),linear-gradient(90deg,#ff00000f,#00ff0005,#0000ff0f);background-size:100% 4px,6px 100%;opacity:.4}.video-player-controls{position:absolute;bottom:12px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:center;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.1);z-index:3}.video-sim-badge{background:var(--accent-rose);color:#fff;padding:3px 8px;border-radius:6px;font-size:.65rem;font-weight:700;letter-spacing:.5px;display:flex;align-items:center;gap:4px}.video-sim-badge:before{content:"";width:6px;height:6px;background:#fff;border-radius:50%;display:inline-block;animation:pulse 1s infinite}.audio-player-widget{margin-top:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:12px;max-width:320px}.audio-play-btn{background:var(--gradient-cyber);border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:transform .2s ease}.audio-play-btn:hover{transform:scale(1.05)}.audio-timeline{flex:1;height:4px;background:#ffffff1a;border-radius:2px;position:relative;overflow:hidden}.audio-progress{height:100%;background:var(--accent-indigo);width:0%}.audio-time-label{font-size:.75rem;color:var(--text-secondary)}.soundwave{display:flex;align-items:center;gap:3px;height:16px}.soundwave-bar{width:3px;height:100%;background-color:var(--accent-indigo);border-radius:2px;animation:wavePulse 1s ease-in-out infinite}.soundwave-bar:nth-child(2){animation-delay:.15s}.soundwave-bar:nth-child(3){animation-delay:.3s}.soundwave-bar:nth-child(4){animation-delay:.45s}@keyframes wavePulse{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.chat-input-area{padding:16px 24px 24px;background:linear-gradient(to top,var(--bg-primary) 80%,transparent)}.chat-input-wrapper{background:#111827bf;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:20px;padding:8px 12px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-lg);transition:border-color .2s ease,box-shadow .2s ease}.chat-input-wrapper:focus-within{border-color:var(--border-color-glow);box-shadow:var(--shadow-glow)}.mode-selectors{display:flex;gap:6px;padding:4px 6px}.mode-btn{background:transparent;border:1px solid transparent;color:var(--text-secondary);font-family:var(--font-display);font-weight:500;font-size:.75rem;padding:6px 12px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.mode-btn:hover{background:#ffffff0a;color:#fff}.mode-btn.active{background:#ffffff14;border-color:var(--border-color);color:#fff}.mode-btn.active.mode-text{color:var(--accent-indigo)}.mode-btn.active.mode-image{color:var(--accent-cyan)}.mode-btn.active.mode-video{color:var(--accent-rose)}.chat-input-row{display:flex;align-items:flex-end;gap:12px}.chat-textarea{flex:1;background:transparent;border:none;resize:none;color:var(--text-primary);font-family:var(--font-sans);font-size:.95rem;padding:8px;outline:none;min-height:44px;max-height:200px}.input-action-btn{background:transparent;border:none;width:38px;height:38px;border-radius:12px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.input-action-btn:hover{background:#ffffff0f;color:#fff}.input-action-btn.send-btn{background:var(--gradient-cyber);color:#fff;box-shadow:var(--shadow-sm)}.input-action-btn.send-btn:hover{box-shadow:var(--shadow-glow);filter:brightness(1.1)}.input-action-btn.recording{background:#ec489933;color:var(--accent-rose);border:1px solid rgba(236,72,153,.4);animation:pulsePink 1.2s infinite}@keyframes pulsePink{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.input-footer-text{text-align:center;font-size:.75rem;color:var(--text-muted);margin-top:10px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#030712cc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .2s ease-out}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;width:90%;max-width:550px;padding:30px;box-shadow:var(--shadow-lg);animation:scaleUp .25s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column;gap:20px}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-title{font-family:var(--font-display);font-weight:800;font-size:1.4rem}.modal-close-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer}.modal-close-btn:hover{color:#fff}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.form-select,.form-input,.form-textarea{background:#ffffff0a;border:1px solid var(--border-color);border-radius:10px;color:#fff;padding:10px 14px;outline:none;font-family:var(--font-sans);font-size:.9rem;transition:all .2s ease}.form-select:focus,.form-input:focus,.form-textarea:focus{border-color:var(--accent-indigo);background:#ffffff14}.form-textarea{resize:none;min-height:80px}.modal-save-btn{background:var(--gradient-cyber);color:#fff;border:none;border-radius:10px;padding:12px;font-family:var(--font-display);font-weight:600;font-size:1rem;cursor:pointer;text-align:center;box-shadow:var(--shadow-sm);transition:all .2s ease}.modal-save-btn:hover{filter:brightness(1.1);box-shadow:var(--shadow-glow)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes pulse{0%{transform:scale(.95);opacity:.5}50%{transform:scale(1.1);opacity:1}to{transform:scale(.95);opacity:.5}}.binding-error-banner{background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:12px 18px;margin:16px 24px 0;display:flex;align-items:center;gap:12px;color:#fca5a5;font-size:.9rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .3s ease}.error-banner-icon{font-size:1.2rem;flex-shrink:0}.error-banner-text{flex:1;line-height:1.5}.error-banner-text strong{color:#ef4444}.error-banner-close{background:transparent;border:none;color:#fca5a5;font-size:1.4rem;cursor:pointer;padding:4px;line-height:1;opacity:.7;transition:opacity .2s ease}.error-banner-close:hover{opacity:1}
