@import url(https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap);:root{--navy:#0b2c4a;--navy-2:#0f3a60;--navy-3:#1a4a72;--gold:#e8c547;--gold-dim:#c9a93a;--teal:#44bba4;--red:#e84855;--purple:#a23b72;--blue:#2e86ab;--bg:#f4f7fb;--surface:#fff;--border:#e1e8f0;--text:#1a2940;--text-2:#5a7a9c;--text-3:#8ca8c4;--sidebar-w:256px;--radius:12px;--shadow:0 2px 12px #0b2c4a14;--shadow-lg:0 8px 32px #0b2c4a24}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#f4f7fb;background:var(--bg);color:#1a2940;color:var(--text);font-family:DM Sans,sans-serif;font-size:14px;line-height:1.5}button{cursor:pointer}button,input{font-family:inherit}a{color:inherit;text-decoration:none}.app-layout{display:flex;min-height:100vh}.sidebar{background:#0b2c4a;background:var(--navy);bottom:0;display:flex;flex-direction:column;left:0;overflow-y:auto;position:fixed;top:0;transform:translateX(0);transition:transform .25s ease;width:256px;width:var(--sidebar-w);z-index:100}.sidebar-backdrop{background:#0006;display:none;inset:0;position:fixed;z-index:99}.sidebar-logo{align-items:center;border-bottom:1px solid #ffffff14;display:flex;gap:12px;padding:24px 20px}.sidebar-brand{color:#fff;font-size:16px;font-weight:700;letter-spacing:.02em}.sidebar-sub{color:#8ca8c4;color:var(--text-3);font-size:11px}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:4px;padding:16px 12px}.nav-link{align-items:center;border-radius:8px;color:#fff9;display:flex;font-size:13.5px;font-weight:500;gap:10px;padding:10px 14px;transition:all .15s}.nav-link:hover{background:#ffffff12;color:#fff}.nav-link--active{background:#e8c54726;color:#e8c547;color:var(--gold)}.nav-icon{font-size:16px;opacity:.85}.sidebar-user{border-top:1px solid #ffffff14;padding:20px}.user-email{color:#ffffff80;font-size:12px;margin-bottom:4px;word-break:break-all}.user-role{font-size:11px;font-weight:700;letter-spacing:.1em;margin-bottom:12px}.btn-logout{background:#e8c5471f;border:1px solid #e8c5474d;border-radius:7px;color:#e8c547;color:var(--gold);font-size:13px;font-weight:600;padding:7px 14px;transition:all .15s;width:100%}.btn-logout:hover{background:#e8c54733}.app-main{display:flex;flex:1 1;flex-direction:column;margin-left:256px;margin-left:var(--sidebar-w);min-height:100vh}.topbar{align-items:center;background:#fff;background:var(--surface);border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);box-shadow:0 2px 12px #0b2c4a14;box-shadow:var(--shadow);display:flex;gap:16px;height:60px;padding:0 28px;position:sticky;top:0;z-index:50}.menu-btn{background:none;border:none;color:#5a7a9c;color:var(--text-2);display:none;font-size:20px;padding:4px 6px}.topbar-title{color:#0b2c4a;color:var(--navy);flex:1 1;font-size:15px;font-weight:700}.topbar-badge{background:#44bba41a;border:1px solid #44bba44d;border-radius:20px;color:#44bba4;color:var(--teal);font-size:11px;font-weight:600;letter-spacing:.04em;padding:4px 10px}.app-content{flex:1 1;max-width:none;padding:32px 24px;width:100%}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:28px}.page-title{color:#0b2c4a;color:var(--navy);font-size:26px;font-weight:700;letter-spacing:-.02em}.page-desc{color:#5a7a9c;color:var(--text-2);font-size:14px;margin-top:4px}.page-badge{animation:pulse 2s infinite;background:#e84855;background:var(--red);border-radius:20px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;padding:5px 12px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.section{margin-bottom:36px}.section-title{font-size:13px;font-weight:700;letter-spacing:.1em;margin-bottom:14px;text-transform:uppercase}.page-loading,.section-title{color:#5a7a9c;color:var(--text-2)}.page-loading{align-items:center;display:flex;font-size:15px;gap:12px;justify-content:center;min-height:60vh}.page-error{color:#e84855;color:var(--red);font-size:15px;font-weight:500;padding:48px 32px}.stat-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.stat-card{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 12px #0b2c4a14;box-shadow:var(--shadow);overflow:hidden;padding:22px 20px;position:relative;transition:transform .15s,box-shadow .15s}.stat-card:before{background:#e1e8f0;background:var(--border);content:"";height:3px;left:0;position:absolute;right:0;top:0}.stat-card--accent:before{background:linear-gradient(90deg,#0b2c4a,#2e86ab);background:linear-gradient(90deg,var(--navy),var(--blue))}.stat-card--clickable:hover{border-color:#1a4a72;border-color:var(--navy-3);box-shadow:0 8px 32px #0b2c4a24;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stat-value{font-feature-settings:"tnum";color:#0b2c4a;color:var(--navy);font-size:32px;font-variant-numeric:tabular-nums;font-weight:700;line-height:1;margin-bottom:8px}.stat-label{color:#5a7a9c;color:var(--text-2);font-size:13px;font-weight:500}.stat-sub{color:#8ca8c4;color:var(--text-3);font-size:11px;margin-top:4px}.stat-cta{color:#2e86ab;color:var(--blue);font-size:12px;font-weight:600;margin-top:8px}.chart-card{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 12px #0b2c4a14;box-shadow:var(--shadow);padding:24px}.chart-title{color:#0b2c4a;color:var(--navy);font-size:14px;font-weight:700;margin-bottom:16px}.pie-legend-table{display:flex;flex-direction:column;gap:2px;margin-top:12px}.pie-legend-row{align-items:center;border-radius:7px;cursor:pointer;display:flex;gap:10px;padding:8px 10px;transition:background .12s}.pie-legend-row:hover{background:#f4f7fb;background:var(--bg)}.pie-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.pie-name{color:#1a2940;color:var(--text);flex:1 1;font-size:13px}.pie-count{font-feature-settings:"tnum";color:#0b2c4a;color:var(--navy);font-size:13px;font-variant-numeric:tabular-nums;font-weight:700}.pie-arrow{color:#8ca8c4;color:var(--text-3);font-size:12px}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.filter-pill{border:1px solid #e1e8f0;border:1px solid var(--border);display:flex}.filter-pill:hover{border-color:#1a4a72;border-color:var(--navy-3);color:#0b2c4a;color:var(--navy)}.pill-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.table-card{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 12px #0b2c4a14;box-shadow:var(--shadow);overflow:hidden}.table-toolbar{align-items:center;border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);display:flex;gap:16px;padding:16px 20px}.search-input{background:#f4f7fb;background:var(--bg);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:8px;color:#1a2940;color:var(--text);flex:1 1;font-size:13.5px;max-width:400px;outline:none;padding:9px 14px;transition:border-color .15s}.search-input:focus{border-color:#1a4a72;border-color:var(--navy-3)}.table-meta{color:#8ca8c4;color:var(--text-3);font-size:12px;margin-left:auto}.table-loading{display:flex;justify-content:center;padding:60px 0}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;table-layout:auto;width:100%}.data-table td,.data-table th{word-wrap:break-word;overflow-wrap:break-word;padding:12px 15px;white-space:normal}.data-table thead tr{background:#f4f7fb;background:var(--bg);border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border)}.data-table th{color:#5a7a9c;color:var(--text-2);font-size:11.5px;font-weight:700;letter-spacing:.07em;padding:11px 15px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{word-wrap:break-word;border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);color:#1a2940;color:var(--text);font-size:13.5px;overflow-wrap:break-word;padding:12px 15px;vertical-align:middle;white-space:normal}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:#0f3c6008}.mono{font-family:DM Mono,monospace;font-size:12.5px;word-break:break-all}.date-cell{color:#5a7a9c;color:var(--text-2);font-size:12.5px}.status-badge{border-radius:20px;font-size:11.5px;font-weight:600;padding:3px 10px;white-space:nowrap}.badge-yes{background:#44bba41f;border:1px solid #44bba44d;border-radius:20px;color:#2a9981}.badge-no,.badge-yes{display:inline-block;font-size:11.5px;font-weight:700;padding:3px 10px}.badge-no{background:#e8485514;border:1px solid #e8485533;border-radius:20px;color:#c73444}.pagination{align-items:center;border-top:1px solid #e1e8f0;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;padding:14px 20px}.page-btn{background:#f4f7fb;background:var(--bg);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:7px;color:#5a7a9c;color:var(--text-2);font-size:13px;font-weight:600;padding:7px 14px;transition:all .15s}.page-btn:hover:not(:disabled){border-color:#1a4a72;border-color:var(--navy-3);color:#0b2c4a;color:var(--navy)}.page-btn:disabled{cursor:default;opacity:.4}.page-info{color:#5a7a9c;color:var(--text-2);font-size:12.5px;margin:5px 0}.spinner{animation:spin .7s linear infinite;border:3px solid #e1e8f0;border-top-color:#0b2c4a;border:3px solid var(--border);border-radius:50%;border-top-color:var(--navy);height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b2c4a80;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:200}.modal{background:#fff;background:var(--surface);border-radius:16px;box-shadow:0 8px 32px #0b2c4a24;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:85vh;max-width:680px;overflow:hidden;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:#0b2c4a;color:var(--navy);font-size:16px;font-weight:700}.modal-close{background:#f4f7fb;background:var(--bg);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:8px;color:#5a7a9c;color:var(--text-2);font-size:15px;padding:5px 10px;transition:all .15s}.modal-close:hover{background:#e84855;background:var(--red);border-color:#e84855;border-color:var(--red);color:#fff}.modal-body{display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 24px}.gstin-card{border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:10px;flex-shrink:0;overflow:hidden}.gstin-card-header{align-items:center;background:#f4f7fb;background:var(--bg);border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 16px}.gstin-num{font-size:14px;font-weight:600}.gstin-fields{grid-gap:0;display:grid;gap:0;grid-template-columns:1fr 1fr;padding:4px 0}.gstin-fields>div{border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);padding:9px 16px}.gstin-fields label{color:#8ca8c4;color:var(--text-3);display:block;font-size:11px;font-weight:700;letter-spacing:.07em;margin-bottom:3px;text-transform:uppercase}.gstin-fields span{color:#1a2940;color:var(--text);display:block;font-size:13.5px;line-height:1.4;word-break:break-word}.gstin-address{padding:12px 16px}.gstin-address label{color:#8ca8c4;color:var(--text-3);display:block;font-size:11px;font-weight:700;letter-spacing:.07em;margin-bottom:4px;text-transform:uppercase}.gstin-address p{color:#5a7a9c;color:var(--text-2);font-size:13px;line-height:1.6}.login-page{background:linear-gradient(135deg,#0b2c4a,#1a3a5c 50%,#0d2235);background:linear-gradient(135deg,var(--navy) 0,#1a3a5c 50%,#0d2235 100%);padding:24px}.login-card{border-radius:20px;box-shadow:0 24px 64px #0000004d;max-width:420px;padding:44px 40px}.login-logo{align-items:center;display:flex;gap:12px;margin-bottom:32px}.login-brand{font-size:20px;letter-spacing:-.02em}.login-brand,.login-title{color:#0b2c4a;color:var(--navy);font-weight:800}.login-title{font-size:28px;margin-bottom:8px}.login-sub{color:#5a7a9c;color:var(--text-2);font-size:14px;line-height:1.6;margin-bottom:28px}.login-form{display:flex;flex-direction:column;gap:12px}.field-label{color:#5a7a9c;color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.field-input{border:1.5px solid #e1e8f0;border:1.5px solid var(--border);border-radius:10px;color:#1a2940;color:var(--text);font-size:14px;outline:none;padding:12px 16px;transition:border-color .15s}.field-input:focus{border-color:#0b2c4a;border-color:var(--navy)}.login-error{background:#e8485512;color:var(--red);font-size:13px;font-weight:600;padding:10px 14px}.btn-primary{background:#0b2c4a;background:var(--navy);border:none;border-radius:10px;color:#fff;font-size:15px;font-weight:700;margin-top:6px;padding:13px 20px;transition:background .15s}.btn-primary:hover:not(:disabled){background:#0f3a60;background:var(--navy-2)}.btn-primary:disabled{cursor:default;opacity:.6}.login-note{color:#8ca8c4;color:var(--text-3);font-size:12px;line-height:1.6;margin-top:20px;text-align:center}@media (max-width:992px){.app-main{margin-left:0}.sidebar{transform:translateX(-256px);transform:translateX(calc(var(--sidebar-w)*-1))}.sidebar--open{transform:translateX(0)}.sidebar-backdrop{display:block}.menu-btn{display:flex}.page-header{align-items:flex-start;flex-direction:column;gap:1rem}.filter-row{align-items:stretch;flex-direction:column}.search-input{max-width:100%}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width:768px){.sidebar{transform:translateX(-256px);transform:translateX(calc(var(--sidebar-w)*-1))}.sidebar--open{transform:translateX(0)}.sidebar-backdrop{display:block}.app-main{margin-left:0}.menu-btn{align-items:center;display:flex}.app-content{padding:20px 16px}.stat-grid{grid-template-columns:1fr 1fr}.detail-grid,.gstin-fields{grid-template-columns:1fr}.date-filter{align-items:flex-start;flex-direction:column}.page-title{font-size:22px}.pagination{justify-content:center}}@media (max-width:480px){.stat-grid{grid-template-columns:1fr}.topbar{padding:0 16px}.app-content{padding:16px 12px}.login-card{padding:32px 24px}}.filter-section{border-radius:var(--radius);box-shadow:0 2px 12px #0b2c4a14;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;margin-bottom:12px;padding:16px 20px}.filter-section--compact{padding:12px 20px}.filter-row{gap:10px}.date-filter{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.date-filter-label{color:#5a7a9c;color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.date-filter-group{align-items:center;display:flex;gap:6px}.date-group-prefix{color:#8ca8c4;color:var(--text-3);font-size:12px;font-weight:600}.date-select{border-radius:7px;font-family:inherit;font-size:12.5px;outline:none;padding:6px 10px;transition:border-color .15s}.date-select:focus{border-color:#1a4a72;border-color:var(--navy-3)}.date-clear{background:#e8485514;border:1px solid #e8485533;border-radius:7px;color:#e84855;color:var(--red);cursor:pointer;font-size:12px;font-weight:600;padding:5px 10px;transition:all .15s}.date-clear:hover{background:#e8485526}.export-bar{gap:12px;justify-content:flex-end;margin-bottom:4px}.export-count{color:#8ca8c4;color:var(--text-3);font-size:12.5px;margin-right:auto}.export-dropdown{position:relative}.btn-export{background:#0b2c4a;background:var(--navy);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:700;padding:8px 16px;transition:background .15s}.btn-export:hover{background:#0f3a60;background:var(--navy-2)}.export-menu{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0b2c4a24;box-shadow:var(--shadow-lg);min-width:140px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:60}.export-menu button{background:none;border:none;color:#1a2940;color:var(--text);cursor:pointer;display:block;font-size:13px;font-weight:600;padding:11px 16px;text-align:left;transition:background .12s;width:100%}.export-menu button:hover{background:#f4f7fb;background:var(--bg)}.export-menu button+button{border-top:1px solid #e1e8f0;border-top:1px solid var(--border)}.search-input--lg{flex:1 1;max-width:480px}.contacted-filter{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.filter-pill--sm{font-size:12px;padding:5px 11px}.role-notice{background:#2e86ab14;border:1px solid #2e86ab33;border-radius:8px;font-size:12.5px;font-weight:500;margin-bottom:8px;padding:10px 16px}.cin-link:hover,.role-notice{color:#2e86ab;color:var(--blue)}.cin-link:hover,.company-link:hover{text-decoration:underline}.company-link:hover{color:#0b2c4a;color:var(--navy);font-weight:600}.contact-cell{font-size:12.5px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contacted-cell{display:flex;flex-direction:column;gap:2px}.contacted-by{color:#8ca8c4;color:var(--text-3);font-size:11px}.inc-badge{border-radius:5px;display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;white-space:nowrap}.inc-badge--success{background:#44bba41f;border:1px solid #44bba44d;color:#2a9981}.inc-badge--warn{background:#e8c54726;border:1px solid #e8c54766;color:#9a7e00}.inc-badge--fail{background:#e8485514;border:1px solid #e8485533;color:#c73444}.btn-contact{background:#0b2c4a;background:var(--navy);border:none;border-radius:7px;color:#fff;cursor:pointer;font-size:12px;font-weight:700;padding:5px 12px;transition:background .15s;white-space:nowrap}.btn-contact:hover{background:#0f3a60;background:var(--navy-2)}.btn-contacted-done{background:#44bba41a;border:1px solid #44bba44d;border-radius:7px;color:#2a9981;cursor:pointer;font-size:12px;font-weight:700;padding:5px 12px;transition:all .15s;white-space:nowrap}.btn-contacted-done:hover{background:#44bba433}.page-numbers{display:flex;gap:4px}.page-btn--num{min-width:34px;text-align:center}.page-btn--current{background:#0b2c4a;background:var(--navy);border-color:#0b2c4a;border-color:var(--navy);color:#fff}.modal--sm{max-width:440px}.modal-company-name{color:#0b2c4a;color:var(--navy);font-size:15px;margin-bottom:4px}.modal-cin{color:#8ca8c4;color:var(--text-3);font-size:12.5px;margin-bottom:12px}.contact-existing{margin-bottom:4px}.modal-actions{gap:10px;margin-top:16px}.btn-danger{background:#e8485514;border:1px solid #e848554d;border-radius:9px;color:#e84855;color:var(--red);cursor:pointer;font-size:13.5px;font-weight:700;padding:10px 18px;transition:all .15s}.btn-danger:hover{background:#e8485526}.btn-back{background:none;border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:8px;color:#5a7a9c;color:var(--text-2);cursor:pointer;font-size:13px;font-weight:600;margin-bottom:20px;padding:7px 14px;transition:all .15s}.btn-back:hover{border-color:#0b2c4a;border-color:var(--navy);color:#0b2c4a;color:var(--navy)}.detail-header{margin-bottom:28px}.detail-meta-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.detail-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.detail-card{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 12px #0b2c4a14;box-shadow:var(--shadow);overflow:hidden}.detail-fields{display:flex;flex-direction:column}.detail-field{border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);gap:3px;padding:11px 16px}.detail-field:last-child{border-bottom:none}.detail-field--span{grid-column:1/-1}.detail-field label{color:#8ca8c4;color:var(--text-3);font-size:10.5px;letter-spacing:.08em}.detail-field span{font-size:13.5px}.gstin-list{display:flex;flex-direction:column;gap:12px}.empty-state{border-radius:12px;border-radius:var(--radius);color:#8ca8c4;color:var(--text-3);font-size:14px;padding:28px}.contact-history{gap:10px}.contact-entry{padding:14px 18px}.contact-entry-header{display:flex;justify-content:space-between;margin-bottom:6px}.contact-by{color:#0b2c4a;color:var(--navy);font-size:13px}.contact-at{color:#8ca8c4;color:var(--text-3);font-size:12px}.contact-note{color:#5a7a9c;color:var(--text-2);font-size:13.5px;line-height:1.6}.sidebar-role-card{align-items:flex-start;background:#ffffff0d;border-radius:10px;display:flex;gap:10px;margin:12px 16px;padding:12px 14px}.role-dot{border-radius:50%;flex-shrink:0;height:8px;margin-top:4px;width:8px}.role-name{color:#fffc;font-size:12px;font-weight:700;margin-bottom:5px}.role-perms{display:flex;flex-wrap:wrap;gap:4px}.role-perm-tag{background:#ffffff14;border-radius:4px;color:#ffffff80;font-size:10px;font-weight:600;letter-spacing:.05em;padding:2px 6px;text-transform:uppercase}@media (max-width:768px){.detail-grid{grid-template-columns:1fr}.date-filter{align-items:flex-start;flex-direction:column}}.login-page{align-items:center;background:linear-gradient(135deg,#0a1628,#0f4c81);display:flex;justify-content:center;min-height:100vh;padding:1rem}.login-card{background:#fff;background:var(--surface);border-radius:16px;box-shadow:0 20px 60px #0006;max-width:400px;padding:2.5rem 2rem;text-align:center;width:100%}.login-logo{margin-bottom:1rem}.login-title{color:#1a2940;color:var(--text);font-size:1.6rem;font-weight:700;margin-bottom:.25rem}.login-subtitle{color:var(--text-muted);font-size:.85rem;margin-bottom:2rem}.login-form{text-align:left}.form-group{margin-bottom:1rem}.form-label{color:var(--text-muted);display:block;font-size:.8rem;font-weight:600;letter-spacing:.05em;margin-bottom:.4rem;text-transform:uppercase}.form-input,.form-textarea{background:#f4f7fb;background:var(--bg);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:8px;box-sizing:border-box;color:#1a2940;color:var(--text);font-size:.95rem;padding:.7rem .9rem;transition:border-color .2s;width:100%}.form-input:focus,.form-textarea:focus{border-color:var(--accent);outline:none}.form-textarea{font-family:inherit;min-height:80px;resize:vertical}.login-error{background:#e8485522;border:1px solid #e8485566;border-radius:8px;color:#e84855;font-size:.85rem;margin-bottom:1rem;padding:.7rem 1rem}.login-note{color:var(--text-muted);font-size:.75rem;line-height:1.5;margin-top:1.5rem}.btn-full{width:100%}.date-range-filter{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem 0}.date-range-label{font-weight:600;margin-right:.25rem}.date-range-group{align-items:center;display:flex;gap:.3rem}.date-range-caption{color:var(--text-muted);font-size:.78rem}.date-select{background:#f4f7fb;background:var(--bg);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:6px;color:#1a2940;color:var(--text);cursor:pointer;font-size:.82rem;padding:.38rem .6rem}.date-select:focus{border-color:var(--accent);outline:none}.date-clear-btn{background:#0000;border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:6px;color:var(--text-muted);cursor:pointer;font-size:.78rem;padding:.38rem .75rem;transition:all .15s}.date-clear-btn:hover{border-color:#e84855;color:#e84855}.export-bar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:.6rem 0}.export-count{color:var(--text-muted);font-size:.82rem}.export-buttons{display:flex;gap:.5rem}.export-btn{border:1.5px solid #0000;border-radius:6px;cursor:pointer;font-size:.82rem;font-weight:600;padding:.45rem 1rem;transition:all .15s}.export-btn--csv{background:#fff;background:var(--surface);border-color:#e1e8f0;border-color:var(--border);color:#1a2940;color:var(--text)}.export-btn--csv:hover{border-color:var(--accent);color:var(--accent)}.export-btn--excel{background:#1d6f4222;border-color:#1d6f42;color:#1d6f42}.export-btn--excel:hover{background:#1d6f42;color:#fff}.filter-section{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:12px;margin-bottom:.75rem;padding:1rem 1.25rem}.filter-section--compact{padding:.6rem 1rem}.filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.filter-row--spread{justify-content:space-between}.filter-row:last-child{margin-bottom:0}.filter-pills-inline{display:flex;flex-wrap:wrap;gap:.4rem}.filter-pill-sm{background:#f4f7fb;background:var(--bg);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:50px;color:var(--text-muted);cursor:pointer;font-size:.78rem;padding:.32rem .85rem;transition:all .15s}.filter-pill-sm.active{background:var(--accent);border-color:var(--accent);color:#1a2744;font-weight:700}.filter-pill-sm:hover:not(.active){border-color:var(--accent);color:var(--accent)}.link-cell{color:var(--accent);cursor:pointer}.link-cell:hover{text-decoration:underline}.contacted-badge{color:#44bba4;font-size:.78rem;font-weight:600}.not-contacted-badge{color:var(--text-muted);font-size:.78rem}.action-cell{display:flex;gap:.35rem}.btn-action{border:1.5px solid #0000;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:600;padding:.3rem .65rem;transition:all .15s}.btn-action--contact{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.btn-action--contact:hover{background:var(--accent);color:#1a2744}.btn-action--edit{background:#0000;border-color:#e1e8f0;border-color:var(--border);color:var(--text-muted)}.btn-action--edit:hover{border-color:var(--accent);color:var(--accent)}.btn-action--danger{background:#0000;border-color:#e8485544;color:#e84855}.btn-action--danger:hover{background:#e8485522;border-color:#e84855}.small-text{font-size:.78rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal--sm{max-width:500px}.modal-company-name{font-size:1.05rem;font-weight:700;margin:0 0 2px}.modal-cin{color:var(--text-muted);font-size:.82rem;margin-bottom:1rem}.prev-note{background:#f4f7fb;background:var(--bg);border-radius:8px;margin-bottom:.5rem;padding:.75rem 1rem}.prev-note label{color:var(--text-muted);display:block;font-size:.75rem;font-weight:600;margin-bottom:.25rem}.prev-note p{font-size:.88rem;margin:0}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.detail-locked{padding:4rem 2rem;text-align:center}.lock-icon{font-size:3.5rem;margin-bottom:1rem}.detail-locked h2{font-size:1.4rem;margin-bottom:.5rem}.detail-locked p{color:var(--text-muted);margin-bottom:.5rem}.detail-locked .btn-secondary{margin-top:1.5rem}.back-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.88rem;font-weight:600;padding:0}.back-btn:hover{text-decoration:underline}.detail-section{margin-bottom:2rem}.detail-grid{grid-gap:1rem;background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:12px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));padding:1.25rem}.detail-field{display:flex;flex-direction:column;gap:.2rem}.detail-field--full{grid-column:1/-1}.detail-field label{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.detail-field span{color:#1a2940;color:var(--text);font-size:.92rem;word-break:break-word}.contact-history{display:flex;flex-direction:column;gap:.75rem}.contact-entry{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:10px;padding:.9rem 1.1rem}.contact-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:.4rem}.contact-by{color:var(--accent);font-size:.85rem;font-weight:700}.contact-date{color:var(--text-muted);font-size:.78rem}.contact-note{color:#1a2940;color:var(--text);font-size:.88rem;margin:0}.empty-state{background:#fff;background:var(--surface);border:1px dashed #e1e8f0;border:1px dashed var(--border);border-radius:10px;color:var(--text-muted);font-size:.88rem;padding:1.5rem}.page-badge--analyst{background:#44bba422;border:1px solid #44bba466;border-radius:50px;color:#44bba4;font-size:.78rem;font-weight:700;padding:.3rem .9rem}.spinner--sm{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;vertical-align:middle;width:14px}.tab-bar{border-bottom:2px solid #e1e8f0;border-bottom:2px solid var(--border);flex-wrap:wrap;margin-bottom:.75rem;padding-bottom:0}.tab-bar,.tab-btn{display:flex;gap:.5rem}.tab-btn{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;border-radius:6px 6px 0 0;color:var(--text-muted);cursor:pointer;font-size:.88rem;font-weight:600;margin-bottom:-2px;padding:.6rem 1.25rem;transition:all .15s}.tab-btn--active,.tab-btn:hover{background:var(--accent-dim);color:var(--accent)}.tab-btn--active{border-bottom-color:var(--accent)}.tab-count{background:var(--accent);border-radius:50px;color:#1a2744;font-size:.72rem;font-weight:800;padding:.1rem .5rem}.overview-filter-label{color:#1a2940;color:var(--text);font-size:.82rem;font-weight:700;white-space:nowrap}.overview-filter-active-note{color:var(--accent);font-size:.78rem;font-weight:600;margin-top:.5rem}.empty-state{align-items:center;display:flex;flex-direction:column;gap:.75rem;justify-content:center;padding:3.5rem 2rem;text-align:center}.empty-state-icon{font-size:2.8rem;line-height:1}.empty-state-title{color:#1a2940;color:var(--text);font-size:1.05rem;font-weight:700;margin-top:.25rem}.empty-state-desc{color:var(--text-muted);font-size:.85rem;line-height:1.6;max-width:420px}.empty-state-btn{background:var(--accent);border:none;border-radius:6px;color:#f4f7fb;color:var(--bg);cursor:pointer;font-size:.82rem;font-weight:700;margin-top:.5rem;padding:.5rem 1.25rem;transition:opacity .15s}.empty-state-btn:hover{opacity:.85}.date-range-label{color:var(--text-muted);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.filter-pill{align-items:center;background:#fff;background:var(--surface);border:1.5px solid #e1e8f0;border:1.5px solid var(--border);border-radius:20px;color:#5a7a9c;color:var(--text-2);cursor:pointer;display:inline-flex;font-size:12.5px;font-weight:600;gap:7px;padding:7px 14px;transition:all .15s;white-space:nowrap}.filter-pill:hover{border-color:#aac;color:#1a2940;color:var(--text)}.filter-pill.active,.filter-pill.active[style*="--pill-active-color"]{background:#0b2c4a;background:var(--navy);border-color:#0b2c4a;border-color:var(--navy);color:#fff}.pill-count{align-items:center;background:#ffffff26;border-radius:12px;color:#fff;display:inline-flex;font-size:11px;font-weight:800;justify-content:center;min-width:28px;padding:1px 7px}.filter-pill:not(.active) .pill-count{background:#f4f7fb;background:var(--bg);color:#5a7a9c;color:var(--text-2)}.table-meta-bar{align-items:center;border-bottom:1px solid #e1e8f0;border-bottom:1px solid var(--border);color:#5a7a9c;color:var(--text-2);display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:11px 20px}.table-meta-bar strong{color:#0b2c4a;color:var(--navy)}.col-filter-reset{background:none;border:none;color:#2e86ab;color:var(--blue);cursor:pointer;font-size:11.5px;font-weight:700;padding:3px 0;transition:color .15s;white-space:nowrap}.btn-clear-all,.col-filter-reset:hover{color:#e84855;color:var(--red)}.btn-clear-all{align-self:flex-start;background:#e8485512;border:1.5px solid #e8485540;border-radius:8px;cursor:pointer;font-size:12.5px;font-weight:700;margin-top:4px;padding:7px 14px;transition:all .15s;white-space:nowrap}.btn-clear-all:hover{background:#e8485524}.search-clear{background:none;border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:8px;color:#8ca8c4;color:var(--text-3);cursor:pointer;flex-shrink:0;font-size:13px;padding:8px 10px;transition:all .15s}.search-clear:hover{background:#f4f7fb;background:var(--bg);border-color:#e84855;border-color:var(--red);color:#e84855;color:var(--red)}.col-filter-wrap{display:inline-block;position:relative}.col-filter-btn{align-items:center;background:none;border:none;border-radius:5px;color:#5a7a9c;color:var(--text-2);cursor:pointer;display:inline-flex;font-size:11.5px;font-weight:700;gap:5px;letter-spacing:.07em;padding:2px 4px;position:relative;text-transform:uppercase;transition:all .15s;white-space:nowrap}.col-filter-btn:hover{background:#0000000a;color:#0b2c4a;color:var(--navy)}.col-filter-btn--active{color:#0b2c4a!important;color:var(--navy)!important}.col-filter-arrow{display:inline-block;font-size:10px;transition:transform .15s}.col-filter-arrow--open{transform:rotate(180deg)}.col-filter-dot{background:#2e86ab;background:var(--blue);border:1.5px solid #fff;border-radius:50%;height:7px;position:absolute;right:-3px;top:-2px;width:7px}.col-filter-dropdown{animation:dropIn .12s ease;background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0b2c4a24;box-shadow:var(--shadow-lg);left:0;overflow:hidden;position:absolute;top:calc(100% + 6px);z-index:200}@keyframes dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.col-filter-option{align-items:center;color:#1a2940;color:var(--text);cursor:pointer;display:flex;font-size:13px;gap:10px;padding:9px 16px;transition:background .1s;white-space:nowrap}.col-filter-option:hover{background:#f4f7fb;background:var(--bg)}.col-filter-option--active{background:#0f3c600d;color:#0b2c4a;color:var(--navy);font-weight:600}.col-filter-option+.col-filter-option{border-top:1px solid #e1e8f0;border-top:1px solid var(--border)}.col-filter-check{color:#44bba4;color:var(--teal);flex-shrink:0;font-size:12px;text-align:center;width:14px}.inc-status-pill{align-items:center;border:1px solid;border-radius:20px;display:inline-flex;font-size:11.5px;font-weight:600;gap:5px;padding:3px 9px}.inc-status-pill,.td-company{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-value{color:#1a2940;color:var(--text);font-size:12.5px}.no-data{color:#8ca8c4;color:var(--text-3);font-size:13px}.small-text{font-size:12px}.badge--orange{background:#fff7ed;border:1px solid #fdba74;border-radius:4px;color:#c2410c}.badge--orange,.badge--yellow{font-weight:700;padding:2px 6px}.badge--yellow{background:#fefce8;border:1px solid #fef08a;border-radius:4px;color:#a16207}.viewer-batch-badge{background:#e8c5471f;border:1px solid #e8c54759;border-radius:14px;color:#b8960e;font-size:11px;font-weight:700;gap:5px;letter-spacing:.04em;padding:3px 10px}.ds-tab,.viewer-batch-badge{align-items:center;display:inline-flex}.ds-tab{background:#fff;background:var(--surface);border:1.5px solid #e1e8f0;border:1.5px solid var(--border);border-radius:20px;color:#5a7a9c;color:var(--text-2);cursor:pointer;font-size:12.5px;font-weight:500;gap:6px;padding:6px 14px;transition:all .15s ease;white-space:nowrap}.ds-tab.active{background:linear-gradient(135deg,#0b2c4a,#1a4a72);background:linear-gradient(135deg,var(--navy) 0,var(--navy-3) 100%);box-shadow:0 2px 8px #0b2c4a33;color:#fff;font-weight:700}.ds-tab.active,.ds-tab:hover:not(.active){border-color:#1a4a72;border-color:var(--navy-3)}.ds-tab:hover:not(.active){color:#0b2c4a;color:var(--navy)}.int-pill{align-items:center;background:#0000;border:1.5px solid #e1e8f0;border:1.5px solid var(--border);border-radius:16px;color:#5a7a9c;color:var(--text-2);cursor:pointer;display:inline-flex;font-size:11.5px;font-weight:500;gap:5px;padding:5px 11px;transition:all .15s ease;white-space:nowrap}.int-pill:hover:not(.active){border-color:#0f3a60;border-color:var(--navy-2);color:#0b2c4a;color:var(--navy)}.filter-card{background:#fff;background:var(--surface);border:1px solid #e1e8f0;border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 8px #0b2c4a0d;margin-bottom:14px;padding:18px 20px}.td-rownum{color:#8ca8c4;color:var(--text-3);font-size:11px;font-weight:500;text-align:center;width:36px}tr.row-contacted{background:#44bba408}tr.row-contacted:hover{background:#44bba40f!important}.filter-count-badge{background:#0b2c4a;background:var(--navy);border-radius:20px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;padding:2px 10px}.btn-clear-filters{align-items:center;background:#fff;background:var(--surface);border:1.5px solid #e1e8f0;border:1.5px solid var(--border);border-radius:20px;color:#5a7a9c;color:var(--text-2);cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:5px;padding:6px 14px;transition:all .15s}.btn-clear-filters:hover{border-color:#e84855;border-color:var(--red);color:#e84855;color:var(--red)}.page-btn-num{min-width:36px}.page-btn-num.active{background:#0b2c4a;background:var(--navy);border-color:#0b2c4a;border-color:var(--navy);color:#fff;font-weight:700}
/*# sourceMappingURL=main.ebde85c9.css.map*/