/* Shared authenticated CRM design system. No public/authentication page styling. */
#app{--bg:#f3f6fa;--surface:#fff;--surface2:#f7f9fc;--text:#182b45;--muted:#697b90;--border:#e1e8f0;--border2:#d4deea;--accent:#2475ec;--danger:#c93c4b;--success:#15926b;--ui-radius:8px;font-family:'DM Sans',system-ui,sans-serif;font-size:13px;color:var(--text)}
#app .main{background:var(--bg);padding:20px 24px;min-width:0;max-width:calc(100% - 232px);margin-left:232px;box-sizing:border-box;width:calc(100% - 232px)}
#app .sidebar{width:232px;background:#142a3b;border-color:#203c50;box-shadow:none}#app .sidebar-logo{font-family:'DM Sans',system-ui,sans-serif!important;font-size:18px;padding:19px 18px 16px;color:#fff;border-color:#294154}#app .sidebar-logo small{font-size:10px;font-weight:500;letter-spacing:.03em;color:#99b1c4}#app .sidebar-logo span{color:#70b0ff}#app .nav{padding:6px 10px 12px}#app .nav-section-label{font-size:9px;letter-spacing:.12em;color:#829fb5;margin:16px 10px 7px;font-weight:700}#app .nav-item{font-family:inherit;font-size:12px;font-weight:500;padding:8px 10px;min-height:34px;box-sizing:border-box;border-radius:6px;color:#c4d4e0;gap:10px;margin:1px 0}#app .nav-item:hover{background:#213f55;color:#fff}#app .nav-item.active{background:#2475ec;color:#fff;border:0;padding-left:10px;font-weight:600}#app .nav-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:none}#app .nav-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#app .sidebar-footer{border-color:#294154;padding:10px}#app .howto-sidebar-btn{background:#1b3549;border-color:#294154;font-size:11px;color:#c4d4e0}#app .logout-btn{color:#9bb1c3}
#app .page-header{padding:0 0 14px;margin-bottom:16px;border-bottom:1px solid var(--border);gap:12px}#app .page-title,#app h2,#app h3,#app .stat-value,#app .modal-title{font-family:'DM Sans',system-ui,sans-serif!important;letter-spacing:-.02em}#app .page-title{font-size:21px;font-weight:700;color:#182b45}#app .page-sub{font-size:12px;margin-top:4px;color:var(--muted)}#app .page-actions{flex-wrap:wrap;gap:7px;min-width:0}
#app .btn{font-family:inherit;font-size:12px;font-weight:600;border-radius:6px;min-height:34px;padding:7px 12px;box-shadow:none;letter-spacing:0;white-space:normal}#app .btn-sm{min-height:30px;padding:5px 10px;font-size:11px}#app .btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}#app .btn-primary:hover{background:#1763ce}#app .btn-outline{background:#fff;color:#405672;border:1px solid var(--border2)}#app .btn-outline:hover{background:#f1f6fc;border-color:#abc5e9}#app .btn-danger{background:#fff2f3;color:#b33040;border:1px solid #f2ccd2}#app .btn:disabled{opacity:.48;cursor:not-allowed}#app .btn:focus-visible,#app a:focus-visible{outline:2px solid #2475ec;outline-offset:2px}
#app input:not([type=checkbox]):not([type=radio]),#app select,#app textarea{border-radius:6px;border-color:var(--border2);background:#fff;font-family:inherit;font-size:12px;padding:8px 10px;box-sizing:border-box;max-width:100%}#app input:focus,#app select:focus,#app textarea:focus{border-color:#71a8f2;box-shadow:0 0 0 3px #2475ec12}#app input[type=checkbox]{accent-color:#2475ec;width:14px;height:14px;flex:none}#app label{font-size:11px;color:#60748d;font-weight:600;letter-spacing:.02em}#app .form-group{margin-bottom:14px}
#app .card,#app .stat-card{border:1px solid var(--border);border-radius:var(--ui-radius);background:#fff;box-shadow:0 1px 2px #17345104;padding:16px}#app .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}#app .stat-card{position:relative;min-width:0;border-top:3px solid #dfeaf8;padding:15px 16px}#app .stat-card.accent{border-top-color:#2475ec}#app .stat-card.success{border-top-color:#27a67c}#app .stat-card.warning{border-top-color:#e7b252}#app .stat-value{font-size:27px;line-height:1.2;font-weight:700;color:#182b45;margin:0 0 7px}#app .stat-label{font-size:11px;font-weight:500;color:var(--muted);letter-spacing:0;text-transform:none}
#app table{border-collapse:collapse;width:100%;font-size:12px}#app th{font-size:10px;text-transform:uppercase;font-weight:600;letter-spacing:.06em;color:#71859c;background:#f7faff;border-bottom:1px solid #dce6f0;padding:11px 12px;text-align:left}#app td{padding:11px 12px;border-bottom:1px solid #edf1f6;vertical-align:middle;overflow-wrap:anywhere;color:#314760}#app tbody tr:hover{background:#f7faff}#app tbody tr:last-child td{border-bottom:0}#app table .btn{min-height:26px;font-size:10px;padding:3px 8px}#app .responsive-table-scroll{min-width:0;max-width:100%;overflow:auto;border-radius:6px;overscroll-behavior-x:contain}#app .badge{font-size:10px;font-weight:600;letter-spacing:0;border-radius:20px;padding:4px 8px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}#app .badge-draft{background:#edf4ff;color:#3575ba}#app .badge-active,#app .badge-completed{background:#e9f7ef;color:#208657}#app .badge-paused{background:#fff7e6;color:#a16a15}#app .contact-link{color:#2475ec;text-decoration:none;font-weight:500}
#app .crm-hero{grid-template-columns:minmax(0,1fr) auto;padding:16px 18px;margin-bottom:16px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:none;gap:18px}#app .crm-hero h2{font-size:18px;margin-bottom:4px}#app .crm-hero p{font-size:12px;max-width:560px}#app .crm-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}#app .crm-action{padding:9px 12px;background:#f8fbff;border:1px solid #e2ebf6;border-radius:6px;min-width:0}#app .crm-action strong{font-size:11px}#app .crm-action span{display:none}#app .dashboard-grid{grid-template-columns:minmax(0,1.6fr) minmax(240px,.7fr);gap:16px}#app .mini-item{padding:10px 0;font-size:12px}#app .empty-state{padding:28px 16px;font-size:12px}#app .empty-icon{font-size:24px;margin-bottom:10px}
#app .ui-contact-table{table-layout:fixed;min-width:840px}#app .ui-contact-table th:first-child{width:34px}#app .ui-contact-table th:nth-child(2){width:18%}#app .ui-contact-table th:nth-child(3){width:15%}#app .ui-contact-table th:nth-child(4){width:22%}#app .ui-contact-table th:nth-child(5){width:12%}#app .ui-contact-table th:last-child{width:86px}#app .ui-contact-name{display:flex;align-items:center;gap:9px;min-width:0}#app .ui-avatar{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:50%;background:#eaf2fe;color:#3670b2;font-size:10px;font-weight:700}#app .ui-contact-name a{color:#243c58;font-weight:600}#app .ui-contact-table td{font-size:11px;padding:10px 8px}#app .ui-contact-table td .badge{display:inline-flex;margin:2px 2px 2px 0}#app .ui-row-more{position:relative;display:inline-block}#app .ui-row-more summary{list-style:none;cursor:pointer}#app .ui-row-more[open]{display:block}#app .ui-row-more>div{font-size:10px;padding:8px;border:1px solid var(--border);border-radius:6px;background:#f8fbff;overflow-wrap:anywhere;min-width:0}#app .ui-row-more p{margin:4px 0 8px}#app #contact-pagination{border-top:1px solid var(--border);margin-top:4px}#app #contact-pagination>div,#app #contact-pagination>div>div{flex-wrap:wrap;gap:7px!important}#app #page-contacts>.card:has(#contactSearch){padding:12px 14px;margin-bottom:12px}#app #page-contacts>.card:has(#contactsTable){padding:0 12px 8px}#app #page-contacts #contactSearch{min-width:0}#app #page-contacts #bulk-bar{border-radius:6px;font-size:12px}
#app .ui-chart-card{margin-bottom:16px}#app .ui-chart-card h3{font-size:13px;font-weight:600;margin:0 0 5px}#app .ui-chart-card p{font-size:11px;color:var(--muted);margin:0 0 14px}#app .ui-chart{display:grid;gap:11px}#app .ui-chart-row{display:grid;grid-template-columns:minmax(100px,180px) minmax(0,1fr) 70px;align-items:center;gap:12px;font-size:11px}#app .ui-chart-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#app .ui-chart-track{height:8px;border-radius:3px;background:#edf3fa;overflow:hidden}#app .ui-chart-fill{height:100%;background:#4f98ec;border-radius:3px}#app .ui-chart-row:nth-child(2) .ui-chart-fill{background:#44b794}#app .ui-chart-row:nth-child(3) .ui-chart-fill{background:#8e91d0}#app .ui-chart-value{text-align:right;font-variant-numeric:tabular-nums;color:#415b78}#app #page-analytics>.card{margin-top:16px!important}
#app #pipeline-board{gap:12px;padding-bottom:12px;max-width:100%;min-width:0;overflow-x:auto}#app .pipeline-stage{flex-basis:280px;min-width:260px;background:#edf2f8;border-color:#e1e8f1;border-radius:8px;box-shadow:none}#app .pipeline-stage-header{font-family:inherit!important;font-size:12px;padding:13px 12px;border-bottom:1px solid #dfe6ef}#app .pipeline-card{background:#fff!important;padding:12px!important;border-color:#e0e7f0!important;border-radius:6px!important;box-shadow:0 1px 2px #17345105}#app .pipeline-card>div:first-child{font-size:12px!important;color:#243d5a}#app .pipeline-contacts{padding:10px}#app .pipeline-total{background:#fff;font-size:10px}#app .pipeline-hint,#app .pipeline-progress{font-size:11px;color:var(--muted)}#app #pipeline-stage-nav{gap:6px;flex-wrap:wrap}#app #pipeline-stage-nav .btn{font-size:11px;padding:5px 9px}
#app .workspace-utility-bar{margin-bottom:12px;min-height:34px}#app #page-conversations .page-header{padding-bottom:10px;margin-bottom:12px}#app #conv-header{font-family:inherit}#app #page-conversations .conversation-shell{border-color:var(--border);border-radius:8px}#app .conversation-record-link{transition:background .12s}#app .conversation-record-link:hover{background:#f3f8ff!important}#app .conversation-record-link strong{font-size:12px;color:#253d5a}#app .sms-live{padding-top:14px}#app .sms-live .sms-progress-grid{gap:10px}#app .sms-live .sms-progress-grid>div{background:#f6f9fd;border:1px solid #e7eef7;border-radius:6px;padding:10px 12px}#app .sms-progress-grid strong{font-size:22px}#app .sms-live td{vertical-align:top}#app .sms-live th{padding:10px 8px}#app .sms-campaign-heading h3{font-size:17px}#app .sms-current-panel{background:#fbfcfe;border-color:var(--border)}
#app .page,#app .card,#app section,#app .form-grid>*{min-width:0;box-sizing:border-box}#app .page-header .btn{flex-shrink:0}#app .page-actions,#app .sms-live-toolbar,#app .flex{min-width:0}#app .modal{border-radius:10px;box-shadow:0 20px 60px #172d451f}
@media(max-width:1150px){#app .crm-hero{grid-template-columns:1fr}#app .crm-actions{justify-content:flex-start}#app .dashboard-grid{grid-template-columns:minmax(0,1fr)}#app .ui-contact-table{min-width:820px}}
@media(max-width:1000px){#app .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){#app .main{margin-left:0;max-width:100%;width:100%;padding:14px 12px}#app .sidebar{width:232px}#app .nav-item{min-height:38px}#app .page-header{gap:10px;padding-bottom:12px}#app .page-title{font-size:19px}#app .page-actions{width:100%;gap:6px}#app .btn{min-height:38px}#app .card,#app .stat-card{padding:13px}#app .stat-value{font-size:23px}#app .crm-hero{padding:13px}#app .ui-chart-row{grid-template-columns:minmax(75px,115px) minmax(0,1fr) 45px;gap:8px}#app #contact-pagination>div>div{margin-left:0!important}#app .ui-contact-table{min-width:800px}#app .app-topbar-logo{font-family:inherit;font-size:16px}#app .sms-live .btn{min-height:34px}#app .sms-live td,#app .sms-live th{font-size:11px}#app #page-contacts #contactStatus{max-width:130px}#app #page-conversations .page-header{margin-bottom:8px}}
@media(max-width:359px){#app .stats-grid{grid-template-columns:minmax(0,1fr)}#app .crm-action{padding:8px 10px}}
#app .workspace-utility-bar #nexreach-ai-launch{position:static!important;inset:auto!important;z-index:auto!important;font:600 11px 'DM Sans',system-ui,sans-serif;padding:7px 12px;border-radius:6px;box-shadow:none}
#app .crm-action{min-height:0}#app .sidebar-logo small{font-family:inherit}
