@import url(https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap);:root,[data-theme=light]{--bg:#f0f4f8;--bg-elevated:#fff;--surface:#fff;--surface-2:#f7fafc;--ink:#1f2937;--muted:#64748b;--line:#e2e8f0;--brand:#0d9488;--brand-dark:#0f766e;--brand-soft:#ccfbf1;--danger:#e11d48;--danger-soft:#ffe4e6;--success:#059669;--success-soft:#d1fae5;--warning:#d97706;--warning-soft:#ffedd5;--info:#2563eb;--info-soft:#dbeafe;--accent-sky:#0284c7;--accent-cyan:#0891b2;--accent-amber:#d97706;--accent-rose:#e11d48;--accent-emerald:#059669;--accent-lime:#65a30d;--accent-blue:#2563eb;--shadow:0 1px 2px #0f172a0a,0 10px 28px #0f172a0f;--radius:12px;--sidebar-bg:#ffffffeb;--sidebar-ink:#1f2937;--sidebar-muted:#64748b;--sidebar-border:#e2e8f0;--sidebar-hover:#f1f5f9;--sidebar-active:#ccfbf1;--sidebar-active-ink:#0f766e;--topbar-bg:#ffffffd1;--sidebar-width:248px;--sidebar-collapsed:64px;--topbar-height:64px;--font:"Plus Jakarta Sans",system-ui,sans-serif;--fs-xs:0.75rem;--fs-sm:0.8125rem;--fs-base:0.875rem;--fs-md:0.9375rem;--fs-lg:1.125rem;--fs-xl:1.25rem}[data-theme=dark]{--bg:#0b1220;--bg-elevated:#111827;--surface:#111827;--surface-2:#1a2332;--ink:#e5e7eb;--muted:#9ca3af;--line:#243044;--brand:#14b8a6;--brand-dark:#2dd4bf;--brand-soft:#14b8a629;--danger:#fb7185;--danger-soft:#fb718524;--success:#34d399;--success-soft:#34d39924;--warning:#fbbf24;--warning-soft:#fbbf2424;--info:#60a5fa;--info-soft:#60a5fa24;--accent-sky:#38bdf8;--accent-cyan:#22d3ee;--accent-amber:#fbbf24;--accent-rose:#fb7185;--accent-emerald:#34d399;--accent-lime:#a3e635;--accent-blue:#60a5fa;--shadow:0 1px 2px #00000040,0 10px 28px #00000047;--sidebar-bg:#0b1220;--sidebar-ink:#e5e7eb;--sidebar-muted:#94a3b8;--sidebar-border:#243044;--sidebar-hover:#ffffff0d;--sidebar-active:#14b8a633;--sidebar-active-ink:#5eead4;--topbar-bg:#111827e0}*{box-sizing:border-box}html{scrollbar-gutter:stable}#root,body,html{height:100%}body{-webkit-font-smoothing:antialiased;background:radial-gradient(1100px 520px at -5% -10%,color-mix(in srgb,#0d9488 16%,#0000),#0000 55%),radial-gradient(900px 480px at 105% 0,color-mix(in srgb,#2563eb 14%,#0000),#0000 52%),radial-gradient(700px 380px at 70% 110%,color-mix(in srgb,#d97706 10%,#0000),#0000 48%),#f0f4f8;background:radial-gradient(1100px 520px at -5% -10%,color-mix(in srgb,var(--brand) 16%,#0000),#0000 55%),radial-gradient(900px 480px at 105% 0,color-mix(in srgb,var(--info) 14%,#0000),#0000 52%),radial-gradient(700px 380px at 70% 110%,color-mix(in srgb,var(--warning) 10%,#0000),#0000 48%),var(--bg);background-attachment:fixed;color:#1f2937;color:var(--ink);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-family:var(--font);font-size:.875rem;font-size:var(--fs-base);font-weight:400;line-height:1.5;margin:0}button,input,select,textarea{color:inherit;font:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,strong{font-weight:600}.page-loading{color:#64748b;color:var(--muted);display:grid;font-size:.8125rem;font-size:var(--fs-sm);min-height:40vh;place-items:center}.app-shell{background:var(--bg);min-height:100vh}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);color:var(--sidebar-ink);display:flex;flex-direction:column;gap:12px;height:100vh;height:100dvh;left:0;overflow-x:hidden;overflow-y:auto;padding:12px;position:fixed;top:0;transition:width .22s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .22s ease;width:var(--sidebar-width);z-index:40}.sidebar.collapsed{padding:12px 8px;width:var(--sidebar-collapsed)}.sidebar.collapsed.hover-expand{box-shadow:8px 0 28px #0f172a1f;padding:12px;width:var(--sidebar-width)}.sidebar-top{align-items:center;border-bottom:1px solid var(--sidebar-border);display:flex;gap:8px;justify-content:space-between;min-height:44px;padding:4px 4px 12px;position:relative;width:100%}.sidebar.collapsed:not(.hover-expand) .sidebar-top{flex-direction:column;gap:8px;justify-content:center;padding:4px 0 12px}.sidebar-toggle{flex-shrink:0}.sidebar.collapsed:not(.hover-expand) .sidebar-toggle{display:none}.sidebar.collapsed:not(.hover-expand) .brand{justify-content:center;width:100%}.brand{align-items:center;display:flex;gap:10px;min-width:0}.brand-mark{background:var(--brand);border-radius:9px;color:#fff;display:grid;flex-shrink:0;font-size:var(--fs-sm);font-weight:700;height:36px;place-items:center;width:36px}.brand-mark.large{font-size:var(--fs-md);height:48px;width:48px}.brand-text{display:grid;min-width:0}.brand-text strong{font-size:var(--fs-md);font-weight:600;line-height:1.2}.brand-text small{color:var(--sidebar-muted);font-size:var(--fs-xs)}.nav{display:flex;flex-direction:column;gap:4px;padding-top:8px}.nav-link{align-items:center;border-radius:8px;color:var(--sidebar-muted);display:flex;font-size:var(--fs-sm);font-weight:500;gap:10px;min-height:40px;padding:0 10px;transition:background .15s ease,color .15s ease;white-space:nowrap}.sidebar.collapsed:not(.hover-expand) .nav-link{justify-content:center;min-height:40px;padding:0;width:100%}.nav-icon-wrap{display:grid;flex-shrink:0;height:40px;margin:0;place-items:center;width:40px}.sidebar.collapsed:not(.hover-expand) .nav-icon-wrap{height:40px;width:40px}.nav-link:hover{background:var(--sidebar-hover);color:var(--sidebar-ink)}.nav-link.active{background:var(--sidebar-active);color:var(--sidebar-active-ink)}.nav-icon{flex-shrink:0}.content-shell{display:flex;flex-direction:column;margin-left:var(--sidebar-width);min-height:100vh;min-width:0;overflow-x:hidden;transition:margin-left .22s ease}.app-shell.sidebar-collapsed .content-shell{margin-left:var(--sidebar-collapsed)}.topbar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--topbar-bg);border-bottom:1px solid var(--line);display:flex;gap:16px;height:var(--topbar-height);justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:30}.topbar-left,.topbar-right{align-items:center;display:flex;gap:12px}.topbar-title h1{font-size:var(--fs-lg);font-weight:600;line-height:1.25;margin:0}.topbar-title p{color:var(--muted);font-size:var(--fs-xs);margin:0}.topbar-user{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;display:flex;gap:8px;padding:4px 8px 4px 4px}.profile-menu{position:relative}.profile-trigger{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;display:flex;gap:8px;padding:4px 10px 4px 4px}.profile-trigger:hover{background:var(--surface-2)}.chevron{color:var(--muted);transition:transform .15s ease}.chevron.open{transform:rotate(180deg)}.profile-dropdown{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:8px;position:absolute;right:0;top:calc(100% + 8px);width:220px;z-index:50}.profile-dropdown-head{grid-gap:2px;border-bottom:1px solid var(--line);display:grid;gap:2px;margin-bottom:6px;padding:8px 10px 10px}.profile-dropdown-head strong{font-size:var(--fs-sm)}.profile-dropdown-head span{color:var(--muted);font-size:var(--fs-xs)}.profile-item{align-items:center;background:#0000;border:0;border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font-size:var(--fs-sm);gap:8px;padding:9px 10px;text-align:left;width:100%}.profile-item:hover{background:var(--surface-2)}.profile-item.danger{color:var(--danger)}.topbar-user-meta{grid-gap:0;display:grid;gap:0}.topbar-user-meta strong{font-size:var(--fs-sm);font-weight:600;line-height:1.2}.avatar{background:var(--brand-soft);border-radius:50%;color:var(--brand-dark);display:grid;height:28px;place-items:center;width:28px}.main{flex:1 1;overflow-x:hidden;padding:20px}.page,.page-transition{width:100%}.page{grid-gap:16px;display:grid;gap:16px;max-width:1180px;min-width:0}.page-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.page-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.refresh-btn{background:color-mix(in srgb,var(--brand) 8%,var(--surface));border-color:color-mix(in srgb,var(--brand) 30%,var(--line));color:var(--brand-dark)}.refresh-btn:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 14%,var(--surface))}.refresh-btn:disabled{cursor:wait;opacity:.7}.refresh-btn .spin{animation:refresh-spin .7s linear infinite}@keyframes refresh-spin{to{transform:rotate(1turn)}}.page-header h1{font-size:var(--fs-xl);font-weight:600;margin:0 0 4px}.hint,.page-header p{color:var(--muted);font-size:var(--fs-sm);margin:0}.stat-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.login-panel,.panel,.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.stat-card{grid-gap:8px;display:grid;gap:8px;padding:14px}.stat-card-h,.stat-card.stat-card-h{align-items:center;display:flex;flex-direction:row;gap:10px;min-height:0;padding:10px 12px}.stat-card-h .stat-icon{flex-shrink:0;height:30px;width:30px}.stat-card-h .stat-card-body{align-items:baseline;display:flex;flex:1 1;flex-direction:row;gap:8px;justify-content:space-between;min-width:0}.stat-card-h span{font-size:.72rem;line-height:1.2}.stat-card-h strong{font-size:1.05rem;line-height:1.2;margin:0}.stat-card-sm,.stat-card.stat-card-sm{align-items:center;display:flex;flex-direction:row;gap:10px;min-height:0;padding:10px 12px}.stat-card-sm .stat-icon{flex-shrink:0}.stat-card-sm .stat-card-body{align-items:baseline;display:flex;flex:1 1;flex-direction:row;gap:8px;justify-content:space-between;min-width:0}.stat-card-sm span{line-height:1.2}.stat-card-sm strong{line-height:1.2;margin:0}.stat-card span{color:var(--muted);font-size:var(--fs-xs);font-weight:500}.stat-card strong{font-size:var(--fs-xl);font-weight:600;line-height:1.2}.stat-card .stat-icon{background:var(--brand-soft);border-radius:10px;color:var(--brand-dark);display:grid;height:32px;place-items:center;width:32px}.stat-tone-teal{background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 10%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--brand) 28%,var(--line))}.stat-tone-teal .stat-icon{background:var(--brand-soft);color:var(--brand-dark)}.stat-tone-sky{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-sky) 12%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent-sky) 28%,var(--line))}.stat-tone-sky .stat-icon{background:color-mix(in srgb,var(--accent-sky) 16%,#0000);color:var(--accent-sky)}.stat-tone-amber{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-amber) 12%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent-amber) 28%,var(--line))}.stat-tone-amber .stat-icon{background:var(--warning-soft);color:var(--accent-amber)}.stat-tone-emerald{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-emerald) 12%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent-emerald) 28%,var(--line))}.stat-tone-emerald .stat-icon{background:var(--success-soft);color:var(--accent-emerald)}.stat-tone-rose{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-rose) 10%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent-rose) 26%,var(--line))}.stat-tone-rose .stat-icon{background:var(--danger-soft);color:var(--accent-rose)}.stat-tone-cyan{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-cyan) 12%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent-cyan) 28%,var(--line))}.stat-tone-cyan .stat-icon{background:color-mix(in srgb,var(--accent-cyan) 16%,#0000);color:var(--accent-cyan)}.stat-tone-blue{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-blue) 12%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent-blue) 28%,var(--line))}.stat-tone-blue .stat-icon{background:var(--info-soft);color:var(--accent-blue)}.stat-tone-lime{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-lime) 12%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent-lime) 28%,var(--line))}.stat-tone-lime .stat-icon{background:color-mix(in srgb,var(--accent-lime) 16%,#0000);color:var(--accent-lime)}.chart-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid-match>.chart-panel{display:flex;flex-direction:column;min-height:420px}.chart-grid-match>.chart-panel .chart-body-fill{display:flex;flex:1 1;flex-direction:column;min-height:0}.chart-grid-match>.chart-panel .chart-body-fill>*{flex:1 1}.chart-panel-wide{grid-column:1/-1}.chart-body{min-height:280px}.stat-card-link{color:inherit;cursor:pointer;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.stat-card-link:hover{box-shadow:0 8px 20px #0f172a14;transform:translateY(-2px)}.chart-empty{color:var(--muted);display:grid;font-size:var(--fs-sm);margin:0;min-height:260px;place-items:center}.dashboard-page{max-width:1200px}.dashboard-page .stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:960px){.dashboard-page .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.dashboard-page .stat-grid{grid-template-columns:1fr}}.full-skel{display:block;width:100%}@media (max-width:900px){.chart-grid{grid-template-columns:1fr}}.panel{padding:16px}.panel-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.panel-header h2{font-size:var(--fs-md);font-weight:600;margin:0}.panel-subtitle{color:var(--muted);font-size:var(--fs-sm);margin:4px 0 0}.sessions-header{align-items:flex-start}.session-list{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:0;padding:0}.session-item{align-items:center;background:color-mix(in srgb,var(--surface-2) 55%,var(--surface));border:1px solid var(--line);border-radius:12px;display:flex;gap:14px;justify-content:space-between;padding:12px 14px}.session-item.current{background:color-mix(in srgb,var(--brand) 6%,var(--surface));border-color:color-mix(in srgb,var(--brand) 35%,var(--line))}.session-main{flex:1 1;min-width:0}.session-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}.session-badge{align-items:center;background:color-mix(in srgb,var(--brand) 14%,#0000);border-radius:999px;color:var(--brand-dark);display:inline-flex;font-size:var(--fs-xs);font-weight:600;padding:2px 8px}.session-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:var(--fs-sm);gap:8px 14px}.session-item .btn.small{align-items:center;display:inline-flex;flex-shrink:0;gap:6px}@media (max-width:720px){.session-item{align-items:stretch}.session-item,.sessions-header{flex-direction:column}}.form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-field,.form-grid label,.login-form label{grid-gap:5px;color:var(--muted);display:grid;font-size:var(--fs-sm);font-weight:500;gap:5px}.form-field-label{color:var(--muted)}.form-field-control{min-width:0}.form-field.full,.form-grid .full{grid-column:1/-1}.field-error{color:var(--danger);font-size:var(--fs-xs);font-weight:500;line-height:1.35}.field-hint{color:var(--muted);font-size:var(--fs-xs);font-weight:400}.dtp-trigger.invalid,.form-field.has-error .dtp-trigger,.form-field.has-error .ss-trigger,.form-field.has-error input,.form-field.has-error select,.form-field.has-error textarea,.ss-trigger.invalid,input.invalid,select.invalid,textarea.invalid{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 12%,#0000)}.form-field.has-error .dtp-trigger.open,.form-field.has-error .ss-trigger.open,.form-field.has-error input:focus,.form-field.has-error textarea:focus{border-color:var(--danger);outline:2px solid color-mix(in srgb,var(--danger) 25%,#0000)}input,select,textarea{background:var(--bg-elevated);border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:var(--fs-sm);padding:9px 11px;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--brand);outline:2px solid color-mix(in srgb,var(--brand) 28%,#0000)}input:disabled,input[readonly],select:disabled,textarea:disabled,textarea[readonly]{background:var(--surface-2);border-color:var(--line);box-shadow:none;color:var(--muted);cursor:not-allowed;opacity:.92}input:disabled::placeholder,input[readonly]::placeholder,textarea:disabled::placeholder,textarea[readonly]::placeholder{color:color-mix(in srgb,var(--muted) 75%,#0000)}.icon-btn{background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-grid;height:34px;place-items:center;width:34px}.icon-btn:hover{background:var(--surface-2)}.sidebar .icon-btn{background:#0000;border-color:var(--sidebar-border);color:var(--sidebar-ink)}.sidebar .icon-btn:hover{background:var(--sidebar-hover)}.btn{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;font-size:var(--fs-sm);font-weight:500;gap:6px;justify-content:center;padding:8px 12px}.btn:hover{background:var(--surface-2)}.btn-primary,.btn.primary{background:linear-gradient(135deg,var(--brand) 0,color-mix(in srgb,var(--accent-cyan) 55%,var(--brand)) 100%);border-color:#0000;box-shadow:0 6px 16px color-mix(in srgb,var(--brand) 28%,#0000);color:#fff}.btn-primary:hover,.btn.primary:hover{background:linear-gradient(135deg,var(--brand-dark) 0,var(--brand) 100%)}.btn-outline,.btn.ghost{background:#0000}.btn.ghost{border-color:#ffffff24;color:inherit}.btn.full{width:100%}.btn.small{font-size:var(--fs-xs);padding:5px 9px}.btn.danger{background:linear-gradient(135deg,var(--danger),color-mix(in srgb,var(--danger) 70%,#7f1d1d));border-color:#0000;box-shadow:0 6px 16px color-mix(in srgb,var(--danger) 28%,#0000);color:#fff}.btn.danger:hover{filter:brightness(1.05)}.role-badge{border-radius:999px;display:inline-flex;font-size:.68rem;font-weight:600;letter-spacing:.03em;padding:1px 7px;text-transform:uppercase;width:fit-content}.role-admin{background:#fef3c7;color:#92400e}.role-sales{background:var(--brand-soft);color:var(--brand-dark)}[data-theme=dark] .role-admin{background:#fbbf2429;color:#fbbf24}.table-wrap{overflow-x:auto}table{border-collapse:collapse;font-size:var(--fs-sm);width:100%}tbody tr:nth-child(2n){background:color-mix(in srgb,var(--surface-2) 88%,#0000)}tbody tr:hover{background:color-mix(in srgb,var(--brand) 6%,var(--surface))}td,th{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}th{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.actions{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.status{background:var(--brand-soft);border-radius:999px;color:var(--brand-dark);display:inline-flex;font-size:var(--fs-xs);font-weight:500;padding:2px 7px;text-transform:capitalize}.status-cancelled,.status-lost,.status-no_show{background:var(--danger-soft);color:var(--danger)}.status-active,.status-completed,.status-won{background:var(--success-soft);color:var(--success)}.status-inactive{background:var(--surface-2);color:var(--muted)}.status-call{background:var(--info-soft);color:var(--info)}.status-message{background:var(--warning-soft);color:var(--warning)}.status-email{background:#ede9fe;color:#6d28d9}[data-theme=dark] .status-email{background:#a78bfa29;color:#c4b5fd}.alert{border-radius:8px;font-size:var(--fs-sm);padding:10px 12px}.alert.error{background:var(--danger-soft);color:var(--danger)}.alert.success{background:var(--success-soft);color:var(--success)}.filter-row{display:flex;flex-wrap:wrap;gap:8px}.leads-panel{grid-gap:14px;display:grid;gap:14px;min-width:0;overflow:hidden}.leads-toolbar{grid-gap:12px;display:grid;gap:12px}.leads-toolbar-title{align-items:center;display:flex;gap:10px}.leads-toolbar-title h2{font-size:var(--fs-md);font-weight:600;margin:0}.count-chip{border-radius:999px;color:var(--muted);display:inline-flex;font-size:var(--fs-xs);font-weight:500;padding:2px 8px}.count-chip,.filter-bar{align-items:center;background:var(--surface-2);border:1px solid var(--line)}.filter-bar{grid-gap:10px;border-radius:12px;display:grid;gap:10px;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,.9fr));min-width:0;padding:12px}.filter-search{align-items:center;display:flex;position:relative}.filter-search svg{color:var(--muted);left:11px;pointer-events:none;position:absolute}.filter-search input{padding-left:34px}.bulk-bar{display:none}.ui-checkbox{background:#0000;border:0;cursor:pointer;display:inline-grid;height:20px;padding:0;place-items:center;width:20px}.ui-checkbox-box{background:var(--surface);border:1.5px solid var(--line);border-radius:5px;display:grid;height:18px;place-items:center;width:18px}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a73;display:grid;inset:0;overflow:hidden;overscroll-behavior:none;padding:16px;place-items:center;position:fixed;touch-action:none;z-index:1200}.modal-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:min(88vh,720px);overflow:hidden;touch-action:auto;width:min(100%,520px)}.modal-lg{width:min(100%,680px)}.modal-sm{width:min(100%,420px)}.modal-footer,.modal-header{align-items:center;background:var(--surface);display:flex;flex-shrink:0;gap:10px;justify-content:space-between;padding:14px 16px}.modal-header{border-bottom:1px solid var(--line)}.modal-header h3{font-size:var(--fs-md);font-weight:600;margin:0}.modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px}.modal-footer{border-top:1px solid var(--line);justify-content:flex-end}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none;height:0;width:0}body.modal-open,body.modal-open .main,body.select-open,body.select-open .main{overflow:hidden!important;overscroll-behavior:none}.pagination{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding-top:4px}.pagination-controls,.pagination-jump,.pagination-left{align-items:center;display:flex;gap:8px}.pagination-limit{align-items:center;color:var(--muted);display:inline-flex;font-size:var(--fs-sm);gap:6px}.pagination-limit select{min-width:72px;width:auto}.pagination-limit .ss-select{width:88px}.pagination-limit .ss-trigger{min-height:34px}.pagination-meta,.pagination-page{color:var(--muted);font-size:var(--fs-xs)}.pagination-jump input{width:84px}.fab-wrap{align-items:flex-end;bottom:24px;display:flex;flex-direction:column;gap:10px;position:fixed;right:24px;z-index:90}.fab-menu{grid-gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:grid;gap:6px;min-width:150px;padding:8px}.fab-menu button{align-items:center;background:#0000;border:0;border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font-size:var(--fs-sm);gap:8px;padding:9px 10px;text-align:left}.fab-menu button:hover{background:var(--surface-2)}.fab-menu button.danger{color:var(--danger)}.fab-btn{grid-gap:0;background:var(--brand);border:0;border-radius:16px;box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 35%,#0000);cursor:pointer;gap:0;height:56px;place-items:center;position:relative;width:56px}.fab-btn,.fab-btn span{color:#fff;display:grid}.fab-btn span{background:var(--ink);border-radius:999px;font-size:.7rem;font-weight:700;height:22px;min-width:22px;padding:0 5px;place-items:center;position:absolute;right:-6px;top:-6px}.action-menu-btn.active{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 35%,var(--line));color:var(--brand-dark)}.leads-page .page-header{align-items:center}.stat-grid-compact{gap:10px}.stat-card-sm{gap:10px;padding:10px 12px}.stat-card-sm .stat-icon{height:28px;width:28px}.stat-card-sm span{font-size:.7rem}.stat-card-sm strong{font-size:1rem}.filter-bar-4{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,.85fr))}.filter-bar-3{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,.85fr))}.filter-bar-1{grid-template-columns:minmax(0,1fr)}.confirm-modal .confirm-modal-body{grid-gap:12px;display:grid;gap:12px;justify-items:center;padding-bottom:4px;padding-top:4px;text-align:center}.confirm-icon{background:linear-gradient(145deg,color-mix(in srgb,var(--danger) 16%,var(--surface)),var(--danger-soft));border-radius:16px;box-shadow:0 8px 20px color-mix(in srgb,var(--danger) 18%,#0000);color:var(--danger);display:grid;height:52px;place-items:center;width:52px}.confirm-message{color:var(--ink);font-size:var(--fs-sm);line-height:1.55;margin:0;max-width:34ch}.history-block{grid-gap:10px;border-top:1px solid var(--line);display:grid;gap:10px;margin-top:14px;padding-top:14px}.history-block h4{font-size:var(--fs-sm);font-weight:600;margin:0}.history-list{grid-gap:8px;display:grid;gap:8px;max-height:220px;overflow:auto}.history-item{grid-gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;display:grid;gap:4px;padding:10px 12px}.history-item-top{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.history-item strong{font-size:var(--fs-sm);font-weight:600}.history-item small,.history-meta{color:var(--muted);font-size:var(--fs-xs)}.history-empty{color:var(--muted);font-size:var(--fs-sm);margin:0}.callback-clickable,.status-clickable{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}button.status-clickable{border:0;font:inherit;font-family:inherit}.callback-clickable:hover,.status-clickable:hover{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 16%,#0000);transform:translateY(-1px)}.detail-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.detail-item{grid-gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;display:grid;gap:4px;padding:10px}.detail-item span{color:var(--muted);font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase}.detail-item strong{font-size:var(--fs-sm);font-weight:550;word-break:break-word}.skeleton{animation:skeleton-shine 1.2s ease-in-out infinite;background:linear-gradient(90deg,color-mix(in srgb,var(--line) 70%,#0000) 0,color-mix(in srgb,var(--surface-2) 90%,#fff) 50%,color-mix(in srgb,var(--line) 70%,#0000) 100%);background-size:200% 100%;display:inline-block}@keyframes skeleton-shine{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:960px){.detail-grid,.filter-bar,.filter-bar-3,.filter-bar-4{grid-template-columns:1fr}}.bulk-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.actions-col,.check-col{width:44px}.leads-panel .actions-col,.leads-panel .check-col{max-width:44px;min-width:36px;width:4%}.leads-panel td.actions-col,.leads-panel th.actions-col{overflow:visible;padding-left:4px;padding-right:4px;text-align:center}.col-serial{font-feature-settings:"tnum";color:var(--muted);font-variant-numeric:tabular-nums;width:44px}.leads-panel .table-wrap{max-width:100%;overflow-x:hidden;width:100%}.leads-panel table{max-width:100%;table-layout:fixed;width:100%}.leads-panel td,.leads-panel th{overflow:hidden}.leads-panel .col-name{overflow-wrap:anywhere;vertical-align:top;white-space:normal;width:22%;word-break:break-word}.leads-panel .col-name strong{display:block;font-weight:600;line-height:1.35}.leads-panel .col-name small{color:var(--muted);display:block;line-height:1.35;margin-top:2px}.leads-panel .col-product{text-overflow:ellipsis;white-space:nowrap;width:13%}.leads-panel .col-contact{text-overflow:ellipsis;white-space:nowrap;width:16%}.leads-panel .col-contact small{display:block;overflow:hidden;text-overflow:ellipsis}.leads-panel .col-status{white-space:nowrap;width:11%}.leads-panel .col-callback{text-overflow:ellipsis;white-space:nowrap;width:13%}.leads-panel .col-assigned{text-overflow:ellipsis;white-space:nowrap;width:12%}.leads-page-sales .leads-panel .col-name{width:24%}.leads-page-sales .leads-panel .col-product{width:13%}.leads-page-sales .leads-panel .col-contact{width:17%}.leads-page-sales .leads-panel .col-status{width:12%}.leads-page-sales .leads-panel .col-callback{width:14%}.leads-page-sales .leads-panel .col-callback .callback-set-btn{font-size:var(--fs-xs);max-width:100%;padding:4px 6px}.products-page .leads-panel .col-name{width:auto}.products-page .leads-panel .col-product{width:90px}.products-page .leads-panel .col-status{width:110px}.detail-item.full{grid-column:1/-1}.row-selected{background:color-mix(in srgb,var(--brand) 8%,#0000)}.action-menu-btn{height:32px;width:32px}.action-menu-dropdown{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);max-height:none;overflow:visible;padding:6px;position:fixed;width:200px;z-index:1000}.action-menu-item{align-items:center;background:#0000;border:0;border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font-size:var(--fs-sm);gap:8px;padding:8px 10px;text-align:left;width:100%}.action-menu-item:hover{background:var(--surface-2)}.action-menu-item.danger{color:var(--danger)}@media (max-width:960px){.filter-bar{grid-template-columns:1fr}}.row-muted{opacity:.65}.login-page{background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--brand) 18%,#0000),#0000 34%),var(--bg);display:grid;min-height:100vh;padding:20px;place-items:center;position:relative}.login-theme-toggle{position:absolute;right:16px;top:16px}.login-panel{grid-gap:18px;display:grid;gap:18px;padding:24px;width:min(100%,400px)}.login-brand{grid-gap:6px;display:grid;gap:6px;justify-items:center;text-align:center}.login-brand h1{font-size:var(--fs-xl);font-weight:600;margin:0}.login-brand p{color:var(--muted);font-size:var(--fs-sm);margin:0}.login-form{grid-gap:12px;display:grid;gap:12px}.mobile-menu,.sidebar-backdrop{display:none}@media (max-width:960px){.sidebar{transform:translateX(-105%);width:var(--sidebar-width)!important}.app-shell.mobile-open .sidebar{transform:translateX(0)}.app-shell.sidebar-collapsed .content-shell,.content-shell{margin-left:0}.sidebar-backdrop{background:#02061773;display:block;inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .2s ease;z-index:35}.app-shell.mobile-open .sidebar-backdrop{opacity:1;pointer-events:auto}.mobile-menu{display:inline-grid}.profile-trigger .chevron,.sidebar-toggle,.topbar-user-meta{display:none}.form-grid{grid-template-columns:1fr}.page-header,.panel-header.filters{align-items:stretch;flex-direction:column}}.dtp,.ss-select{position:relative;width:100%}.ss-hidden-required{height:0;opacity:0;pointer-events:none;position:absolute;width:0}.dtp-trigger,.ss-trigger{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font:inherit;gap:8px;min-height:38px;padding:0 10px;text-align:left;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.dtp-trigger.open,.dtp-trigger:hover,.ss-trigger.open,.ss-trigger:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line))}.dtp-trigger.open,.ss-trigger.open{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,#0000)}.dtp-trigger.placeholder .dtp-value,.ss-trigger.placeholder .ss-value{color:var(--muted)}.dtp-value,.ss-value{flex:1 1;font-size:var(--fs-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-actions{align-items:center;color:var(--muted);display:inline-flex;gap:4px}.dtp-clear,.ss-clear{border-radius:6px;color:var(--muted);display:grid;height:22px;place-items:center;width:22px}.dtp-clear:hover,.ss-clear:hover{background:var(--surface-2);color:var(--ink)}.ss-chevron{transition:transform .15s ease}.ss-trigger.open .ss-chevron{transform:rotate(180deg)}.dtp-pop,.ss-menu{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #0f172a24;display:flex;flex-direction:column;max-height:inherit;overflow:hidden}.ss-menu{min-height:0}.ss-search{align-items:center;border-bottom:1px solid var(--line);color:var(--muted);display:flex;gap:8px;padding:10px 12px}.ss-search input{background:#0000;border:0;color:var(--ink);font:inherit;outline:none;width:100%}.ss-list{flex:1 1;max-height:none;min-height:0;overflow:auto;overscroll-behavior:contain;padding:6px}.ss-trigger.multiple{align-items:flex-start;height:auto;min-height:38px;padding-bottom:7px;padding-top:7px}.ss-chips{display:flex;flex:1 1;flex-wrap:wrap;gap:6px;min-width:0}.ss-chip{align-items:center;background:var(--brand-soft);border-radius:6px;color:var(--brand-dark);display:inline-flex;font-size:var(--fs-xs);font-weight:550;gap:4px;max-width:100%;padding:2px 6px}.ss-chip-remove{cursor:pointer;display:grid;opacity:.8;place-items:center}.ss-chip-remove:hover{opacity:1}.ss-option{align-items:center;background:#0000;border:0;border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font:inherit;gap:8px;justify-content:space-between;padding:8px 10px;text-align:left;width:100%}.ss-option span{grid-gap:2px;display:grid;gap:2px;min-width:0}.ss-option strong{font-size:var(--fs-sm);font-weight:550}.ss-option small{color:var(--muted);font-size:var(--fs-xs)}.ss-option.active,.ss-option:hover{background:var(--surface-2)}.ss-option.active{color:var(--brand-dark)}.ss-empty{align-items:center;color:var(--muted);display:flex;font-size:var(--fs-sm);gap:8px;justify-content:center;padding:12px}.dtp.disabled .dtp-trigger,.ss-select.disabled .ss-trigger{cursor:not-allowed;opacity:.65}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.dtp-icon{color:var(--muted);display:grid;place-items:center}.dtp-pop{display:grid;grid-template-columns:1fr}.dtp-pop.mode-datetime{grid-template-columns:minmax(0,1.15fr) minmax(168px,.85fr)}.dtp-calendar{padding:12px}.dtp-cal-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.dtp-cal-head strong{font-size:var(--fs-sm)}.dtp-days,.dtp-weekdays{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.dtp-weekdays span{color:var(--muted);font-size:.68rem;font-weight:600;padding:4px 0;text-align:center}.dtp-day{background:#0000;border:0;border-radius:8px;color:var(--ink);cursor:pointer;font-size:var(--fs-sm);height:32px}.dtp-day:hover{background:var(--surface-2)}.dtp-day.outside{color:color-mix(in srgb,var(--muted) 55%,#0000)}.dtp-day.today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 45%,var(--line))}.dtp-day.selected{background:var(--brand);color:#fff}.dtp-time{grid-gap:10px;align-content:start;border-left:1px solid var(--line);display:grid;gap:10px;min-height:0;padding:12px 10px}.dtp-pop.mode-time .dtp-time{border-left:0}.dtp-time-label{align-items:center;color:var(--muted);display:flex;font-size:var(--fs-xs);font-weight:600;gap:6px}.dtp-time-preview{font-feature-settings:"tnum";color:var(--brand-dark);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-weight:700;margin-left:auto}.dtp-period{grid-gap:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;display:grid;gap:6px;grid-template-columns:1fr 1fr;padding:3px}.dtp-period button{background:#0000;border:0;border-radius:8px;color:var(--muted);cursor:pointer;font-size:var(--fs-sm);font-weight:650;padding:8px 0;transition:background .12s ease,color .12s ease}.dtp-period button:hover{color:var(--ink)}.dtp-period button.active{background:var(--surface);box-shadow:0 1px 3px #0f172a14;color:var(--brand-dark)}.dtp-time-cols{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;min-height:0}.dtp-time-col{grid-gap:2px;align-content:start;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;display:grid;gap:2px;max-height:196px;overflow:auto;overscroll-behavior:contain;padding:4px}.dtp-col-caption{background:var(--surface-2);color:var(--muted);display:block;font-size:.65rem;font-weight:700;letter-spacing:.04em;padding:4px 0 6px;position:sticky;text-align:center;text-transform:uppercase;top:0;z-index:1}.dtp-time-col button{font-feature-settings:"tnum";background:#0000;border:0;border-radius:7px;color:var(--ink);cursor:pointer;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-weight:550;padding:7px 0}.dtp-time-col button:hover{background:color-mix(in srgb,var(--brand) 10%,#0000)}.dtp-time-col button.active{background:var(--brand);color:#fff}.dtp-footer{background:var(--surface-2);border-top:1px solid var(--line);display:flex;gap:8px;grid-column:1/-1;justify-content:flex-end;padding:10px 12px}.callback-cell{background:#0000;border:0;color:inherit;font-size:var(--fs-sm);font:inherit;font-family:inherit;padding:0;text-align:left;white-space:nowrap}.callback-cell.overdue{color:var(--danger);font-weight:550}.callback-cell.upcoming,.callback-set-btn{color:var(--brand-dark)}.callback-set-btn{background:color-mix(in srgb,var(--brand) 8%,var(--surface));border-color:color-mix(in srgb,var(--brand) 35%,var(--line));gap:5px;white-space:nowrap}.callback-set-btn:hover{background:color-mix(in srgb,var(--brand) 14%,var(--surface))}.file-dropzone{align-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 8%,var(--surface)),var(--surface));border:1.5px dashed color-mix(in srgb,var(--brand) 40%,var(--line));border-radius:14px;cursor:pointer;display:flex;gap:14px;min-height:92px;padding:16px 18px;position:relative;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;width:100%}.file-dropzone:hover{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 14%,#0000)}.file-dropzone.has-file{background:linear-gradient(145deg,color-mix(in srgb,var(--success) 10%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--success) 45%,var(--line));border-style:solid}.file-dropzone.invalid{background:linear-gradient(145deg,color-mix(in srgb,var(--danger) 8%,var(--surface)),var(--surface));border-color:var(--danger)}.file-dropzone-input{cursor:pointer;height:100%;inset:0;opacity:0;position:absolute;width:100%}.file-dropzone-icon{background:var(--brand-soft);border-radius:12px;color:var(--brand-dark);display:grid;flex-shrink:0;height:46px;place-items:center;width:46px}.file-dropzone.has-file .file-dropzone-icon{background:var(--success-soft);color:var(--success)}.file-dropzone-copy{grid-gap:4px;display:grid;gap:4px;min-width:0}.file-dropzone-copy strong{color:var(--ink);font-size:var(--fs-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-dropzone-copy small{align-items:center;color:var(--muted);display:inline-flex;font-size:var(--fs-xs);gap:5px}.chart-body-calendar{min-height:0}.appt-calendar{grid-gap:12px;display:grid;gap:12px}.appt-cal-toolbar{align-items:center;display:flex;gap:8px;justify-content:space-between}.appt-cal-heading{align-items:center;display:flex;gap:10px}.appt-cal-heading strong{font-size:var(--fs-sm)}.appt-cal-grid,.appt-cal-weekdays{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,minmax(0,1fr))}.appt-cal-weekdays span{color:var(--muted);font-size:.68rem;font-weight:700;padding:2px 0;text-align:center}.appt-cal-day{grid-gap:4px;align-content:space-between;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;color:var(--ink);cursor:pointer;display:grid;gap:4px;min-height:52px;padding:6px;text-align:left;transition:border-color .12s ease,background .12s ease,transform .12s ease}.appt-cal-day:hover{border-color:color-mix(in srgb,var(--brand) 40%,var(--line));transform:translateY(-1px)}.appt-cal-day.is-outside{opacity:.55}.appt-cal-day.is-today{background:color-mix(in srgb,var(--brand) 8%,var(--surface));border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 18%,#0000)}.appt-cal-day.is-selected{background:color-mix(in srgb,var(--info) 10%,var(--surface));border-color:color-mix(in srgb,var(--info) 45%,var(--line))}.appt-cal-date{font-size:var(--fs-xs);font-weight:700}.appt-cal-dots{display:flex;flex-wrap:wrap;gap:3px}.appt-cal-dots .dot{background:var(--brand);border-radius:50%;height:6px;width:6px}.appt-cal-dots .dot.status-completed{background:var(--success)}.appt-cal-dots .dot.status-cancelled,.appt-cal-dots .dot.status-no_show{background:var(--danger)}.appt-cal-list{grid-gap:8px;border-top:1px solid var(--line);display:grid;gap:8px;padding-top:10px}.appt-cal-list-head{align-items:center;display:flex;font-size:var(--fs-sm);gap:8px;justify-content:space-between}.appt-cal-list-head span{color:var(--muted);font-size:var(--fs-xs)}.appt-cal-empty{color:var(--muted);font-size:var(--fs-sm);margin:0}.appt-cal-list ul{grid-gap:8px;display:grid;gap:8px;list-style:none;margin:0;max-height:160px;overflow:auto;padding:0}.appt-cal-list li{align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;display:flex;gap:10px;justify-content:space-between;padding:8px 10px}.appt-cal-list li strong{display:block;font-size:var(--fs-sm)}.appt-cal-list li small{color:var(--muted);font-size:var(--fs-xs)}@media (max-width:520px){.dtp-pop.mode-datetime{grid-template-columns:1fr;width:min(92vw,320px)!important}.dtp-time{border-left:0;border-top:1px solid var(--line)}}
/*# sourceMappingURL=main.6c9e5e88.css.map*/