/* Shared data table treatment */
.table-wrap{overflow-x:auto;scrollbar-color:#A8BBD0 transparent;scrollbar-width:thin}
.table-wrap table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;text-align:left;font-variant-numeric:tabular-nums}
.table-wrap thead th{background:#102B48;color:#A8BBD0;font-family:Inter,Roboto,'Open Sans',sans-serif;font-size:10px;font-weight:700;letter-spacing:.08em;padding:16px 18px;border:0;white-space:nowrap}
.table-wrap thead th:first-child{padding-left:25px}
.table-wrap thead .table-sort{display:inline-flex;align-items:center;gap:3px;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;padding:0;text-align:left;cursor:pointer}
.table-wrap thead .table-sort:hover,.table-wrap thead .table-sort:focus-visible{color:#fff;text-decoration:underline}
.table-wrap thead .sort-indicator{font-size:12px;letter-spacing:0;color:#fff}
.table-wrap tbody td{padding:17px 18px;border:0;border-bottom:1px solid color-mix(in srgb,#A8BBD0 24%,white);color:#102B48;font-size:12px;vertical-align:middle;line-height:1.45}
.table-wrap tbody td:first-child{position:relative;padding-left:25px}
.table-wrap tbody td:first-child:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 4px 4px 0;background:transparent;transition:background-color .18s}
.table-wrap tbody tr:nth-child(even){background:color-mix(in srgb,#A8BBD0 7%,white)}
.table-wrap tbody tr:hover{background:color-mix(in srgb,#A8BBD0 18%,white)}
.table-wrap tbody tr.agenda-overdue{background:#fff0f1}
.table-wrap tbody tr.agenda-overdue:hover{background:#ffe4e7}
.table-wrap tbody tr:hover td:first-child:before{background:#245787}
.table-wrap tbody tr:last-child td{border-bottom:0}
.table-wrap .company-cell{min-width:190px}
.table-wrap .company-symbol{width:38px;height:38px;border:1px solid color-mix(in srgb,#0C3663 18%,white);background:color-mix(in srgb,#0C3663 11%,white);color:#0C3663;font-family:Roboto,Inter,sans-serif;font-weight:700;border-radius:10px}
.table-wrap .company-cell strong{font-size:12px;line-height:1.4;color:#102B48}
.table-wrap .company-cell small{font-size:10px;color:#526981}
.table-wrap .badge{border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700;letter-spacing:.01em;background:color-mix(in srgb,#0C3663 10%,white);color:#0C3663}
.table-wrap .badge.overdue{background:color-mix(in srgb,#D83344 14%,white);color:#D83344}
.table-wrap .row-action{border:1px solid color-mix(in srgb,#0C3663 25%,white);background:color-mix(in srgb,#0C3663 6%,white);color:#0C3663;border-radius:8px;padding:8px 11px;font-size:11px;font-weight:700;min-height:32px}
.table-wrap .row-action:hover{background:#0C3663;border-color:#0C3663;color:white;box-shadow:0 4px 12px color-mix(in srgb,#102B48 14%,transparent)}
.table-wrap .priority i{width:8px;height:8px}
.customer-directory-table td:nth-child(2){color:#0C3663;font-family:Roboto,Inter,sans-serif;font-weight:700;letter-spacing:.02em}
.customer-directory-table td:nth-child(3){color:#526981;font-weight:600}
.customer-directory-table td:nth-child(5){max-width:220px;overflow:hidden;text-overflow:ellipsis}
.customer-status{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,#0C3663 11%,white);color:#0C3663;font-weight:700;font-size:10px;white-space:nowrap}
.customer-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.customer-status.is-current{background:color-mix(in srgb,#245787 13%,white);color:#245787}
.customer-status.is-potential{background:color-mix(in srgb,#D83344 12%,white);color:#D83344}
.company-filter-bar{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(5,minmax(115px,1fr)) auto;gap:10px;align-items:center;padding:17px 20px 12px;border-bottom:1px solid color-mix(in srgb,#A8BBD0 22%,white)}
.entity-state{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:700;line-height:1.2}
.entity-state:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.entity-state.is-active{background:color-mix(in srgb,#245787 12%,white);color:#245787}
.entity-state.is-inactive{background:color-mix(in srgb,#D83344 12%,white);color:#D83344}
.table-wrap .company-cell>span:last-child{display:grid;gap:5px}
.table-actions{display:flex;align-items:center;gap:6px}
.table-actions .company-toggle{white-space:nowrap;color:#526981}
.contact-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid color-mix(in srgb,#A8BBD0 25%,white)}
.contact-status-row .text-button{white-space:nowrap}
.company-filter-bar .search-box{min-width:0;max-width:none}
.company-filter-bar select,.company-filter-bar input{height:39px;border-radius:8px;border-color:color-mix(in srgb,#A8BBD0 35%,white);background:color-mix(in srgb,#A8BBD0 5%,white);font-size:11px;color:#102B48}
.company-filter-bar .text-button{white-space:nowrap;padding:9px 5px}
.company-result-line{display:flex;align-items:center;gap:12px;padding:10px 22px;color:#526981;font-size:11px;font-weight:600}
.company-result-line .filter-indicator{margin:0}
.company-pagination{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:16px 22px;border-top:1px solid color-mix(in srgb,#A8BBD0 25%,white);color:#526981;font-size:11px}
.company-pagination>span{font-variant-numeric:tabular-nums;font-weight:700}
.company-pagination label{display:flex;align-items:center;gap:9px;margin-left:auto;color:#526981;white-space:nowrap}
.company-pagination select{width:72px;padding:7px 9px;border-radius:7px;border-color:color-mix(in srgb,#A8BBD0 36%,white);color:#102B48;font-size:11px}
.company-pagination nav{display:flex;align-items:center;gap:4px;width:auto;padding:0;background:none;border:0}
.company-pagination nav button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;background:white;border:1px solid color-mix(in srgb,#A8BBD0 42%,white);border-radius:7px;color:#0C3663;font-size:11px;font-weight:700;box-shadow:none;transform:none}
.company-pagination nav button:hover:not(:disabled){background:color-mix(in srgb,#0C3663 10%,white);color:#0C3663;transform:none}
.company-pagination nav button.active{background:#0C3663;border-color:#0C3663;color:white;box-shadow:none}
.company-pagination nav button:disabled{opacity:.4;cursor:default}
.pagination label{display:flex;align-items:center;gap:8px;margin-left:auto;white-space:nowrap;color:#526981}
.pagination #record-page-size{width:72px;padding:7px 9px;border-radius:7px;border-color:color-mix(in srgb,#A8BBD0 36%,white);font-size:11px}
@media(max-width:1300px){.company-filter-bar{grid-template-columns:repeat(5,minmax(0,1fr))}.company-filter-bar .search-box{grid-column:1/-1}.company-filter-bar .text-button{grid-column:1/-1;justify-self:start}}
@media(max-width:760px){
  .company-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px;gap:8px}
  .company-filter-bar .search-box{grid-column:1/-1}
  .company-filter-bar select{min-width:0;width:100%}
  .company-pagination{padding:14px;gap:12px}
  .company-pagination>span{width:100%}
  .company-pagination label{margin-left:0}
  .company-pagination nav{margin-left:auto}
}
