@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root{--blue-50:#eff6ff;--blue-100:#dbeafe;--blue-200:#bfdbfe;--blue-300:#93c5fd;--blue-400:#60a5fa;--blue-500:#3b82f6;--blue-600:#2563eb;--blue-700:#1d4ed8;--blue-800:#1e40af;--blue-900:#1e3a8a;--green-400:#4ade80;--green-500:#22c55e;--green-600:#16a34a;--green-700:#15803d;--white:#fff;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--primary:var(--blue-600);--primary-dark:var(--blue-700);--primary-light:var(--blue-500);--success:var(--green-500);--danger:#ef4444;--warning:#f59e0b;--info:#06b6d4;--purple:#8b5cf6;--bg:var(--white);--surface:var(--white);--border:var(--gray-200);--text:var(--gray-900);--text-secondary:var(--gray-500);--shadow-sm:0 1px 2px #0000000d;--shadow:0 1px 3px #0000001a, 0 1px 2px #0000000f;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--radius-sm:6px;--radius:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--chat-bg:#efeae2;--user-bubble:#d9fdd3;--assistant-bubble:#fff;--sidebar-width:240px;--sidebar-collapsed:68px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg);min-height:100vh;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}#root{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--blue-400)}.spinner{border:4px solid var(--blue-100);border-top-color:var(--blue-600);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:.5rem;padding:.55rem 1.1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--blue-600);color:#fff;box-shadow:0 2px 8px #2563eb4d}.btn-primary:hover{background:var(--blue-700);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb66}.btn-green{background:linear-gradient(135deg, var(--green-500), var(--green-600));color:#fff;box-shadow:0 2px 8px #22c55e4d}.btn-green:hover{transform:translateY(-1px);box-shadow:0 4px 12px #22c55e73}.btn-danger{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.btn-danger:hover{background:#fee2e2}.btn-ghost{color:var(--gray-600);border:1px solid var(--gray-200);background:0 0}.btn-ghost:hover{background:var(--gray-100);color:var(--gray-800)}.btn-outline-blue{color:var(--blue-600);border:1.5px solid var(--blue-300);background:0 0}.btn-outline-blue:hover{background:var(--blue-50)}.badge{letter-spacing:.02em;border-radius:99px;align-items:center;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-blue{background:var(--blue-100);color:var(--blue-700)}.badge-green{color:var(--green-700);background:#dcfce7}.badge-orange{color:#c2410c;background:#fff7ed}.badge-purple{color:#6d28d9;background:#f3e8ff}.badge-red{color:#b91c1c;background:#fef2f2}.badge-gray{background:var(--gray-100);color:var(--gray-600)}.card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow)}.section-title{color:var(--gray-900);letter-spacing:-.02em;font-size:1.35rem;font-weight:800}.input-field{border:1.5px solid var(--gray-200);border-radius:var(--radius);width:100%;color:var(--gray-800);background:#fff;outline:none;padding:.6rem .9rem;font-family:inherit;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--blue-400);box-shadow:0 0 0 3px #3b82f61f}.controller-bot{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.controller-human{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";background-color:#0000;background-image:radial-gradient(circle at 20%,#ffffff0d,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff0d,#0000 50%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:50px 50px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;width:200%;height:200%;animation:20s linear infinite moveBackground;position:absolute;top:-50%;left:-50%}@keyframes moveBackground{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.login-container{z-index:1;width:100%;max-width:420px;animation:.6s ease-out fadeIn;position:relative}.login-content{-webkit-backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #ffffff4d;border-radius:24px;padding:2.5rem;box-shadow:0 20px 60px #0000004d,0 8px 24px #0003}.login-header{text-align:center;margin-bottom:2rem}.logo-container{flex-direction:column;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.login-logo{object-fit:contain;filter:drop-shadow(0 4px 12px #2563eb4d);width:120px;height:auto}.login-header h1{color:#0f172a;letter-spacing:-.02em;text-shadow:none;margin-bottom:.5rem;font-size:1.8rem;font-weight:800}.login-subtitle{color:#64748b;font-size:.95rem;font-weight:500}.login-form{flex-direction:column;gap:1.25rem;display:flex}.error-alert{-webkit-backdrop-filter:blur(10px);color:#dc2626;background:#fef2f2f2;border:2px solid #ef44444d;border-radius:12px;align-items:center;gap:.65rem;padding:.85rem;font-size:.85rem;font-weight:600;display:flex;box-shadow:0 2px 8px #ef44441a}.error-icon{color:#dc2626;font-size:1.1rem}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#0f172a;letter-spacing:.02em;text-shadow:none;font-size:.85rem;font-weight:600}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:#64748b;pointer-events:none;font-size:1.1rem;position:absolute;left:1rem}.input-wrapper input{-webkit-backdrop-filter:blur(10px);color:#0f172a;background:#f8fafccc;border:2px solid #e2e8f0;border-radius:12px;width:100%;padding:.85rem 1rem .85rem 2.75rem;font-family:inherit;font-size:.95rem;transition:all .3s}.input-wrapper input:focus{background:#fff;border-color:#2563eb;outline:none;box-shadow:0 0 0 4px #2563eb1a}.input-wrapper input:disabled{opacity:.5;cursor:not-allowed}.input-wrapper input::placeholder{color:#94a3b8}.login-btn{color:#fff;cursor:pointer;letter-spacing:.02em;background:linear-gradient(135deg,#2563eb 0%,#3b82f6 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.95rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:all .3s;display:flex;box-shadow:0 4px 12px #2563eb4d}.login-btn:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 100%);transform:translateY(-2px);box-shadow:0 6px 20px #2563eb66}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.spinner-small{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@media (max-width:640px){.login-page{padding:1rem}.login-content{border-radius:16px;padding:2rem 1.5rem}.login-header h1{font-size:1.5rem}.login-subtitle{font-size:.85rem}.form-group label{font-size:.8rem}}:root{--sb-width:252px;--sb-width-collapsed:68px;--sb-transition:.26s cubic-bezier(.4, 0, .2, 1);--sb-bg:#fff;--sb-border-col:#e8edf3;--sb-surface:#f4f7fb;--sb-text:#64748b;--sb-text-muted:#94a3b8;--sb-text-bright:#1e293b;--sb-active-bg:#eff6ff;--sb-active-col:#2563eb;--sb-hover-bg:#f8fafc;--sb-accent:#2563eb}.sidebar-wrapper{display:flex}.sidebar{width:var(--sb-width);height:100vh;transition:width var(--sb-transition);background:var(--sb-bg);border-right:1px solid var(--sb-border-col);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:2px 0 12px #0000000d}.sidebar.collapsed{width:var(--sb-width-collapsed)}.sb-logo{border-bottom:1px solid var(--sb-border-col);background:var(--sb-bg);flex-shrink:0;align-items:center;gap:.75rem;min-height:64px;padding:1rem 1rem 1rem 1.15rem;display:flex;position:relative}.sb-logo-icon{color:#fff;background:linear-gradient(135deg,#25d366 0%,#128c7e 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 3px 10px #25d3664d}.sb-logo-text{flex-direction:column;flex:1;min-width:0;line-height:1.1;display:flex;overflow:hidden}.sb-brand{color:#0f172a;letter-spacing:-.02em;white-space:nowrap;font-size:.92rem;font-weight:800}.sb-brand-sub{color:var(--sb-text-muted);white-space:nowrap;margin-top:1px;font-size:.65rem;font-weight:500}.sb-collapse-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:1.5px solid #e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-left:auto;transition:all .2s;display:flex}.sb-collapse-btn:hover{color:var(--sb-accent);background:#eff6ff;border-color:#bfdbfe}.sb-nav{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:1;gap:.2rem;padding:.75rem .65rem;display:flex;overflow:hidden auto}.sb-nav::-webkit-scrollbar{display:none}.sb-group{flex-direction:column;gap:2px;margin-bottom:.4rem;display:flex}.sb-group-label{text-transform:uppercase;letter-spacing:.1em;color:var(--sb-text-muted);white-space:nowrap;padding:.5rem .65rem .2rem;font-size:.6rem;font-weight:700}.sb-nav-item{color:var(--sb-text);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:10px;align-items:center;gap:.65rem;width:100%;padding:.6rem .75rem;transition:all .15s;display:flex;position:relative;overflow:hidden}.sb-nav-item:hover{background:var(--sb-hover-bg);color:var(--sb-text-bright)}.sb-nav-item.active{background:var(--sb-active-bg);color:var(--sb-active-col)}.sb-nav-icon{background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.sb-nav-item:hover .sb-nav-icon{color:var(--sb-accent);background:#eff6ff}.sb-nav-item.active .sb-nav-icon{color:#1d4ed8;background:#dbeafe}.sb-nav-label{text-overflow:ellipsis;letter-spacing:-.01em;flex:1;font-size:.84rem;font-weight:600;overflow:hidden}.sb-active-bar{background:var(--sb-accent);border-radius:99px;width:3px;height:60%;position:absolute;top:20%;right:0}.sb-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:99px;padding:.12rem .42rem;font-size:.58rem;font-weight:800}.sb-badge.live{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0;animation:2.2s infinite livePulse}.sb-badge.new{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.55}}.sb-bottom{border-top:1px solid var(--sb-border-col);background:#fafbfe;flex-direction:column;flex-shrink:0;gap:.55rem;padding:.75rem .65rem;display:flex}.sb-ai-chip{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:center;gap:.45rem;padding:.4rem .75rem;font-size:.72rem;font-weight:700;display:flex}.sb-dot-pulse{background:#22c55e;border-radius:50%;width:6px;height:6px;margin-left:auto;animation:1.6s ease-in-out infinite dotPulse;box-shadow:0 0 #22c55e80}@keyframes dotPulse{0%{box-shadow:0 0 #22c55e99}70%{box-shadow:0 0 0 6px #22c55e00}to{box-shadow:0 0 #22c55e00}}.sb-user-section{border:1px solid var(--sb-border-col);background:#fff;border-radius:10px;align-items:center;gap:.6rem;padding:.5rem .55rem;transition:background .15s;display:flex}.sb-user-section:hover{background:#f8fafc}.sb-avatar{color:#fff;background:linear-gradient(135deg,#2563eb 0%,#7c3aed 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.78rem;font-weight:800;display:flex;box-shadow:0 2px 6px #2563eb4d}.sb-user-info{flex:1;min-width:0;line-height:1.2;overflow:hidden}.sb-user-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:700;display:block;overflow:hidden}.sb-user-role{color:var(--sb-text-muted);white-space:nowrap;font-size:.65rem;display:block}.sb-logout-btn{color:#f87171;cursor:pointer;background:#fef2f2;border:none;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.sb-logout-btn:hover{color:#dc2626;background:#fee2e2}.mobile-topbar{z-index:900;border-bottom:1px solid var(--sb-border-col);background:#fff;justify-content:space-between;align-items:center;height:54px;padding:0 1rem;display:none;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 8px #0000000f}.sb-mobile-toggle{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;padding:8px;display:flex}.sb-hamburger{background:#64748b;border-radius:2px;width:20px;height:2px;display:block;position:relative}.sb-hamburger:before,.sb-hamburger:after{content:"";background:#64748b;border-radius:2px;width:20px;height:2px;position:absolute;left:0}.sb-hamburger:before{top:-6px}.sb-hamburger:after{top:6px}.mobile-brand{color:#0f172a;align-items:center;gap:.5rem;font-size:.9rem;font-weight:800;display:flex}.mobile-avatar{width:30px;height:30px;font-size:.72rem}.mobile-overlay{z-index:950;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000059;animation:.2s fadeIn;position:fixed;inset:0}.mobile-drawer{z-index:960;animation:.25s slideInLeft;position:fixed;top:0;bottom:0;left:0}.mobile-drawer .sidebar{height:100dvh;position:relative}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.desktop-only{display:flex}@media (max-width:768px){.desktop-only{display:none!important}.mobile-topbar{display:flex}}.dashboard{background:#fff;min-height:100vh;padding:2rem 2rem 2.5rem;animation:.4s fadeUp}.dash-loading{min-height:100vh;color:var(--blue-700);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-weight:600;display:flex}.dash-hero{color:#fff;background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 60%,#1d4ed8 100%);border-radius:18px;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding:1.75rem 2rem;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #1e3a8a4d}.dash-hero:before{content:"";background:#3b82f61f;border-radius:50%;width:200px;height:200px;position:absolute;top:-40px;right:-40px}.dash-hero:after{content:"";background:#6366f11a;border-radius:50%;width:120px;height:120px;position:absolute;bottom:-30px;right:120px}.dash-hero-left{z-index:1}.dash-hero-greeting{color:#93c5fd;align-items:center;gap:.4rem;margin-bottom:.3rem;font-size:.85rem;font-weight:600;display:flex}.dash-greeting-icon{font-size:1rem}.dash-hero-right{z-index:1;flex-shrink:0;align-items:center;gap:.75rem;display:flex}.dash-hero-bot-chip{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d;border-radius:99px;align-items:center;gap:.45rem;padding:.4rem .9rem;font-size:.8rem;font-weight:600;display:flex}.hero-dot-pulse{background:#22c55e;border-radius:50%;width:7px;height:7px;animation:1.5s infinite dotPulse;box-shadow:0 0 #22c55e99}.dash-hero .dash-title{color:#f1f5f9;letter-spacing:-.03em;font-size:1.9rem;font-weight:900;line-height:1.1}.dash-hero .dash-subtitle{color:#94a3b8;align-items:center;gap:.4rem;margin-top:.35rem;font-size:.85rem;font-weight:500;display:flex}.dash-title{color:var(--gray-900);letter-spacing:-.03em;font-size:1.75rem;font-weight:900;line-height:1.1}.dash-subtitle{color:var(--gray-500);align-items:center;gap:.4rem;margin-top:.2rem;font-size:.9rem;font-weight:500;display:flex}.dash-error{border-radius:var(--radius-md);color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:500;display:flex}.kpi-card{border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow);background:#fff;padding:1.4rem 1.5rem 1.2rem;transition:transform .2s,box-shadow .2s;animation:.4s backwards fadeUp;position:relative;overflow:hidden}.kpi-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.kpi-accent-bar{border-radius:0 0 var(--radius-lg) var(--radius-lg);height:3px;position:absolute;bottom:0;left:0;right:0}.kpi-icon-wrap{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:1rem;font-size:1.1rem;display:flex}.kpi-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.35rem;font-size:.8rem;font-weight:600}.kpi-value{color:var(--gray-900);letter-spacing:-.03em;margin-bottom:.5rem;font-size:2rem;font-weight:900;line-height:1}.kpi-sub{color:var(--gray-500);align-items:center;gap:.3rem;font-size:.78rem;font-weight:500;display:flex}.dash-two-col{grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem;display:grid}.dash-card-header{border-bottom:1px solid var(--gray-100);align-items:center;gap:.6rem;padding:1.25rem 1.5rem;display:flex}.dash-token-card{padding:0;overflow:hidden}.dash-token-rows{flex-direction:column;gap:1.2rem;padding:1.25rem 1.5rem;display:flex}.dash-token-row-top{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.dash-token-label{color:var(--gray-600);font-size:.82rem;font-weight:500}.dash-token-value{font-size:.9rem;font-weight:800}.dash-token-track{background:var(--gray-100);border-radius:99px;height:8px;margin-bottom:.25rem;overflow:hidden}.dash-token-fill{border-radius:99px;min-width:4px;height:100%;transition:width 1s cubic-bezier(.4,0,.2,1)}.dash-token-pct{color:var(--gray-400);text-align:right;font-size:.72rem;font-weight:700}.dash-token-total{background:var(--gray-50);border-top:1px solid var(--gray-100);color:var(--gray-500);justify-content:space-between;align-items:center;padding:.85rem 1.5rem;font-size:.85rem;font-weight:500;display:flex}.dash-quick-stats{padding:0;overflow:hidden}.dash-quick-rows{padding:.5rem 0}.dash-quick-row{border-bottom:1px solid var(--gray-50);align-items:center;gap:.75rem;padding:.75rem 1.5rem;transition:background .15s;display:flex}.dash-quick-row:last-child{border-bottom:none}.dash-quick-row:hover{background:var(--blue-50)}.dash-quick-icon{background:var(--blue-50);width:30px;height:30px;color:var(--blue-600);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dash-quick-label{color:var(--gray-600);flex:1;font-size:.82rem;font-weight:500}.dash-quick-value{color:var(--gray-800);font-size:.9rem;font-weight:800}.dash-contacts-card{margin-bottom:1.5rem;padding:0;overflow:hidden}.dash-table-wrap{overflow-x:auto}.dash-table{border-collapse:collapse;width:100%;font-size:.875rem}.dash-table thead tr{background:var(--gray-50);border-bottom:2px solid var(--gray-100)}.dash-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-500);white-space:nowrap;padding:.75rem 1.25rem;font-size:.72rem;font-weight:700}.dash-table tbody tr{border-bottom:1px solid var(--gray-50);transition:background .15s}.dash-table tbody tr:hover{background:var(--blue-50)}.dash-table tbody tr:last-child{border-bottom:none}.dash-table td{color:var(--gray-700);vertical-align:middle;padding:.85rem 1.25rem}.dash-td-num{color:var(--gray-400);width:2.5rem;font-size:.8rem;font-weight:700}.dash-td-date{color:var(--gray-500);font-size:.8rem}.dash-phone-cell{align-items:center;gap:.65rem;display:flex}.dash-mini-avatar{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.68rem;font-weight:800;display:flex}.dash-phone-text{color:var(--gray-800);font-size:.85rem;font-weight:600}.dash-nd{color:var(--gray-300);font-size:.85rem}.dash-empty{color:var(--gray-400);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3.5rem 2rem;display:flex}.dash-empty p{max-width:360px;font-size:.875rem;line-height:1.6}@media (max-width:1024px){.dash-two-col{grid-template-columns:1fr}}@media (max-width:768px){.dashboard{padding:1rem 1rem 2rem}.kpi-grid{grid-template-columns:1fr 1fr}.dash-hero{flex-direction:column;gap:1rem}.dash-hero-right{align-self:flex-start}}@media (max-width:480px){.kpi-grid{grid-template-columns:1fr}}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.bot-stat-card{border-radius:var(--radius-md);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:.9rem;padding:1rem 1.25rem;transition:box-shadow .2s;display:flex}.bot-stat-card:hover{box-shadow:var(--shadow-md)}.bot-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.bot-stat-label{color:var(--gray-500);margin-bottom:.15rem;font-size:.78rem;font-weight:500}.bot-stat-value{letter-spacing:-.02em;font-size:1.3rem;font-weight:800}.status-section{padding:1.75rem}.status-section-header{border-bottom:1px solid var(--gray-200);align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.section-icon{color:var(--blue-600);font-size:1.3rem}.status-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;display:grid}.status-card{background:var(--gray-50);border-radius:var(--radius-md);border:1px solid var(--gray-200);padding:1.25rem;transition:box-shadow .2s,transform .2s}.status-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.status-card-header{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.status-card-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:1rem;display:flex}.status-card-label{color:var(--gray-800);font-size:.88rem;font-weight:700}.status-card-sub{color:var(--gray-500);margin-top:1px;font-size:.75rem}.status-card-value{color:var(--gray-900);letter-spacing:-.03em;margin-bottom:.75rem;font-size:2rem;font-weight:900}.status-progress-wrap{background:var(--gray-200);border-radius:99px;width:100%;height:8px;margin-bottom:.35rem;overflow:hidden}.status-progress-fill{border-radius:99px;min-width:4px;height:100%;transition:width 1s cubic-bezier(.4,0,.2,1)}.status-pct{color:var(--gray-500);font-size:.78rem;font-weight:700}@media (max-width:768px){.dashboard{padding:80px 1rem 2rem}.kpi-grid{grid-template-columns:1fr 1fr}.dash-header{flex-direction:column;align-items:flex-start;gap:.75rem}.status-grid{grid-template-columns:1fr}}@media (max-width:480px){.kpi-grid{grid-template-columns:1fr}.bot-stats-row{grid-template-columns:1fr 1fr}}.conv-container{background:#fff;height:100vh;display:flex;position:relative;overflow:hidden}.conv-sidebar{border-right:1px solid var(--gray-200);background:#fff;flex-direction:column;flex-shrink:0;width:300px;min-width:260px;display:flex;overflow:hidden}.conv-sidebar-header{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:1.25rem 1rem .75rem;display:flex}.conv-sidebar-header h2{color:var(--gray-900);letter-spacing:-.01em;font-size:1rem;font-weight:800}.conv-search{border-bottom:1px solid var(--gray-100);padding:.75rem 1rem;position:relative}.conv-search-icon{color:var(--gray-400);pointer-events:none;font-size:.9rem;position:absolute;top:50%;left:1.6rem;transform:translateY(-50%)}.conv-search .input-field{padding-left:2.2rem;font-size:.85rem}.conv-list{flex:1;overflow-y:auto}.conv-list-loading,.conv-list-empty{color:var(--gray-400);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2rem;font-size:.875rem;display:flex}.conv-item{cursor:pointer;border-bottom:1px solid var(--gray-50);align-items:center;gap:.75rem;padding:.85rem 1rem;transition:background .15s;display:flex}.conv-item:hover{background:var(--blue-50)}.conv-item.active{background:var(--blue-50);border-right:3px solid var(--blue-600)}.conv-avatar{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;display:flex}.conv-item-info{flex:1;min-width:0}.conv-item-top{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.conv-phone{color:var(--gray-800);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:700;overflow:hidden}.conv-time{color:var(--gray-400);flex-shrink:0;font-size:.72rem}.conv-preview{color:var(--gray-500);margin-top:.15rem;font-size:.78rem}.conv-chat{flex-direction:column;flex:1;display:flex;overflow:hidden}.conv-empty-state{color:var(--gray-400);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;display:flex}.conv-empty-state h2{color:var(--gray-600);font-size:1.25rem;font-weight:700}.conv-empty-state p{max-width:280px;font-size:.875rem}.conv-chat-header{border-bottom:1px solid var(--gray-200);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.25rem;display:flex}.conv-chat-user{align-items:center;gap:.75rem;display:flex}.conv-chat-avatar{background:linear-gradient(135deg, var(--blue-500), var(--blue-700));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.1rem;display:flex}.conv-chat-name{color:var(--gray-900);font-size:1rem;font-weight:800}.conv-chat-meta{color:var(--gray-500);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.15rem;font-size:.75rem;display:flex}.conv-header-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.controller-badge{border-radius:99px;align-items:center;gap:.3rem;padding:.3rem .75rem;font-size:.78rem;font-weight:700;display:inline-flex}.handover-banner{color:#15803d;background:#f0fdf4;border-bottom:1px solid #bbf7d0;align-items:center;gap:.75rem;padding:.6rem 1.25rem;font-size:.85rem;font-weight:500;display:flex}.handover-banner strong{font-weight:800}.ai-summary-panel{border-bottom:1px solid var(--blue-100);background:linear-gradient(135deg,#eff6ff 0%,#f0f9ff 100%);padding:1rem 1.25rem}.ai-summary-header{color:var(--blue-700);align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.ai-summary-loading{color:var(--blue-500);align-items:center;gap:.75rem;font-size:.85rem;display:flex}.ai-summary-text{color:var(--gray-700);margin-bottom:.75rem;font-size:.875rem;line-height:1.6}.ai-summary-chips{flex-wrap:wrap;gap:.5rem;display:flex}.conv-messages-area{background:#efeae2;flex:1;padding:1rem;overflow-y:auto}.conv-msg-loading,.conv-msg-empty{height:100%;color:var(--gray-500);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}.conv-messages-wrap{flex-direction:column;gap:.25rem;display:flex}.conv-date-sep{text-align:center;margin:.75rem 0}.conv-date-sep span{color:var(--gray-500);background:#ffffffd9;border-radius:99px;padding:.3rem 1rem;font-size:.75rem;font-weight:600;box-shadow:0 1px 3px #00000014}.conv-message{margin-bottom:.4rem;display:flex}.conv-message.user{justify-content:flex-end}.conv-message.assistant{justify-content:flex-start}.conv-bubble{border-radius:12px;max-width:68%;padding:.6rem .9rem;animation:.2s fadeUp;box-shadow:0 1px 2px #0000001a}.conv-message.user .conv-bubble{background:#d9fdd3;border-radius:12px 12px 2px}.conv-message.assistant .conv-bubble{background:#fff;border-radius:12px 12px 12px 2px}.conv-bubble-role{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);align-items:center;gap:.3rem;margin-bottom:.3rem;font-size:.68rem;font-weight:700;display:flex}.conv-bubble-content{color:var(--gray-800);white-space:pre-wrap;word-break:break-word;font-size:.875rem;line-height:1.5}.conv-bubble-footer{justify-content:flex-end;align-items:center;gap:.5rem;margin-top:.3rem;display:flex}.conv-bubble-time{color:var(--gray-400);font-size:.68rem}.conv-bubble-tokens{color:var(--gray-400);background:#0000000a;border-radius:4px;padding:1px 5px;font-size:.65rem}@media (max-width:768px){.conv-sidebar{width:100%;min-width:unset;z-index:10;height:100%;position:absolute}.conv-chat{width:100%}.conv-header-actions{display:none}.conv-bubble{max-width:85%}}.conv-message.agent{justify-content:flex-end}.conv-message.agent .conv-bubble{background:linear-gradient(135deg,#dbeafe,#eff6ff);border:1px solid #bfdbfe;border-radius:12px 12px 2px}.conv-message.agent .conv-bubble-role{color:#2563eb}.agent-input-bar{background:#fff;border-top:2px solid #2563eb;flex-shrink:0;padding:.75rem 1rem .5rem}.agent-input-wrap{background:#f8faff;border:1.5px solid #bfdbfe;border-radius:12px;align-items:center;gap:.5rem;padding:.4rem .5rem .4rem .9rem;transition:border-color .2s,box-shadow .2s;display:flex}.agent-input-wrap:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.agent-input-icon{color:#2563eb;flex-shrink:0}.agent-input-field{color:var(--gray-800);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.9rem}.agent-input-field::placeholder{color:#94a3b8}.agent-input-field:disabled{opacity:.6}.agent-send-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .15s,opacity .15s,background .2s;display:flex}.agent-send-btn:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:scale(1.08)}.agent-send-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.agent-send-btn.sending{background:var(--gray-400)}.agent-input-hint{color:#94a3b8;letter-spacing:.01em;margin-top:.3rem;padding-left:.25rem;font-size:.72rem}.loan-enquiries{background:0 0;min-height:100vh;padding:100px 2rem 2rem;position:relative}.loan-enquiries:before{content:"";pointer-events:none;background:radial-gradient(circle at 20%,#2563eb0a,#0000 50%),radial-gradient(circle at 80% 80%,#3b82f60a,#0000 50%),radial-gradient(circle at 40% 20%,#2563eb0a,#0000 50%);position:absolute;inset:0}.enquiry-filters{z-index:1;flex-wrap:wrap;gap:.8rem;margin-bottom:2.5rem;display:flex;position:relative}.filter-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#64748b;cursor:pointer;letter-spacing:-.01em;background:#ffffffe6;border:2px solid #cbd5e199;border-radius:12px;padding:.85rem 1.75rem;font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.filter-btn:hover{color:#2563eb;background:#f1f5f9f2;border-color:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb26}.filter-btn.active{color:#fff;background:linear-gradient(135deg,#2563eb 0%,#3b82f6 100%);border-color:#0000;transform:translateY(-2px);box-shadow:0 4px 16px #2563eb4d,0 2px 8px #2563eb33}.filter-btn.active:hover{box-shadow:0 6px 20px #2563eb66,0 3px 10px #2563eb40}.enquiries-container{z-index:1;position:relative}.loading,.empty-state{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #e2e8f0cc;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;padding:5rem 2rem;display:flex;box-shadow:0 4px 20px #0000000f}.loading .spinner{border:4px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}.loading p,.empty-state h3,.empty-state p{color:#64748b;font-weight:500}.empty-state svg{color:#cbd5e1;font-size:3rem}.error-message{color:#dc2626;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;align-items:center;gap:.75rem;padding:2rem;font-weight:500;display:flex}.error-message svg{font-size:1.5rem}.table-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #0000000f}.enquiries-table{border-collapse:collapse;width:100%}.enquiries-table th{text-align:left;color:#374151;letter-spacing:.025em;background:#f8fafc;border-bottom:1px solid #e5e7eb;padding:1.25rem 1rem;font-size:.875rem;font-weight:600}.enquiries-table td{color:#4b5563;border-bottom:1px solid #f1f5f9;padding:1.25rem 1rem;font-size:.875rem}.enquiries-table tbody tr{cursor:pointer;transition:all .2s}.enquiries-table tbody tr:hover{background:#f8fafc;transform:translate(2px)}.client-info{align-items:center;gap:.75rem;display:flex}.client-name{color:#1f2937;font-weight:500}.callback-indicator{color:#f59e0b;background:#fef3c7;border:2px solid #f59e0b;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.callback-indicator svg{font-size:.75rem}.status-badge{text-transform:uppercase;letter-spacing:.025em;border-radius:9999px;align-items:center;padding:.375rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-new{color:#1e40af;background:#dbeafe}.badge-progress,.badge-pending,.badge-review{color:#92400e;background:#fef3c7}.badge-approved{color:#065f46;background:#d1fae5}.badge-rejected{color:#991b1b;background:#fee2e2}.badge-disbursed{color:#065f46;background:#d1fae5}.badge-default{color:#374151;background:#f3f4f6}.view-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.view-btn:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.modal-header h2{color:#1f2937;margin:0;font-size:1.5rem;font-weight:700}.close-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:2rem;transition:all .2s;display:flex}.close-btn:hover{color:#374151;background:#f3f4f6}.modal-body{padding:2rem}.detail-section{margin-bottom:2rem}.detail-section h3{color:#1f2937;border-bottom:2px solid #e5e7eb;margin:0 0 1rem;padding-bottom:.5rem;font-size:1.125rem;font-weight:600}.detail-section p{color:#4b5563;margin:.5rem 0;font-size:.875rem}.detail-section strong{color:#1f2937;font-weight:600}.callback-section{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;padding:1rem}.status-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.status-buttons button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.status-buttons button:hover{background:#f9fafb;border-color:#9ca3af}@media (max-width:768px){.loan-enquiries{padding:100px 1rem 2rem}.enquiry-filters{gap:.5rem}.filter-btn{padding:.7rem 1.25rem;font-size:.8rem}.enquiries-table{font-size:.8rem}.enquiries-table th,.enquiries-table td{padding:.75rem .5rem}.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-header,.modal-body{padding:1rem 1.5rem}}.analytics-page{background:#fff;min-height:100vh;padding:2rem 2rem 3rem;animation:.4s fadeUp}.an-full-loading{min-height:calc(100vh - 64px);color:var(--blue-700);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-weight:600;display:flex}.analytics-header{justify-content:space-between;align-items:center;margin-bottom:1.75rem;display:flex}.an-kpi-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.an-kpi-card{flex-direction:column;gap:.3rem;padding:1.2rem;transition:transform .2s,box-shadow .2s;animation:.4s backwards fadeUp;display:flex}.an-kpi-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.an-kpi-icon{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:.5rem;display:flex}.an-kpi-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.an-kpi-value{letter-spacing:-.03em;font-size:1.9rem;font-weight:900;line-height:1}.an-kpi-sub{color:var(--gray-400);font-size:.75rem;font-weight:500}.an-charts-row{grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem;display:grid}.an-chart-card{padding:1.5rem}.an-card-header{border-bottom:1px solid var(--gray-200);align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.an-bar-chart{align-items:flex-end;gap:.75rem;height:180px;display:flex}.an-bar-group{flex-direction:column;flex:1;align-items:center;gap:.4rem;height:100%;display:flex}.an-bar-label{color:var(--gray-500);font-size:.7rem;font-weight:700}.an-bar-track{background:var(--gray-100);border-radius:6px 6px 0 0;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.an-bar-fill{background:linear-gradient(180deg, var(--blue-400), var(--blue-600));border-radius:6px 6px 0 0;width:100%;min-height:4px;transition:height .8s cubic-bezier(.4,0,.2,1)}.an-bar-day{color:var(--gray-400);font-size:.72rem;font-weight:600}.an-donut-wrap{flex-direction:column;align-items:center;gap:1.5rem;padding:.5rem 0;display:flex}.an-donut{border-radius:50%;justify-content:center;align-items:center;width:160px;height:160px;display:flex;position:relative}.an-donut-hole{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100px;height:100px;display:flex;box-shadow:0 2px 8px #0000000f}.an-donut-pct{color:var(--gray-900);letter-spacing:-.02em;font-size:1.3rem;font-weight:900}.an-donut-sub{color:var(--gray-500);font-size:.7rem;font-weight:600}.an-donut-legend{flex-direction:column;gap:.5rem;width:100%;display:flex}.an-legend-item{color:var(--gray-600);align-items:center;gap:.5rem;font-size:.82rem;font-weight:500;display:flex}.an-legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.an-issues-card{padding:1.5rem}.an-issues-list{flex-direction:column;gap:1rem;display:flex}.an-issue-row{align-items:center;gap:1rem;display:flex}.an-issue-rank{color:var(--gray-400);flex-shrink:0;width:24px;font-size:.8rem;font-weight:800}.an-issue-info{flex:1}.an-issue-label-row{justify-content:space-between;align-items:baseline;margin-bottom:.35rem;display:flex}.an-issue-label{color:var(--gray-800);font-size:.875rem;font-weight:600}.an-issue-count{color:var(--blue-600);font-size:.8rem;font-weight:700}.an-issue-bar-track{background:var(--gray-100);border-radius:99px;height:8px;overflow:hidden}.an-issue-bar-fill{background:linear-gradient(90deg, var(--blue-400), var(--blue-600));border-radius:99px;height:100%;transition:width .8s}@media (max-width:900px){.an-charts-row{grid-template-columns:1fr}}@media (max-width:600px){.analytics-page{padding:80px 1rem 2rem}.an-kpi-row{grid-template-columns:1fr 1fr}.an-bar-chart{height:140px}}.templates-page{background:#fff;min-height:100vh;padding:2rem 2rem 2.5rem;animation:.4s fadeUp}.tpl-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.tpl-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;display:grid}.tpl-card{flex-direction:column;gap:.75rem;padding:1.25rem;transition:transform .2s,box-shadow .2s;animation:.4s backwards fadeUp;display:flex}.tpl-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.tpl-card-title-row{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.tpl-card-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;display:flex}.tpl-name{color:var(--gray-900);margin-bottom:.25rem;font-size:1rem;font-weight:800}.tpl-body-preview{color:var(--gray-500);flex:1;font-size:.82rem;line-height:1.55}.tpl-vars{flex-wrap:wrap;gap:.4rem;display:flex}.tpl-var-chip{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:.2rem .55rem;font-family:Courier New,monospace;font-size:.72rem;font-weight:700}.tpl-actions{border-top:1px solid var(--gray-100);flex-wrap:wrap;align-items:center;gap:.5rem;padding-top:.75rem;display:flex}.tpl-action-btn{padding:.38rem .75rem!important;font-size:.78rem!important}.tpl-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0f172a66;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.tpl-modal{border-radius:var(--radius-xl);width:100%;max-width:560px;box-shadow:var(--shadow-xl);background:#fff;max-height:90vh;animation:.25s fadeUp;overflow-y:auto}.tpl-modal-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.tpl-modal-header h2{color:var(--gray-900);font-size:1.05rem;font-weight:800}.tpl-modal-footer{border-top:1px solid var(--gray-100);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.tpl-form{flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.tpl-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.tpl-form-field{flex-direction:column;gap:.35rem;display:flex}.tpl-modal-label{color:var(--gray-600);font-size:.8rem;font-weight:700}.tpl-color-picker{gap:.5rem;padding:.25rem 0;display:flex}.tpl-color-dot{cursor:pointer;border:2.5px solid #0000;border-radius:50%;width:28px;height:28px;transition:transform .15s,border-color .15s}.tpl-color-dot:hover{transform:scale(1.15)}.tpl-color-dot.selected{border-color:var(--gray-900);transform:scale(1.1)}.tpl-preview-vars{border-bottom:1px solid var(--gray-100);padding:1rem 1.5rem}.tpl-preview-var-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-top:.75rem;display:grid}.tpl-preview-var-field{flex-direction:column;gap:.3rem;display:flex}.tpl-preview-var-field label{color:var(--blue-600);font-family:monospace;font-size:.75rem;font-weight:700}.tpl-preview-bubble{padding:1.25rem 1.5rem 1.5rem}.tpl-preview-bubble-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.78rem;font-weight:700}.tpl-preview-content{color:var(--gray-800);white-space:pre-wrap;background:#d9fdd3;border-radius:12px 12px 2px;padding:.9rem 1rem;font-size:.9rem;line-height:1.6;box-shadow:0 1px 3px #00000014}@media (max-width:600px){.templates-page{padding:80px 1rem 2rem}.tpl-grid,.tpl-form-row{grid-template-columns:1fr}.tpl-modal{border-radius:var(--radius-lg)}}.broadcast-page{background:#fff;min-height:100vh;padding:2rem 2rem 2.5rem;animation:.4s fadeUp}.bc-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.bc-kpi-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.bc-kpi-card{flex-direction:column;gap:.3rem;padding:1.25rem;transition:transform .2s,box-shadow .2s;animation:.4s backwards fadeUp;display:flex}.bc-kpi-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.bc-kpi-icon{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:.4rem;display:flex}.bc-kpi-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.bc-kpi-value{letter-spacing:-.03em;font-size:1.9rem;font-weight:900;line-height:1}.bc-table-card{overflow:hidden}.bc-table-header{border-bottom:1px solid var(--gray-200);padding:1.25rem 1.5rem}.bc-table-wrap{overflow-x:auto}.bc-table{border-collapse:collapse;width:100%;font-size:.875rem}.bc-table thead tr{background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.bc-table th{text-align:left;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:.75rem 1rem;font-size:.72rem;font-weight:700}.bc-table td{border-bottom:1px solid var(--gray-100);color:var(--gray-700);vertical-align:middle;padding:.9rem 1rem}.bc-table tbody tr:hover{background:var(--blue-50)}.bc-name{font-weight:700;color:var(--gray-900)!important}.bc-group{align-items:center;gap:.4rem;display:flex;color:var(--gray-600)!important}.bc-date{white-space:nowrap;align-items:center;gap:.4rem;display:flex}.bc-na{color:var(--gray-300)}.bc-reply-rate{font-weight:700;color:var(--green-600)!important}.bc-mini-bar-wrap{background:var(--gray-100);border-radius:99px;width:100px;height:5px;margin-bottom:3px;overflow:hidden}.bc-mini-bar-fill{background:linear-gradient(90deg,#60a5fa,#2563eb);border-radius:99px;height:100%}.bc-mini-bar-label{color:var(--gray-500);font-size:.7rem}.bc-reach-preview{border-radius:var(--radius);color:var(--blue-700);background:#eff6ff;border:1px solid #bfdbfe;align-items:center;gap:.4rem;padding:.6rem .9rem;font-size:.85rem;display:flex}.bc-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0f172a66;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.bc-modal{border-radius:var(--radius-xl);width:100%;max-width:540px;box-shadow:var(--shadow-xl);background:#fff;max-height:90vh;animation:.25s fadeUp;overflow-y:auto}.bc-modal-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.bc-modal-header h2{color:var(--gray-900);font-size:1.05rem;font-weight:800}.bc-modal-footer{border-top:1px solid var(--gray-100);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.bc-form{flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.bc-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.bc-form-field{flex-direction:column;gap:.35rem;display:flex}.bc-form-field label{color:var(--gray-600);font-size:.8rem;font-weight:700}.bc-detail-body{padding:1.5rem}.bc-detail-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.bc-detail-item{flex-direction:column;gap:.25rem;display:flex}.bc-detail-item span{color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.bc-detail-item strong{color:var(--gray-900);font-size:1rem;font-weight:800}.bc-detail-chart{background:var(--gray-50);border-radius:var(--radius-md);padding:1.25rem}.bc-detail-chart-row{color:var(--gray-700);justify-content:space-between;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.bc-detail-bar-track{background:var(--gray-200);border-radius:99px;height:10px;overflow:hidden}.bc-detail-bar-fill{border-radius:99px;height:100%;transition:width .8s}@media (max-width:768px){.broadcast-page{padding:80px 1rem 2rem}.bc-table th:nth-child(3),.bc-table td:nth-child(3),.bc-table th:nth-child(4),.bc-table td:nth-child(4){display:none}}@media (max-width:480px){.bc-kpi-row{grid-template-columns:1fr 1fr}.bc-form-row,.bc-detail-grid{grid-template-columns:1fr}}.settings-page{background:var(--bg,#f1f5f9);min-height:100vh;padding:2rem 2rem 3rem;animation:.35s fadeUp}.settings-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.settings-layout{grid-template-columns:1fr 380px;align-items:start;gap:1.5rem;display:grid}.settings-card{margin-bottom:1.25rem;padding:0;overflow:hidden}.settings-card:last-child{margin-bottom:0}.settings-card-title{color:var(--gray-800,#1e293b);border-bottom:1px solid var(--gray-100,#f1f5f9);background:var(--gray-50,#f8fafc);align-items:center;gap:.6rem;padding:1rem 1.5rem;font-size:.9rem;font-weight:800;display:flex}.settings-presets{grid-template-columns:repeat(3,1fr);gap:.75rem;padding:1.25rem;display:grid}.preset-btn{border:2px solid var(--gray-200,#e2e8f0);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;align-items:center;gap:.5rem;padding:.85rem .5rem;transition:all .18s;display:flex;position:relative}.preset-btn:hover{border-color:var(--primary,#2563eb);transform:translateY(-2px);box-shadow:0 4px 12px #2563eb26}.preset-btn.active{border-color:var(--primary,#2563eb);background:var(--blue-50,#eff6ff)}.preset-swatches{gap:4px;display:flex}.preset-swatches span{border:2px solid #ffffffb3;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 3px #00000026}.preset-name{color:var(--gray-700,#334155);text-align:center;font-size:.72rem;font-weight:700}.preset-check{color:var(--primary,#2563eb);position:absolute;top:6px;right:6px}.settings-fields{flex-direction:column;display:flex}.settings-field{border-bottom:1px solid var(--gray-50,#f8fafc);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.5rem;transition:background .15s;display:flex}.settings-field:last-child{border-bottom:none}.settings-field:hover{background:var(--gray-50,#f8fafc)}.settings-field-meta{flex:1;min-width:0}.settings-field-label{color:var(--gray-800,#1e293b);margin-bottom:2px;font-size:.85rem;font-weight:700;display:block}.settings-field-desc{color:var(--gray-400,#94a3b8);font-size:.75rem;line-height:1.3;display:block}.settings-field-input{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.color-swatch{border:2px solid var(--gray-200,#e2e8f0);border-radius:8px;flex-shrink:0;width:32px;height:32px;box-shadow:0 1px 4px #0000001a}.color-picker-native{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.settings-field-input label{cursor:pointer}.color-hex-input{border:1.5px solid var(--gray-200,#e2e8f0);width:84px;color:var(--gray-700,#334155);letter-spacing:.05em;text-transform:uppercase;background:#fff;border-radius:8px;outline:none;padding:.35rem .55rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem;font-weight:600;transition:border-color .18s}.color-hex-input:focus{border-color:var(--primary,#2563eb)}.settings-field-input{position:relative}.settings-field-input input[type=color]{opacity:0;cursor:pointer;background:0 0;border:none;width:32px;height:32px;padding:0;position:absolute;top:0;left:0}.settings-preview-card{padding:0}.settings-preview{border-bottom:1px solid var(--gray-100,#f1f5f9);border-radius:0;height:240px;display:flex;overflow:hidden}.preview-sidebar{flex-direction:column;flex-shrink:0;gap:2px;width:90px;padding:8px 6px;transition:background .3s;display:flex}.preview-logo{border-bottom:1px solid #ffffff14;align-items:center;gap:5px;margin-bottom:4px;padding:6px 4px 10px;display:flex}.preview-logo-dot{border-radius:4px;flex-shrink:0;width:14px;height:14px}.preview-nav-item{cursor:default;border-radius:6px;align-items:center;gap:5px;padding:5px 6px;font-size:.55rem;font-weight:600;transition:all .2s;display:flex}.preview-nav-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.preview-content{flex-direction:column;flex:1;gap:8px;padding:8px;transition:background .3s;display:flex;overflow:hidden}.preview-hero{border-radius:8px;padding:8px 10px;transition:background .3s}.preview-kpi-row{gap:6px;display:flex}.preview-kpi{border:1px solid #0000000f;border-radius:7px;flex:1;padding:7px 6px;transition:background .3s}.preview-chips{flex-direction:column;gap:6px;max-height:260px;padding:1rem 1.25rem;display:flex;overflow-y:auto}.preview-chip{align-items:center;gap:.5rem;font-size:.75rem;display:flex}.preview-chip-dot{border:1px solid #00000014;border-radius:4px;flex-shrink:0;width:14px;height:14px}.preview-chip-key{color:var(--gray-500,#64748b);text-transform:capitalize;flex:1;font-weight:500}.preview-chip-val{color:var(--gray-700,#334155);text-transform:uppercase;font-family:monospace;font-size:.72rem;font-weight:700}.settings-info-list{flex-direction:column;gap:.65rem;padding:1.25rem 1.5rem;list-style:none;display:flex}.settings-info-list li{color:var(--gray-600,#475569);align-items:flex-start;gap:.5rem;font-size:.82rem;line-height:1.5;display:flex}.settings-info-list li:before{content:"→";color:var(--primary,#2563eb);flex-shrink:0;margin-top:1px;font-weight:700}@media (max-width:1100px){.settings-layout{grid-template-columns:1fr}.settings-right{order:-1}}@media (max-width:640px){.settings-page{padding:1rem 1rem 2rem}.settings-header{flex-direction:column;align-items:flex-start}.settings-presets{grid-template-columns:repeat(2,1fr)}}.botcfg-page{background:var(--bg,#f1f5f9);min-height:100vh;padding:2rem 2rem 3rem;animation:.35s fadeUp}.botcfg-loading{min-height:60vh;color:var(--blue-600);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.botcfg-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.botcfg-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;align-items:center;gap:.6rem;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.botcfg-error-close{color:#b91c1c;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:2px}.botcfg-layout{grid-template-columns:260px 1fr;align-items:start;gap:1.25rem;display:grid}.botcfg-sidebar{border:1px solid var(--gray-200);box-shadow:var(--shadow);background:#fff;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.botcfg-sb-title{text-transform:uppercase;letter-spacing:.1em;color:var(--gray-400);padding:1rem 1.1rem .5rem;font-size:.72rem;font-weight:800}.botcfg-flow-item{cursor:pointer;text-align:left;border:none;border-bottom:1px solid var(--gray-50);background:0 0;align-items:center;gap:.65rem;padding:.8rem 1.1rem;transition:background .15s;display:flex;position:relative}.botcfg-flow-item:last-of-type{border-bottom:none}.botcfg-flow-item:hover,.botcfg-flow-item.active{background:var(--blue-50)}.botcfg-flow-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.botcfg-flow-info{flex-direction:column;flex:1;min-width:0;display:flex}.botcfg-flow-name{color:var(--gray-800);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.botcfg-flow-key{color:var(--gray-400);margin-top:1px;font-family:monospace;font-size:.68rem}.botcfg-flow-arrow{color:var(--blue-500)}.botcfg-ph-guide{border-top:1px solid var(--gray-100);background:var(--gray-50);margin-top:auto;padding:.85rem 1.1rem}.botcfg-ph-title{text-transform:uppercase;letter-spacing:.08em;color:var(--gray-500);align-items:center;gap:.4rem;margin-bottom:.6rem;font-size:.7rem;font-weight:800;display:flex}.botcfg-ph-row{flex-direction:column;gap:2px;margin-bottom:.5rem;display:flex}.botcfg-ph-code{background:var(--blue-100);color:var(--blue-700);border-radius:4px;align-self:flex-start;padding:1px 5px;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:700}.botcfg-ph-desc{color:var(--gray-400);font-size:.68rem;line-height:1.3}.botcfg-editor{border:1px solid var(--gray-200);box-shadow:var(--shadow);background:#fff;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.botcfg-editor-header{border-bottom:1px solid var(--gray-100);background:var(--gray-50);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.5rem;display:flex}.botcfg-editor-title{color:var(--gray-900);font-size:1rem;font-weight:800}.botcfg-editor-key{color:var(--gray-400);margin-top:2px;font-family:monospace;font-size:.72rem}.botcfg-toggle{cursor:pointer;border:1.5px solid;border-radius:99px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.8rem;font-weight:700;transition:all .18s;display:flex}.botcfg-toggle.on{color:#16a34a;background:#f0fdf4;border-color:#bbf7d0}.botcfg-toggle.off{background:var(--gray-100);color:var(--gray-500);border-color:var(--gray-200)}.botcfg-meta-grid{border-bottom:1px solid var(--gray-100);grid-template-columns:1fr 1fr;gap:1rem;padding:1.25rem 1.5rem;display:grid}.botcfg-field{flex-direction:column;gap:.4rem;display:flex}.botcfg-field label{color:var(--gray-700);font-size:.78rem;font-weight:700}.botcfg-hint{color:var(--gray-400);font-size:.72rem;font-weight:400}.botcfg-prompt-toolbar{border-bottom:1px solid var(--gray-100);background:var(--gray-50);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:flex}.botcfg-prompt-label{color:var(--gray-700);align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;display:flex}.botcfg-ph-btns{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.botcfg-ph-btn{border:1px solid var(--blue-200);background:var(--blue-50);color:var(--blue-700);cursor:pointer;border-radius:5px;padding:.25rem .6rem;font-family:monospace;font-size:.72rem;font-weight:700;transition:all .15s}.botcfg-ph-btn:hover{background:var(--blue-100)}.botcfg-textarea{width:100%;min-height:420px;color:var(--gray-800);resize:vertical;border:none;border-bottom:1px solid var(--gray-100);background:#fafbfc;outline:none;flex:1;padding:1.25rem 1.5rem;font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:.85rem;line-height:1.65}.botcfg-textarea:focus{background:#fff}.botcfg-footer-meta{color:var(--gray-400);background:var(--gray-50);padding:.6rem 1.5rem;font-size:.72rem}.botcfg-empty{border:1px solid var(--gray-200);color:var(--gray-300);text-align:center;background:#fff;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.botcfg-empty p{color:var(--gray-400);font-size:.9rem}.botcfg-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.botcfg-modal{background:#fff;border-radius:18px;width:100%;max-width:620px;max-height:90vh;animation:.25s fadeUp;overflow-y:auto;box-shadow:0 25px 60px #00000040}.botcfg-modal-header{border-bottom:1px solid var(--gray-100);color:var(--gray-900);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;font-size:1rem;font-weight:800;display:flex}.botcfg-modal-header button{color:var(--gray-400);cursor:pointer;background:0 0;border:none;font-size:1.1rem}.botcfg-modal-header button:hover{color:var(--gray-700)}.botcfg-modal-body{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.botcfg-modal-footer{border-top:1px solid var(--gray-100);justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;display:flex}@media (max-width:900px){.botcfg-layout{grid-template-columns:1fr}.botcfg-sidebar{order:2}}@media (max-width:640px){.botcfg-page{padding:1rem 1rem 2rem}.botcfg-meta-grid{grid-template-columns:1fr}}.app-shell{background:#fff;height:100vh;display:flex;overflow:hidden}.app-main{background:#fff;flex:1;min-width:0;overflow:hidden auto}.dashboard-page,.analytics-page,.templates-page,.broadcast-page{padding-top:2rem!important}.app-loading{background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;min-height:100vh;display:flex}.app-loading .spinner{border-width:4px;border-color:#3b82f6 #3b82f633 #3b82f633;width:48px;height:48px}.app-loading p{color:#64748b;letter-spacing:.05em;font-size:.9rem;font-weight:600}@media (max-width:768px){.app-shell{flex-direction:column}.app-main{padding-top:56px}.dashboard-page,.analytics-page,.templates-page,.broadcast-page{padding-top:1.25rem!important}}
