.lota-customer-table{padding:0;overflow:auto;max-height:calc(100vh - 300px);min-height:120px;border:1px solid var(--line,#e5e8ef);border-radius:var(--r,8px);background:var(--surface,#fff);color:var(--ink,#1f2433)}
.lota-customer-table table{width:100%;border-collapse:collapse;font-size:var(--t-sm,13px);text-align:left;white-space:nowrap}
.lota-customer-table th{position:sticky;top:0;z-index:2;text-align:left;height:38px;box-sizing:border-box;padding:7px 12px;color:var(--ink-2,#626b7a);font-weight:500;font-size:var(--t-xs,12px);background:var(--surface-2,#f6f7f9);border-bottom:1px solid var(--line,#e5e8ef)}
.lota-customer-table td{height:44px;box-sizing:border-box;padding:6px 12px;border-bottom:1px solid var(--line,#e5e8ef);vertical-align:middle}
.lota-customer-table tr:last-child td{border-bottom:0}.lota-customer-table tbody tr:hover{background:var(--row-hover,#f7f9fd)}
.lota-customer-table .lct-check{width:32px;min-width:32px;text-align:center}.lota-customer-table input[type=checkbox]{accent-color:var(--brand-blue,#3870f8);width:15px;height:15px;cursor:pointer}
.lota-customer-table button.lct-identity{display:flex;align-items:center;gap:9px;text-align:left;max-width:270px;min-width:150px;width:100%;padding:0;border:0;background:transparent;border-radius:0;color:inherit;cursor:pointer;font:inherit}
.lct-avatar{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:7px;background:var(--teal-bg,#edf3ff);color:var(--teal-deep,#3868ce);font-size:12px;font-weight:600}
.lct-identity-text{min-width:0}.lct-name{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lct-name .lct-badge{margin-left:5px}.lct-subtitle{display:block;margin-top:2px;color:var(--ink-3,#768097);font-size:var(--t-2xs,11px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lct-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;font-size:var(--t-xs,12px);font-weight:400;line-height:1.4;background:var(--lct-badge-bg,var(--surface-2,#f2f4f8));color:var(--lct-badge-color,var(--ink-2,#626b7a));white-space:nowrap}
.lct-badge-enterprise{background:var(--teal-bg,#edf3ff);color:var(--teal-deep,#3868ce)}.lct-badge-pending{background:var(--amber-bg,#fff6df);color:var(--amber-deep,#986722)}
.lct-empty{padding:44px 20px;text-align:center;white-space:normal;color:var(--ink-3,#768097)}
.lota-customer-table :focus-visible{outline:2px solid var(--brand-blue,#3870f8);outline-offset:3px}
@media(max-width:800px){.lota-customer-table{max-height:65vh}.lota-customer-table button.lct-identity{max-width:205px}}

/* Freeze the customer identity while wide business fields scroll horizontally. */
.lota-customer-table td[data-column=companyName]{position:sticky;left:0;z-index:1;background:var(--surface,#fff)}
.lota-customer-table th[data-column=companyName]{left:0;z-index:3}
.lota-customer-table tbody tr:hover td[data-column=companyName]{background:var(--row-hover,#f7f9fd)}
[data-density=compact] .lota-customer-table td{height:38px;padding-top:3px;padding-bottom:3px}
[data-density=compact] .lct-subtitle{display:none}
@media(prefers-reduced-motion:reduce){.lota-customer-table *{scroll-behavior:auto}}

/* Relationship meaning is shared by personal and enterprise customer views. */
.lct-relation-tracking{--lct-relation-color:var(--rel-track,var(--brand-blue,#3870f8))}
.lct-relation-contract{--lct-relation-color:var(--rel-contract,var(--brand-green,#16865c))}
.lct-relation-follow{--lct-relation-color:var(--rel-follow,var(--ink-2,#626b7a))}
.lct-relation-tracking,.lct-relation-contract,.lct-relation-follow{--lct-badge-color:color-mix(in srgb,var(--lct-relation-color) 60%,var(--ink));--lct-badge-bg:color-mix(in srgb,var(--lct-relation-color) 12%,var(--surface))}
.lota-customer-table .lct-relation-edit{padding:0;border:0;background:transparent;cursor:pointer;font:inherit}
.lota-customer-table .lct-group-row td{padding:0;background:var(--surface-2,#f6f7f9);border-bottom:1px solid var(--line,#e5e8ef)}
.lota-customer-table .lct-group-toggle,.lota-customer-table .lct-group-label{display:flex;align-items:center;gap:var(--space-2,8px);width:100%;min-height:44px;padding:9px 12px;box-sizing:border-box;text-align:left;font:inherit;color:inherit}
.lota-customer-table .lct-group-toggle{border:0;border-radius:0;background:transparent;cursor:pointer}
.lct-group-name{min-width:0;max-width:32rem;white-space:normal;overflow-wrap:anywhere;font-size:var(--t-sm,13px);font-weight:600}
.lct-group-summary{display:inline-flex;flex-wrap:wrap;white-space:normal;align-items:center;gap:var(--space-2,8px);font-size:var(--t-xs,12px);color:var(--ink-2,#626b7a);font-weight:400}
.lct-group-chevron{width:1em;text-align:center;flex:none}
.lota-customer-table tbody[hidden]{display:none}

/* Categorical palette: stable enum mapping lives in categoryBadge, never row order. */
.lct-badge-info{--lct-category-color:var(--brand-blue)}
.lct-badge-success{--lct-category-color:var(--brand-green)}
.lct-badge-warning{--lct-category-color:var(--brand-yellow)}
.lct-badge-purple{--lct-category-color:var(--violet)}
.lct-badge-teal{--lct-category-color:color-mix(in srgb,var(--brand-green) 65%,var(--brand-blue))}
.lct-badge:is(.lct-badge-info,.lct-badge-success,.lct-badge-warning,.lct-badge-purple,.lct-badge-teal){--lct-badge-color:color-mix(in srgb,var(--lct-category-color) 55%,var(--ink));--lct-badge-bg:color-mix(in srgb,var(--lct-category-color) 12%,var(--surface))}

/* People are identities, not business states: one neutral chip in every customer view. */
.lct-people{display:flex;align-items:center;flex-wrap:wrap;gap:6px;max-width:270px}
.lct-person{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:2px 8px 2px 2px;border-radius:999px;background:var(--surface-2,#f2f4f8);color:var(--ink,#1f2433);font-size:var(--t-xs,12px);line-height:22px;vertical-align:middle;box-sizing:border-box}
.lct-person-avatar{display:grid;place-items:center;position:relative;isolation:isolate;flex:none;width:22px;height:22px;overflow:hidden;border-radius:50%;background:var(--teal-bg,#edf3ff);color:var(--teal-deep,#3868ce);font-size:11px;font-weight:500}
.lct-person-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;color:transparent;font-size:0}
.lct-person-name{min-width:0;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.em-assign-person{display:inline-flex;align-items:center;gap:5px;border:1px dashed var(--line,#d7dce5);border-radius:999px;padding:4px 9px;background:var(--surface,#fff);color:var(--teal-deep,#3868ce);font:inherit;cursor:pointer}
.em-assign-person:hover{background:var(--teal-bg,#edf3ff)}
.em-assign-person:focus-visible,.em-employee-option:has(input:focus-visible){outline:2px solid var(--brand-blue,#3870f8);outline-offset:3px}
.em-employee-picker{display:grid;gap:12px;padding-top:12px}
.em-employee-options{display:grid;gap:4px;max-height:320px;overflow:auto;padding:4px}
.em-employee-option{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid transparent;border-radius:6px;cursor:pointer}
.em-employee-option:has(input:checked){border-color:var(--brand-blue,#3870f8);background:var(--teal-bg,#edf3ff)}
.em-employee-option input{accent-color:var(--brand-blue,#3870f8)}
.em-employee-option[hidden]{display:none}
.em-employee-picker p{margin:0;color:var(--ink-2,#626b7a);font-size:var(--t-sm,13px)}
