:root{--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-base:228 15% 6%;--bg-surface:228 14% 9%;--bg-overlay:228 12% 14%;--primary:239 84% 67%;--primary-hover:239 84% 60%;--primary-glow:239 84% 67% / .15;--success:142 71% 45%;--warning:37 90% 50%;--error:350 89% 60%;--text-primary:0 0% 98%;--text-secondary:228 8% 70%;--text-muted:228 8% 50%;--border-glow:228 12% 20% / .8;--border-subtle:228 12% 16%;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 2px 8px #0003;--shadow-md:0 8px 24px #0006;--shadow-lg:0 16px 40px #0009}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;margin:0;padding:0}body{font-family:var(--font-sans);background-color:hsl(var(--bg-base));color:hsl(var(--text-primary));-webkit-font-smoothing:antialiased;width:100vw;height:100dvh;font-size:15px;line-height:1.5;overflow:hidden}input,textarea,button,select{font-family:inherit;font-size:inherit;color:inherit;-webkit-user-select:auto;user-select:auto}.app-container{background-color:hsl(var(--bg-surface));border-left:1px solid hsl(var(--border-subtle));border-right:1px solid hsl(var(--border-subtle));flex-direction:column;width:100vw;max-width:480px;height:100dvh;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 40px #000c}.glass-panel{-webkit-backdrop-filter:blur(20px);background:#12131acc;border:1px solid #ffffff0d}.glass-header{-webkit-backdrop-filter:blur(16px);z-index:10;background:#090a0fbf;border-bottom:1px solid #ffffff0d}.scroll-container{-webkit-overflow-scrolling:touch;flex:1;overflow:hidden auto}.scroll-container::-webkit-scrollbar{width:5px}.scroll-container::-webkit-scrollbar-track{background:0 0}.scroll-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.input-field{background-color:hsl(var(--bg-overlay));border:1.5px solid hsl(var(--border-subtle));border-radius:var(--radius-md);outline:none;width:100%;padding:14px 16px;transition:all .2s}.input-field:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsla(var(--primary) / .15)}.btn{border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background-color:hsl(var(--primary));color:#fff}.btn-primary:active{background-color:hsl(var(--primary-hover));transform:scale(.97)}.btn-secondary{background-color:hsl(var(--bg-overlay));border:1px solid hsl(var(--border-subtle));color:hsl(var(--text-primary))}.btn-secondary:active{transform:scale(.97)}.login-screen{background:radial-gradient(circle at top right, hsla(var(--primary) / .15), transparent 50%), hsl(var(--bg-base));flex-direction:column;justify-content:center;align-items:stretch;height:100%;padding:32px;display:flex}.brand-section{text-align:center;margin-bottom:40px}.brand-logo{background:linear-gradient(135deg, #fff 30%, hsla(var(--primary) / .8));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:3rem;font-weight:700}.brand-subtitle{color:hsl(var(--text-secondary));font-size:14px}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-label{color:hsl(var(--text-secondary));text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:500}.chat-screen{flex-direction:column;width:100%;height:100%;display:flex;position:relative}.screen-header{justify-content:space-between;align-items:center;height:68px;padding:16px;display:flex}.contact-info{align-items:center;gap:12px;display:flex}.avatar{background:linear-gradient(135deg, hsl(var(--primary)), #818cf8);color:#fff;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:600;display:flex;position:relative}.avatar-small{width:32px;height:32px;font-size:12px}.status-badge{border:1.5px solid hsl(var(--bg-surface));border-radius:50%;width:10px;height:10px;position:absolute;bottom:0;right:0}.status-online{background-color:hsl(var(--success))}.status-offline{background-color:hsl(var(--text-muted))}.contact-details{flex-direction:column;display:flex}.contact-name{font-size:15px;font-weight:600}.contact-subtext{color:hsl(var(--text-secondary));font-size:11px}.tab-bar{border-bottom:1px solid hsl(var(--border-subtle));background-color:hsl(var(--bg-surface));display:flex}.tab-btn{text-align:center;color:hsl(var(--text-secondary));cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:12px;font-size:14px;font-weight:500;transition:all .2s}.tab-btn.active{color:hsl(var(--primary));border-bottom-color:hsl(var(--primary));font-weight:600}.chat-list-item{border-bottom:1px solid hsl(var(--border-subtle));cursor:pointer;align-items:center;gap:12px;padding:16px;transition:background-color .2s;display:flex}.chat-list-item:active{background-color:hsl(var(--bg-overlay))}.chat-list-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.chat-list-top{justify-content:space-between;align-items:center;display:flex}.chat-list-time{color:hsl(var(--text-muted));font-size:11px}.chat-list-msg{color:hsl(var(--text-secondary));white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.ai-handling-badge{color:#a5b4fc;background-color:#6366f126;border:1px solid #6366f14d;border-radius:20px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-flex}.ai-disabled-badge{color:#fda4af;background-color:#f43f5e1a;border:1px solid #f43f5e33;border-radius:20px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-flex}.messages-container{background:radial-gradient(circle at bottom left, #6366f10d, transparent 40%), hsl(var(--bg-base));flex-direction:column;flex:1;gap:12px;padding:16px;display:flex}.date-separator{text-align:center;margin:12px 0;position:relative}.date-separator-line{background-color:hsl(var(--border-subtle));z-index:1;height:1px;position:absolute;top:50%;left:0;right:0}.date-separator-text{z-index:2;background-color:hsl(var(--bg-base));color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.05em;padding:0 10px;font-size:11px;position:relative}.msg-wrapper{flex-direction:column;width:100%;display:flex}.msg-wrapper.sent{align-items:flex-end}.msg-wrapper.received{align-items:flex-start}.msg-bubble{border-radius:var(--radius-md);max-width:80%;box-shadow:var(--shadow-sm);flex-direction:column;gap:4px;padding:10px 14px;display:flex;position:relative}.msg-wrapper.sent .msg-bubble{background:linear-gradient(135deg, hsl(var(--primary)), #4f46e5);color:#fff;border-bottom-right-radius:4px}.msg-wrapper.received .msg-bubble{background-color:hsl(var(--bg-overlay));color:hsl(var(--text-primary));border:1px solid hsl(var(--border-subtle));border-bottom-left-radius:4px}.msg-text{word-break:break-word;white-space:pre-wrap;-webkit-user-select:text;user-select:text;font-size:14px}.msg-meta{color:#fff9;justify-content:flex-end;align-items:center;gap:4px;font-size:10px;display:flex}.msg-wrapper.received .msg-meta{color:hsl(var(--text-muted))}.staff-badge{color:#ffffffe6;background-color:#ffffff26;border-radius:10px;align-self:flex-start;margin-bottom:2px;padding:1px 6px;font-size:10px;font-weight:600}.ai-badge{color:#818cf8;background-color:#6366f126;border-radius:10px;align-self:flex-start;margin-bottom:2px;padding:1px 6px;font-size:10px;font-weight:600}.chat-input-panel{padding:10px 12px calc(10px + env(safe-area-inset-bottom));background-color:#0000;border-top:none;align-items:flex-end;gap:8px;display:flex;position:relative}.chat-input-main-wrapper{background-color:hsl(var(--bg-overlay));border:1px solid hsl(var(--border-subtle));min-height:44px;box-shadow:var(--shadow-sm);border-radius:24px;flex:1;align-items:flex-end;padding:4px 12px;transition:border-color .2s;display:flex}.chat-input-main-wrapper:focus-within{border-color:hsl(var(--primary))}.attachment-toggle-btn{color:hsl(var(--text-secondary));cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:2px;display:flex}.attachment-toggle-btn:hover{background-color:#ffffff0d}.chat-input-wrapper{background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;min-height:auto;padding:0;display:flex}.chat-input{resize:none;max-height:120px;color:hsl(var(--text-primary));background:0 0;border:none;outline:none;flex:1;padding:8px 6px;font-size:14.5px;line-height:1.4}.send-btn{background-color:hsl(var(--primary));color:#fff;cursor:pointer;width:44px;height:44px;box-shadow:var(--shadow-md);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.send-btn:active{background-color:hsl(var(--primary-hover));transform:scale(.9)}.send-btn:disabled{background-color:hsl(var(--bg-overlay));color:hsl(var(--text-muted));cursor:not-allowed;box-shadow:none}.attachment-menu{background-color:hsl(var(--bg-overlay));border:1px solid hsl(var(--border-subtle));border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:55;flex-direction:column;gap:4px;min-width:180px;padding:8px;animation:.2s cubic-bezier(.4,0,.2,1) slideUp;display:flex;position:absolute;bottom:60px;left:12px}.attachment-menu-item{border-radius:var(--radius-sm);color:hsl(var(--text-primary));text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:10px 14px;font-size:13.5px;transition:background-color .2s;display:flex}.attachment-menu-item:hover,.attachment-menu-item:active{background-color:#ffffff0d}.attachment-menu-item svg{color:hsl(var(--primary));flex-shrink:0}.header-actions{align-items:center;gap:8px;display:flex}.icon-btn{cursor:pointer;width:36px;height:36px;color:hsl(var(--text-secondary));background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.icon-btn:active{background-color:hsl(var(--bg-overlay));color:hsl(var(--text-primary))}.copilot-panel{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:10;border:1px solid #6366f133;flex-direction:column;gap:8px;padding:12px;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;display:flex;position:absolute;bottom:68px;left:12px;right:12px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.copilot-title{color:#a5b4fc;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.copilot-suggestion{color:hsl(var(--text-primary));border-radius:var(--radius-sm);border-left:3px solid hsl(var(--primary));cursor:pointer;background-color:#ffffff08;padding:8px 10px;font-size:13px}.copilot-suggestion:active{background-color:#ffffff14}.search-wrapper{border-bottom:1px solid hsl(var(--border-subtle));background-color:hsl(var(--bg-surface));padding:12px 16px}.search-input-wrapper{background-color:hsl(var(--bg-overlay));border:1px solid hsl(var(--border-subtle));border-radius:var(--radius-md);align-items:center;padding:2px 12px;display:flex}.search-input{background:0 0;border:none;outline:none;flex:1;padding:10px 8px;font-size:14px}.unread-badge{background-color:hsl(var(--primary));color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;display:flex}.toast{border:1px solid hsl(var(--border-subtle));color:hsl(var(--text-primary));box-shadow:var(--shadow-md);z-index:100;background-color:#090a0fe6;border-radius:20px;padding:8px 16px;font-size:12px;animation:.2s fadeIn;position:absolute;top:84px;left:50%;transform:translate(-50%)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.empty-state{text-align:center;height:100%;color:hsl(var(--text-secondary));flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:32px;display:flex}.empty-state-icon{width:64px;height:64px;color:hsl(var(--text-muted));opacity:.5}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes pulse-glow{0%,to{opacity:.9;box-shadow:0 0 4px #6366f166}50%{opacity:1;box-shadow:0 0 12px #6366f1cc}}.sentiment-badge{text-transform:uppercase;border:1px solid #0000;border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.sentiment-positive{color:#34d399;background-color:#10b9811f;border-color:#10b98140}.sentiment-neutral{color:#d1d5db;background-color:#9ca3af1f;border-color:#9ca3af40}.sentiment-negative{color:#fbbf24;background-color:#f59e0b1f;border-color:#f59e0b40}.sentiment-angry{color:#f87171;background-color:#ef444426;border-color:#ef44444d;animation:2s infinite pulse-glow}.sentiment-dot{border-radius:50%;width:8px;height:8px;margin-left:6px;display:inline-block}.sentiment-dot.positive{background-color:#10b981}.sentiment-dot.neutral{background-color:#9ca3af}.sentiment-dot.negative{background-color:#f59e0b}.sentiment-dot.angry{background-color:#ef4444;box-shadow:0 0 6px #ef4444}.exclude-badge{color:#9ca3af;letter-spacing:.05em;text-transform:uppercase;background-color:#9ca3af26;border:1px solid #9ca3af4d;border-radius:4px;align-items:center;padding:2px 6px;font-size:9px;font-weight:700;display:inline-flex}.filter-bar{border-bottom:1px solid hsl(var(--border-subtle));background-color:hsl(var(--bg-surface));scrollbar-width:none;gap:6px;padding:0 16px 12px;display:flex;overflow-x:auto}.filter-bar::-webkit-scrollbar{display:none}.filter-pill{border:1px solid hsl(var(--border-subtle));background-color:hsl(var(--bg-overlay));color:hsl(var(--text-secondary));cursor:pointer;white-space:nowrap;border-radius:20px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .2s}.filter-pill:active{transform:scale(.95)}.filter-pill.active{background-color:hsl(var(--primary));color:#fff;border-color:hsl(var(--primary))}.status-banner{justify-content:space-between;align-items:center;padding:8px 16px;font-size:12px;font-weight:500;transition:all .3s;display:flex}.status-banner.ai-active{color:#a5b4fc;background:linear-gradient(90deg,#6366f126,#6366f10d);border-bottom:1px solid #6366f133}.status-banner.manual-active{border-bottom:1px solid hsl(var(--border-subtle));color:hsl(var(--text-secondary));background:linear-gradient(90deg,#ffffff08,#ffffff03)}.banner-action-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1a;border-radius:12px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s}.banner-action-btn:hover{background:#ffffff26}.typing-indicator{color:#818cf8;align-items:center;gap:4px;font-size:11px;font-weight:500;display:flex}.typing-dots{align-items:center;gap:2.5px;display:flex}.typing-dots span{background-color:#818cf8;border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite both bounce;display:inline-block}.typing-dots span:first-child{animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}.drawer-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:45;background-color:#0009;animation:.2s ease-out fadeIn;position:absolute;inset:0}.profile-drawer{background-color:hsl(var(--bg-surface));border-left:1px solid hsl(var(--border-subtle));width:85%;box-shadow:var(--shadow-lg);z-index:50;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(100%)}.profile-drawer.open{transform:translate(0)}.drawer-header{border-bottom:1px solid hsl(var(--border-subtle));background:#090a0fbf;justify-content:space-between;align-items:center;padding:16px;display:flex}.drawer-title{font-size:16px;font-weight:700}.drawer-body{flex-direction:column;flex:1;gap:20px;padding:16px;display:flex;overflow-y:auto}.drawer-section{background-color:hsl(var(--bg-overlay));border-radius:var(--radius-md);border:1px solid hsl(var(--border-subtle));flex-direction:column;gap:8px;padding:14px;display:flex}.drawer-section-title{color:hsl(var(--text-secondary));text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #ffffff0d;margin-bottom:4px;padding-bottom:6px;font-size:12px;font-weight:700}.drawer-field{flex-direction:column;gap:4px;display:flex}.drawer-label{color:hsl(var(--text-muted));font-size:11px;font-weight:500}.drawer-value{color:hsl(var(--text-primary));word-break:break-all;font-size:13.5px;font-weight:600}.drawer-textarea{background-color:hsl(var(--bg-base));border:1px solid hsl(var(--border-subtle));border-radius:var(--radius-sm);color:#fff;resize:vertical;outline:none;width:100%;min-height:80px;padding:10px;font-size:13px}.drawer-textarea:focus{border-color:hsl(var(--primary))}.drawer-input{background-color:hsl(var(--bg-base));border:1px solid hsl(var(--border-subtle));border-radius:var(--radius-sm);color:#fff;outline:none;width:100%;padding:10px;font-size:13px}.drawer-input:focus{border-color:hsl(var(--primary))}.drawer-select{background-color:hsl(var(--bg-base));border:1px solid hsl(var(--border-subtle));border-radius:var(--radius-sm);color:#fff;cursor:pointer;outline:none;width:100%;padding:10px;font-size:13px}.drawer-select:focus{border-color:hsl(var(--primary))}.templates-sheet{background-color:hsl(var(--bg-surface));border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);z-index:48;border-top:1px solid #ffffff14;flex-direction:column;height:75%;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -8px 32px #0009}.templates-sheet.open{transform:translateY(0)}.templates-header{border-bottom:1px solid hsl(var(--border-subtle));border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);background:#090a0fbf;justify-content:space-between;align-items:center;padding:16px;display:flex}.templates-body{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.templates-search{margin-bottom:8px}.template-categories{scrollbar-width:none;gap:6px;padding-bottom:8px;display:flex;overflow-x:auto}.template-categories::-webkit-scrollbar{display:none}.template-item{background-color:hsl(var(--bg-overlay));border:1px solid hsl(var(--border-subtle));border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:6px;padding:12px;transition:border-color .2s,background-color .2s;display:flex}.template-item:hover{background-color:#6366f105;border-color:#6366f166}.template-item-header{justify-content:space-between;align-items:center;display:flex}.template-shortcut{color:#a5b4fc;font-family:monospace;font-size:13px;font-weight:700}.template-category-badge{color:hsl(var(--text-secondary));background-color:#ffffff0d;border-radius:4px;padding:2px 6px;font-size:10px}.template-text{color:hsl(var(--text-primary));white-space:pre-wrap;word-break:break-word;font-size:13px}.attached-media-preview{background-color:hsl(var(--bg-overlay));border-top:1px solid hsl(var(--border-subtle));z-index:5;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex;position:relative}.media-thumbnail{object-fit:cover;border-radius:var(--radius-sm);border:1px solid #ffffff1a;width:44px;height:44px}.media-doc-preview{color:hsl(var(--text-secondary));text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;max-width:80%;font-size:12px;display:flex;overflow:hidden}.remove-media-btn{color:#ef4444;cursor:pointer;background-color:#ef44441a;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.remove-media-btn:active{transform:scale(.9)}.promote-modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:60;background-color:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.promote-modal{background-color:hsl(var(--bg-surface));border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-lg);border:1px solid #ffffff1a;flex-direction:column;display:flex;overflow:hidden}.promote-modal-header{border-bottom:1px solid hsl(var(--border-subtle));background-color:#090a0f99;justify-content:space-between;align-items:center;padding:16px;display:flex}.promote-modal-body{flex-direction:column;gap:14px;padding:16px;display:flex}.promote-modal-footer{justify-content:flex-end;gap:8px;padding:12px 16px 16px;display:flex}
