:root{--color-primary: #1AB2B1;--color-primary-dark: #149D9C;--color-primary-header: #1AB2B1;--color-primary-header-text: #FFFFFF;--color-primary-soft: #E5F7F7;--color-cta: #ED7E00;--color-cta-dark: #D26F00;--color-text-dark: #1F2933;--color-text: #52606D;--color-text-muted: #64748B;--color-bg: #FFFFFF;--color-bg-app: #EEF3F5;--color-bg-tint: #F0FAFC;--color-border: #E4E9EE;--color-error: #BE0000;--color-error-soft: #FDECEC;--color-warn: #B7791F;--color-warn-soft: #FFF8E1;--color-success: #1AB2B1;--color-white: #FFFFFF;--bubble-own: #1AB2B1;--bubble-own-text: #0F172A;--bubble-own-text-muted: rgba(15,23,42,.55);--bubble-other: #FFFFFF;--bubble-other-text: #1F2933;--sidebar-width: 300px;--color-sidebar-bg: var(--color-bg);--color-sidebar-text: var(--color-text-dark);--color-sidebar-active: var(--color-primary-soft);--font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-xs: 12px;--fs-sm: 14px;--fs-base: 15px;--fs-md: 16px;--fs-lg: 20px;--fs-xl: 26px;--fs-2xl: 32px;--fw-normal: 400;--fw-medium: 500;--fw-bold: 700;--r-sm: 8px;--r-md: 12px;--r-lg: 18px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(16,24,40,.04), 0 1px 4px rgba(16,24,40,.06);--shadow-md: 0 2px 8px rgba(16,24,40,.06), 0 4px 20px rgba(16,24,40,.08);--shadow-lg: 0 8px 24px rgba(16,24,40,.1), 0 20px 48px rgba(16,24,40,.12);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--color-online: #22C55E;--color-busy: #F59E0B;--color-away: #94A3B8;--color-offline: #CBD5E1}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-primary: #2DD4BF;--color-primary-dark: #14B8A6;--color-primary-header: #0D9B9A;--color-primary-soft: rgba(45,212,191,.12);--color-cta: #FB923C;--color-text-dark: #F1F5F9;--color-text: #CBD5E1;--color-text-muted: #94A3B8;--color-bg: #0F172A;--color-bg-app: #1E293B;--color-bg-tint: #1E293B;--color-border: #334155;--color-error: #F87171;--color-error-soft: rgba(248,113,113,.12);--color-warn: #FCD34D;--color-warn-soft: rgba(252,211,77,.12);--color-success: #2DD4BF;--color-white: #1E293B;--bubble-own: #2DD4BF;--bubble-own-text: #0F172A;--bubble-own-text-muted: rgba(15,23,42,.55);--bubble-other: #2D3F57;--bubble-other-text: #F1F5F9;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 16px rgba(0,0,0,.4);--shadow-lg: 0 12px 32px rgba(0,0,0,.5);--color-sidebar-bg: #1E293B;--color-sidebar-text: #F1F5F9;--color-sidebar-active: rgba(45,212,191,.15)}}[data-theme=dark]{--color-primary: #2DD4BF;--color-primary-dark: #14B8A6;--color-primary-header: #0D9B9A;--color-primary-soft: rgba(45,212,191,.12);--color-cta: #FB923C;--color-text-dark: #F1F5F9;--color-text: #CBD5E1;--color-text-muted: #94A3B8;--color-bg: #0F172A;--color-bg-app: #1E293B;--color-bg-tint: #1E293B;--color-border: #334155;--color-error: #F87171;--color-error-soft: rgba(248,113,113,.12);--color-warn: #FCD34D;--color-warn-soft: rgba(252,211,77,.12);--color-success: #2DD4BF;--color-white: #1E293B;--bubble-own: #2DD4BF;--bubble-own-text: #0F172A;--bubble-own-text-muted: rgba(15,23,42,.55);--bubble-other: #2D3F57;--bubble-other-text: #F1F5F9;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 16px rgba(0,0,0,.4);--shadow-lg: 0 12px 32px rgba(0,0,0,.5);--color-sidebar-bg: #1E293B;--color-sidebar-text: #F1F5F9;--color-sidebar-active: rgba(45,212,191,.15)}:root{--font-size-body: var(--fs-base);--font-size-sm: var(--fs-sm);--font-size-lg: var(--fs-lg);--spacing-xs: var(--sp-1);--spacing-sm: var(--sp-2);--spacing-md: var(--sp-4);--spacing-lg: var(--sp-5);--spacing-xl: var(--sp-6);--border-radius-btn: var(--r-pill);--border-radius-card: var(--r-md);--border-radius-input: var(--r-sm);--color-bg-grey: var(--color-border);--color-text-sub: var(--color-text);--color-text-teal: var(--color-primary);--shadow-card: var(--shadow-sm);--shadow-card-hover: var(--shadow-md);--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-bold: 700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;max-width:100%;overflow-x:hidden}body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5;color:#1a2332;background:#f5f7fa;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,p{margin:0}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:999px;font-size:14px;font-weight:500;line-height:1;padding:10px 20px;white-space:nowrap;transition:background .15s,box-shadow .15s,transform .05s;cursor:pointer}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#ed7e00;color:#fff;box-shadow:0 1px 3px #0000001f}.btn-primary:hover:not(:disabled){background:#d97000;box-shadow:0 4px 12px #ed7e0047}.btn-teal{background:var(--color-primary);color:#fff;box-shadow:0 1px 3px #00000014}.btn-teal:hover:not(:disabled){background:#0e9090;box-shadow:0 4px 12px #1cb1b147}.btn-ghost{background:transparent;color:var(--color-primary);border:1.5px solid #E8ECF0}.btn-ghost:hover:not(:disabled){border-color:var(--color-primary);background:#e6f7f7}.btn-danger{background:#be0000;color:#fff}.btn-danger:hover:not(:disabled){background:#a50000}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1.5px solid #E8ECF0;background:#fff;font-size:17px;cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s;padding:0}.icon-btn:hover:not(:disabled){background:#e6f7f7;border-color:var(--color-primary)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn-call{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:#e6f7f7;font-size:16px;cursor:pointer;flex-shrink:0;transition:background .15s;padding:0}.icon-btn-call:hover:not(:disabled){background:#cceaea}.icon-btn-call:disabled{opacity:.4;cursor:not-allowed}.send-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:var(--color-primary);color:#fff;font-size:16px;cursor:pointer;flex-shrink:0;transition:background .15s,transform .05s;padding:0}.send-btn:hover:not(:disabled){background:#0e9090}.send-btn:active:not(:disabled){transform:scale(.93)}.send-btn:disabled{opacity:.35;cursor:not-allowed}.gif-btn{font-size:11px;font-weight:700;letter-spacing:.4px;color:#52606d}.input{width:100%;padding:11px 14px;border:1.5px solid #E8ECF0;border-radius:6px;font-size:15px;line-height:1.5;color:#1a2332;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:#8896a4}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1cb1b124}.input:disabled{background:#f5f7fa;opacity:.7;cursor:not-allowed}.chat-textarea{flex:1;resize:none;max-height:140px;padding:10px 14px;border:1.5px solid #E8ECF0;border-radius:22px;font-size:17px;font-family:inherit;line-height:1.45;color:#1a2332;background:#f5f7fa;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.chat-textarea::placeholder{color:#8896a4}.chat-textarea:focus{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #1cb1b11f}.card{background:#fff;border-radius:10px;box-shadow:0 4px 16px #00000014}.auth-card{width:100%;max-width:420px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px #00000014}.auth-header{background:var(--color-primary);padding:32px 32px 24px;text-align:center}.auth-header-title{margin:0;color:#fff;font-size:22px;font-weight:700;letter-spacing:.2px}.auth-header-sub{margin:4px 0 0;color:#ffffffd9;font-size:14px}.auth-body{padding:32px}.form-label{display:block;font-size:14px;font-weight:500;color:#52606d;margin-bottom:6px}.alert{padding:10px 14px;border-radius:6px;font-size:14px;line-height:1.45}.alert-error{background:#fdecec;border:1px solid rgba(190,0,0,.2);color:#be0000}.alert-warn{background:#fff8e1;border:1px solid rgba(183,121,31,.25);color:#b7791f}.alert-info{background:#e6f7f7;border:1px solid rgba(28,177,177,.25);color:#0e9090}.pill-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 12px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.5;white-space:nowrap}.pill-chip-muted{background:#e8ecf0;color:#52606d}.pill-chip-teal{background:#e6f7f7;color:#0e9090}.date-divider{display:flex;align-items:center;gap:10px;margin:16px 0 8px;color:#8896a4;font-size:12px;font-weight:600;letter-spacing:.2px}.date-divider:before,.date-divider:after{content:"";flex:1;height:1px;background:#e8ecf0}.ctx-divider{display:flex;align-items:center;justify-content:center;margin:14px 0 6px}@keyframes msgIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.msg-in{animation:msgIn .18s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .2s ease-out}.spinner{width:28px;height:28px;border:3px solid #E8ECF0;border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinner-lg{width:40px;height:40px;border-width:4px}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:#d1d9e0;border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:#b4bec7}*::-webkit-scrollbar-track{background:transparent}.reconnect-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:#fff8e1;color:#b7791f;font-size:13px;font-weight:500;flex-shrink:0}.conv-link-btn{background:transparent;border:none;font-size:15px;cursor:pointer;padding:4px;opacity:0;transition:opacity .15s}.conv-item:hover .conv-link-btn,.conv-item-sel .conv-link-btn{opacity:.6}.conv-item-sel{background:var(--color-primary-soft)}.conv-link-btn:hover{opacity:1!important}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}:focus:not(:focus-visible){outline:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.msg-btn-actions{display:inline-flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s}.msg-in:hover .msg-btn-actions,.msg-in:focus-within .msg-btn-actions{opacity:1}.msg-toolbar{opacity:0;transition:opacity .12s ease;pointer-events:none;display:flex;gap:2px;padding:3px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--r-pill, 999px);box-shadow:var(--shadow-md);z-index:5}.msg-in:hover .msg-toolbar,.msg-in:focus-within .msg-toolbar{opacity:1;pointer-events:auto}.msg-toolbar-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background .12s,color .12s}.msg-toolbar-btn:hover{background:var(--color-bg-app);color:var(--color-text-dark)}.msg-toolbar-btn-danger:hover{color:var(--color-error, #e53e3e)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) body{color:#f1f5f9;background:#1e293b}:root:not([data-theme=light]) .icon-btn{background:#263348;border-color:#334155;color:#cbd5e1}:root:not([data-theme=light]) .icon-btn:hover:not(:disabled){background:#2dd4bf26;border-color:#2dd4bf;color:#2dd4bf}:root:not([data-theme=light]) .icon-btn-call{background:#2dd4bf1f;color:#2dd4bf}:root:not([data-theme=light]) .icon-btn-call:hover:not(:disabled){background:#2dd4bf38}:root:not([data-theme=light]) .msg-toolbar{background:#263348;border-color:#334155}:root:not([data-theme=light]) .msg-toolbar-btn{color:#94a3b8}:root:not([data-theme=light]) .msg-toolbar-btn:hover{background:#2dd4bf26;color:#2dd4bf}:root:not([data-theme=light]) .msg-toolbar-btn-danger:hover{color:#f87171}:root:not([data-theme=light]) .chat-textarea{background:#263348;border-color:#334155;color:#f1f5f9}:root:not([data-theme=light]) .chat-textarea::placeholder{color:#64748b}:root:not([data-theme=light]) .chat-textarea:focus{background:#2d3f57;border-color:#2dd4bf}:root:not([data-theme=light]) .btn-ghost{color:#2dd4bf;border-color:#334155}:root:not([data-theme=light]) .btn-ghost:hover:not(:disabled){border-color:#2dd4bf;background:#2dd4bf1a}:root:not([data-theme=light]) .gif-btn{color:#94a3b8}:root:not([data-theme=light]) .date-divider{color:#64748b}:root:not([data-theme=light]) .date-divider:before,:root:not([data-theme=light]) .date-divider:after{background:#334155}:root:not([data-theme=light]) *::-webkit-scrollbar-thumb{background:#334155}:root:not([data-theme=light]) *::-webkit-scrollbar-thumb:hover{background:#475569}:root:not([data-theme=light]) .pill-chip-muted{background:#334155;color:#cbd5e1}:root:not([data-theme=light]) .pill-chip-teal{background:#2dd4bf1f;color:#2dd4bf}:root:not([data-theme=light]) .spinner{border-color:#334155;border-top-color:#2dd4bf}:root:not([data-theme=light]) .send-btn{background:#2dd4bf;color:#0f172a}:root:not([data-theme=light]) .send-btn:hover:not(:disabled){background:#14b8a6}:root:not([data-theme=light]) .reconnect-banner{background:#fcd34d1f;color:#fcd34d}}[data-theme=dark] body{color:#f1f5f9;background:#1e293b}[data-theme=dark] .icon-btn{background:#263348;border-color:#334155;color:#cbd5e1}[data-theme=dark] .icon-btn:hover:not(:disabled){background:#2dd4bf26;border-color:#2dd4bf;color:#2dd4bf}[data-theme=dark] .icon-btn-call{background:#2dd4bf1f;color:#2dd4bf}[data-theme=dark] .icon-btn-call:hover:not(:disabled){background:#2dd4bf38}[data-theme=dark] .msg-toolbar{background:#263348;border-color:#334155}[data-theme=dark] .msg-toolbar-btn{color:#94a3b8}[data-theme=dark] .msg-toolbar-btn:hover{background:#2dd4bf26;color:#2dd4bf}[data-theme=dark] .msg-toolbar-btn-danger:hover{color:#f87171}[data-theme=dark] .chat-textarea{background:#263348;border-color:#334155;color:#f1f5f9}[data-theme=dark] .chat-textarea::placeholder{color:#64748b}[data-theme=dark] .chat-textarea:focus{background:#2d3f57;border-color:#2dd4bf}[data-theme=dark] .btn-ghost{color:#2dd4bf;border-color:#334155}[data-theme=dark] .btn-ghost:hover:not(:disabled){border-color:#2dd4bf;background:#2dd4bf1a}[data-theme=dark] .gif-btn{color:#94a3b8}[data-theme=dark] .date-divider{color:#64748b}[data-theme=dark] .date-divider:before,[data-theme=dark] .date-divider:after{background:#334155}[data-theme=dark] *::-webkit-scrollbar-thumb{background:#334155}[data-theme=dark] *::-webkit-scrollbar-thumb:hover{background:#475569}[data-theme=dark] .pill-chip-muted{background:#334155;color:#cbd5e1}[data-theme=dark] .pill-chip-teal{background:#2dd4bf1f;color:#2dd4bf}[data-theme=dark] .spinner{border-color:#334155;border-top-color:#2dd4bf}[data-theme=dark] .send-btn{background:#2dd4bf;color:#0f172a}[data-theme=dark] .send-btn:hover:not(:disabled){background:#14b8a6}[data-theme=dark] .reconnect-banner{background:#fcd34d1f;color:#fcd34d}@media (max-width: 767px){.main-hidden-mobile,.sidebar-toggle-desktop{display:none!important}.sidebar-overlay-closed{position:fixed!important;top:0;left:0;bottom:0;transform:translate(-100%);z-index:150;width:85vw!important;max-width:320px!important;box-shadow:var(--shadow-lg);transition:transform .25s ease!important}.sidebar-overlay-open{position:fixed!important;top:0;left:0;bottom:0;transform:translate(0);z-index:150;width:85vw!important;max-width:320px!important;box-shadow:var(--shadow-lg);transition:transform .25s ease!important}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:140;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.chat-input-area{padding-bottom:max(12px,env(safe-area-inset-bottom))!important}.conv-item-mobile{min-height:64px!important}.bubble-mobile-wide{max-width:88%!important}}
