/* Per-record identities and customer cards. User-selected colors only accent borders. */
.record-brand { width:54px; height:54px; flex:0 0 54px; display:inline-flex; align-items:center; justify-content:center; border:2px solid var(--record-color,#d6dacb); border-radius:10px; background:#f6f7f1; color:#3f4832; font-size:1rem; font-weight:650; overflow:hidden; }
.record-brand img { width:100%; height:100%; object-fit:contain; background:#fff; padding:4px; }
.record-brand-large { width:68px; height:68px; flex-basis:68px; font-size:1.25rem; }
.record-card-brand-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:17px; }
.record-card-brand-row .project-card-top { display:flex; flex-direction:column; align-items:flex-end; gap:7px; margin:0; }
.project-card { border-top:3px solid var(--record-color,#d6dacb); }
.project-card-overdue { border-left:2px solid #b9574b; }
.customer-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; align-items:stretch; }
.customer-card { display:flex; min-width:0; flex-direction:column; background:#fff; border:1px solid var(--line); border-top:3px solid var(--record-color,#d6dacb); border-radius:7px; padding:20px; }
.customer-card:hover { border-right-color:#c8ccba; border-bottom-color:#c8ccba; border-left-color:#c8ccba; }
.customer-card h2 { margin:0 0 5px; font-size:1.08rem; line-height:1.4; overflow-wrap:anywhere; }
.customer-card h2 a { color:var(--ink); text-decoration:none; }
.customer-card h2 a:hover { text-decoration:underline; }
.customer-card-billing { color:var(--muted); font-size:.78rem; line-height:1.45; margin-bottom:10px; overflow-wrap:anywhere; }
.customer-card-contact { display:grid; gap:8px; padding:12px 0 20px; font-size:.82rem; color:#5c6354; }
.customer-card-contact a { display:flex; min-width:0; gap:8px; align-items:flex-start; text-decoration:none; color:inherit; }
.customer-card-contact a span { min-width:0; overflow-wrap:anywhere; }
.customer-card-contact a:hover { color:var(--ink); text-decoration:underline; }
.customer-card-contact .lucide { width:15px; height:15px; margin-top:3px; color:#858c7c; }
.customer-card-projects { display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--ink); font-size:.81rem; margin-top:auto; padding:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.customer-card-projects > span { flex:1; min-width:0; }
.customer-card-projects strong { font-size:1rem; }
.customer-card-projects .lucide { width:14px; color:var(--muted); }
.customer-card-projects:hover { color:#52600b; }
.record-card-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding-top:15px; font-size:.78rem; }
.record-card-actions > a { color:var(--muted); text-decoration:none; }
.record-card-actions > a:hover { color:var(--ink); text-decoration:underline; }
.record-card-actions .btn { padding:0; font-size:.78rem; color:var(--muted); }
.record-detail-heading { display:flex; align-items:center; gap:17px; min-width:0; }
.record-detail-heading > div { min-width:0; }
.record-detail-heading h1 { overflow-wrap:anywhere; }
.record-branding-fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:28px; }
.record-branding-fields .field { min-width:0; }
.record-logo-preview { display:flex; align-items:center; gap:12px; margin:0 0 12px; color:var(--muted); font-size:.82rem; }
@media(max-width:1199.98px) { .customer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:575.98px) { .customer-grid { grid-template-columns:minmax(0,1fr); gap:14px; } .customer-card { padding:18px; } .record-branding-fields { grid-template-columns:minmax(0,1fr); gap:24px; } .record-detail-heading { gap:12px; } .record-brand-large { width:54px; height:54px; flex-basis:54px; } }

.customer-browser .filter-search { flex:1 1 250px; }
.customer-browser > .field { flex:0 1 180px; min-width:140px; }
.customer-browser .filter-actions { flex-wrap:wrap; }
.customer-card-finances { margin-top:auto; padding:14px 0; border-top:1px solid var(--line); }
.customer-card-finances + .customer-card-projects { margin-top:0; }
.customer-finance-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:5px 8px; margin-bottom:6px; color:var(--muted); font-size:.74rem; }
.customer-finance-demo { display:inline-flex; align-items:center; padding:1px 5px; border:1px solid #ead6a4; border-radius:3px; background:#fbf5e7; color:#826223; font-size:.62rem; font-weight:650; letter-spacing:.03em; }
.customer-finance-row { display:flex; flex-wrap:wrap; align-items:baseline; gap:7px; color:var(--ink); font-size:.93rem; overflow-wrap:anywhere; }
.customer-finance-row + .customer-finance-row { margin-top:3px; }
.customer-finance-row > span { color:var(--muted); font-size:.78rem; }
.customer-finance-row strong { font-weight:600; }
.customer-finance-unknown { display:block; margin:3px 0 5px; color:#8d662b; font-size:.72rem; }
.customer-finance-empty { color:var(--muted); font-size:.78rem; }
@media(max-width:575.98px) { .customer-browser > .field,.customer-browser .filter-search { flex:1 1 100%; } .customer-browser .filter-actions { width:100%; padding-top:0; } .customer-browser .filter-actions .btn { flex:1; } }
.customer-finance-heading > a { color:inherit; text-decoration:none; }
.customer-finance-heading > a:hover { color:var(--ink); text-decoration:underline; }
.record-workspace-section{scroll-margin-top:calc(var(--app-topbar-height,58px) + 18px)}
.record-tabs{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);margin:22px 0;overflow-x:auto;white-space:nowrap}
.record-tab{display:inline-flex;align-items:center;gap:7px;padding:13px 0;color:#69756f;text-decoration:none;font-weight:600;font-size:.9rem;border-bottom:3px solid transparent}
.record-tab.active{color:var(--ink);border-color:#aed026}
.record-tab>span{font-size:.72rem;background:#e8ede5;color:#64715b;padding:1px 6px;border-radius:5px}
.record-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:20px 0;margin-bottom:20px}
.record-summary>div{padding:0 22px;border-right:1px solid var(--line);min-width:0}
.record-summary>div:last-child{border:0}
.record-summary-label{font-size:.78rem;color:#77817c;display:block;margin-bottom:6px}
.record-summary strong{font-size:1.45rem;letter-spacing:-.03em;line-height:1.3}
.record-chart-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:20px;margin-bottom:20px}
.record-chart-panel{padding:20px;min-width:0}
.record-chart-panel h2{font-size:1rem;margin-bottom:4px}
.record-chart-panel .chart-subtitle{font-size:.77rem;color:#77817c;margin-bottom:12px}
.work-chart{position:relative;width:100%;height:var(--work-chart-height,260px);min-width:0}
.record-overview-tasks .panel{margin-top:0!important}
.record-overview-tasks tr:nth-child(n+6){display:none}
.record-data-description{max-width:900px;white-space:pre-line;overflow-wrap:anywhere}
.record-facts-strip{display:flex;gap:12px 28px;align-items:center;flex-wrap:wrap;margin:12px 0 20px;font-size:.84rem;color:#657269}
.record-facts-strip a{overflow-wrap:anywhere}
.record-tab-panel{min-width:0}
@media(max-width:767.98px){.record-chart-grid{grid-template-columns:minmax(0,1fr)}.record-summary{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px}.record-summary>div:nth-child(2){border:0}.record-summary strong{font-size:1.22rem}.record-summary>div{padding:0 16px}.record-tabs{gap:22px}.record-chart-panel{padding:16px}}
.record-finance-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:20px}
.record-finance-toolbar h2{font-size:1.13rem;margin:0 0 5px}
.record-finance-toolbar>div>span{color:#77827b;font-size:.8rem}
.record-finance-toolbar .btn{display:inline-flex;gap:7px;align-items:center}
.record-finance-toolbar .btn svg{width:16px;height:16px}
.record-finance-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 0;margin-bottom:20px}
.record-finance-metrics>div{padding:0 22px;border-right:1px solid var(--line);min-width:0}
.record-finance-metrics>div:last-child{border:0}
.record-finance-metrics>div>span{display:block;font-size:.78rem;color:#6f7a73;margin-bottom:8px}
.record-finance-metrics strong{font-size:1.35rem;letter-spacing:-.025em;display:block;line-height:1.35}
.record-finance-metrics small{display:block;font-size:.72rem;color:#7a827a;margin-top:6px}
.record-finance-metrics .customer-finance-demo{display:inline-block;margin-top:6px;color:#826223}
.record-documents .panel-heading h2,.record-finance-bottom .panel-heading h2{display:flex;gap:9px;align-items:center;font-size:1rem}
.record-count{font-size:.75rem;font-weight:500;background:#edf0e9;padding:2px 6px;border-radius:4px;color:#697362}
.record-documents .panel-heading>a,.record-finance-bottom .panel-heading>a{font-size:.79rem}
.record-documents .table{--bs-table-bg:#fff}
.record-documents thead{--bs-table-bg:#f7f9f6;font-size:.76rem;color:#727b75}
.record-documents td,.record-documents th{padding:12px 20px}
.record-documents td{font-size:.85rem}
.record-payment-status{display:inline-flex;background:#f1f3ed;color:#717a67;padding:4px 7px;border-radius:4px;font-size:.72rem;white-space:nowrap}
.record-payment-status.is-overdue{background:#fcf0eb;color:#ad513d}
.record-row-open{display:inline-flex;color:#7b847c}.record-row-open svg{width:16px;height:16px}
.record-finance-bottom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}
.record-money-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 20px;text-decoration:none;color:var(--ink);border-top:1px solid #edf0eb;font-size:.87rem}
.record-money-row:hover{background:#f8faf5}.record-money-row>div{min-width:0}.record-money-row strong{font-weight:550;overflow-wrap:anywhere}.record-money-row span{display:block;color:#778077;font-size:.74rem;margin-top:4px}
.record-compact-empty{padding:22px 20px;font-size:.83rem;color:#788075}.record-compact-empty strong{display:block;color:#455044;margin-bottom:6px;font-size:.89rem}.record-compact-empty span{display:block;max-width:360px;line-height:1.6}.record-compact-empty>a{display:inline-block;margin-top:12px}
.record-candidate-link{display:flex;align-items:center;gap:12px;padding:15px 20px;color:#536727;background:#f6f8ee;border-top:1px solid #e6ebd8;text-decoration:none;font-size:.82rem}.record-candidate-link>svg{width:18px;height:18px;flex:none}.record-candidate-link>svg:last-child{margin-left:auto}.record-candidate-link small{display:block;color:#7c8665;margin-top:4px;font-size:.73rem}
.record-flow-details{margin-top:20px;font-size:.85rem;color:#6c776c}.record-flow-details>summary{cursor:pointer}
@media(max-width:767.98px){.record-finance-metrics{grid-template-columns:minmax(0,1fr);padding:0}.record-finance-metrics>div{padding:16px;border-right:0;border-bottom:1px solid var(--line)}.record-finance-bottom{grid-template-columns:minmax(0,1fr)}.record-finance-toolbar .btn{font-size:.78rem;padding:8px 10px}.record-documents td,.record-documents th{padding:12px 14px}}
.record-chart-grid:has(>section:only-child){grid-template-columns:minmax(0,1fr)}
.record-chart-grid:empty{display:none}
