.client-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:24px 0; }
.client-overview > div { padding:20px; border:1px solid var(--admin-line); border-radius:16px; background:var(--admin-panel); }
.client-overview strong { display:block; color:#d8ae7b; font:32px Fraunces,serif; }
.client-overview span { font-size:14px; }
.client-filters,.vehicle-client-controls { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:20px; }
.client-filters label { display:grid; gap:7px; flex:1 1 220px; }
.client-filters input,.client-filters select,.client-dialog input,.client-dialog select,.client-dialog textarea { width:100%; min-width:0; padding:12px; border:1px solid var(--admin-line); border-radius:10px; background:var(--admin-bg); color:inherit; font:inherit; }
.vehicle-client-controls select { flex:1 1 220px; min-width:0; }
.client-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr)); gap:20px; }
.client-card { min-width:0; padding:24px; background:var(--admin-panel); border:1px solid var(--admin-line); border-radius:18px; }
.client-card-heading { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.client-card-heading > div { flex:1; min-width:0; overflow-wrap:anywhere; }
.client-card-heading h3 { font:23px Fraunces,serif; margin-top:4px; }
.client-card-heading small { color:#ceaa7e; font-size:13px; }
.client-avatar { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; border-radius:14px; border:1px solid #b98b5950; background:#b98b5915; color:#d9b382; font:24px Fraunces,serif; }
.client-contact { line-height:1.9; font-size:14px; overflow-wrap:anywhere; }
.client-purchases { border-top:1px solid var(--admin-line); margin-top:20px; padding-top:16px; }
.client-purchases h4 { font-size:14px; margin-bottom:12px; }
.client-purchases a { display:flex; justify-content:space-between; gap:12px; padding:12px 0; color:inherit; text-decoration:none; border-bottom:1px solid var(--admin-line); }
.client-purchases a:hover { color:#d9b382; }
.client-purchases small { display:block; font-size:12px; }
.client-purchases strong { white-space:nowrap; font-size:14px; }
.client-delete { margin-top:18px; border:0; background:none; color:#c6a69c; cursor:pointer; font:inherit; font-size:13px; }
.client-delete:disabled { opacity:.45; cursor:default; }
.client-card details { margin-top:18px; font-size:14px; }
.client-notes { white-space:pre-wrap; overflow-wrap:anywhere; margin-top:10px; }
.client-dialog { margin:auto; width:min(740px,calc(100vw - 28px)); max-height:90vh; overflow:auto; padding:28px; border:1px solid #b98b5960; border-radius:20px; background:var(--admin-panel); color:#eae5de; }
.client-dialog::backdrop { background:#0b1015aa; backdrop-filter:blur(4px); }
.client-dialog-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; }
.client-dialog h2 { font:30px Fraunces,serif; }
.client-type-label { display:grid; gap:8px; margin-bottom:20px; }
.client-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.client-form-grid label { display:grid; gap:7px; font-size:14px; }
.client-form-grid .hidden { display:none; }
.client-form-wide { grid-column:1/-1; }
.client-dialog .notice { margin-top:14px; }
.client-dialog-actions { display:flex; justify-content:flex-end; gap:12px; margin-top:22px; }
html[data-admin-theme="light"] .client-dialog { color:#352e27; }
html[data-admin-theme="light"] :is(.client-overview strong,.client-avatar,.client-card-heading small) { color:#835b32; }
html[data-admin-theme="light"] .client-delete { color:#8a5f51; }
@media(max-width:760px){.client-overview{grid-template-columns:1fr 1fr}.client-form-grid{grid-template-columns:1fr}.client-card{padding:18px}.client-dialog{padding:20px}.client-card-heading{flex-wrap:wrap}.client-purchases a{flex-wrap:wrap}}

/* A single directory, with expandable client records. */
#clients-view > .admin-top h2 { font: 38px Fraunces,serif; }
.client-overview { gap:0; border-block:1px solid var(--admin-line); padding:20px 0; margin:26px 0; }
.client-overview > div { background:none; border:0; border-radius:0; padding:0 24px; border-right:1px solid var(--admin-line); }
.client-overview > div:first-child { padding-left:0; }
.client-overview > div:last-child { border-right:0; }
.client-overview strong { font-size:28px; margin-bottom:5px; }
.client-filters { padding-bottom:6px; }
.client-filters label:first-child { flex:3 1 300px; }
.client-directory { border:1px solid var(--admin-line); border-radius:16px; overflow:hidden; background:var(--admin-panel); }
.client-record + .client-record { border-top:1px solid var(--admin-line); }
.client-record-summary { display:grid; grid-template-columns:minmax(200px,1.5fr) minmax(190px,1.3fr) minmax(120px,1fr) 90px 20px; align-items:center; gap:20px; padding:22px 24px; cursor:pointer; list-style:none; }
.client-record-summary::-webkit-details-marker { display:none; }
.client-record-summary:hover,.client-record[open] > summary { background:#b98b590b; }
.client-record-summary:focus-visible { outline:2px solid var(--copper); outline-offset:-3px; }
.client-identity { display:flex; align-items:center; gap:14px; min-width:0; }
.client-identity strong { display:block; font-size:16px; font-weight:650; overflow-wrap:anywhere; }
.client-identity small { display:block; margin-top:5px; font-size:13px; color:#c8aa89; }
.client-identity .client-avatar { width:42px; height:42px; border-radius:50%; font:17px Manrope,sans-serif; }
.client-summary-contact { font-size:14px; min-width:0; overflow-wrap:anywhere; }
.client-summary-contact small { display:block; margin-top:5px; font-size:13px; opacity:.7; }
.client-summary-city { font-size:14px; opacity:.75; overflow-wrap:anywhere; }
.client-summary-sales { font-size:13px; white-space:nowrap; }
.client-summary-sales b { font-size:17px; color:#d4ad7e; padding-right:3px; }
.client-chevron { width:18px; height:18px; fill:none; stroke:#b98b59; stroke-width:1.5; transition:transform .18s; }
.client-record[open] .client-chevron { transform:rotate(90deg); }
.client-record-body { display:grid; grid-template-columns:1fr 1fr; gap:32px; padding:26px 28px; border-top:1px solid var(--admin-line); }
.client-record-info,.client-record-sales { min-width:0; }
.client-detail-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:18px; }
.client-detail-heading h3 { font:21px Fraunces,serif; }
.client-record-sales { border-left:1px solid var(--admin-line); padding-left:28px; }
.client-record-sales .client-purchases { border:0; padding:0; margin:0; }
.client-record-sales details { margin-top:18px; font-size:14px; }
html[data-admin-theme="light"] .client-identity small,html[data-admin-theme="light"] .client-summary-sales b { color:#88623c; }
@media(max-width:1250px){.client-record-summary{grid-template-columns:minmax(190px,1.4fr) minmax(170px,1fr) 85px 18px;gap:14px}.client-summary-city{display:none}}
@media(max-width:760px){.client-overview{row-gap:20px}.client-overview > div{padding:0 14px}.client-overview > div:nth-child(odd){padding-left:0}.client-overview > div:nth-child(even){border-right:0}.client-record-summary{grid-template-columns:minmax(0,1fr) 70px 18px;padding:18px;gap:10px}.client-summary-contact{grid-column:1;grid-row:2;padding-left:56px}.client-summary-sales{grid-column:2;grid-row:1}.client-chevron{grid-column:3;grid-row:1}.client-record-body{grid-template-columns:1fr;padding:20px;gap:24px}.client-record-sales{border-left:0;border-top:1px solid var(--admin-line);padding:20px 0 0}.client-identity strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.client-chevron{transition:none}}
.client-summary-contact > span,.client-summary-contact > small { display:flex; align-items:center; gap:9px; }
.client-summary-contact svg,.client-edit-button svg,.client-contact-icon svg,.client-delete-symbol svg { width:18px; height:18px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.client-summary-contact svg { color:#bd956b; }
.client-contact { display:grid; gap:18px; }
.client-contact-line { display:flex; align-items:flex-start; gap:12px; }
.client-contact-icon { display:grid; place-items:center; width:36px; height:36px; flex:0 0 36px; border:1px solid #b98b5930; border-radius:10px; color:#c5a077; background:#b98b590b; }
.client-contact-line small { display:block; font-size:12px; color:#acaaa5; line-height:1.3; margin-bottom:5px; }
.client-contact-line p { font-size:14px; line-height:1.6; }
.client-contact-line > div { min-width:0; }
.client-edit-button { display:inline-flex; align-items:center; gap:9px; border:1px solid #b98b5950; background:#b98b5910; color:#dec09c; border-radius:10px; padding:10px 14px; box-shadow:none; font-size:13px; white-space:nowrap; }
.client-edit-button:hover { background:#b98b5920; border-color:#b98b5980; }
.client-delete-dialog { width:min(460px,calc(100vw - 28px)); padding:32px; }
.client-delete-symbol { display:grid; place-items:center; width:52px; height:52px; border:1px solid #b98b5950; border-radius:16px; background:#b98b5910; color:#d4ab7b; margin-bottom:24px; }
.client-delete-symbol svg { width:24px; height:24px; }
.client-delete-dialog h2 { font-size:28px; margin:8px 0 16px; }
#client-delete-description { line-height:1.8; font-size:15px; overflow-wrap:anywhere; }
.client-delete-confirm { background:#86564c; border:1px solid #a7786e; color:#fff; border-radius:10px; box-shadow:none; }
.client-delete-confirm:hover { background:#75493f; }
.client-delete-dialog .client-dialog-actions { flex-wrap:wrap; }
html[data-admin-theme="light"] .client-edit-button { color:#805a34; }
html[data-admin-theme="light"] .client-contact-line small { color:#776f65; }
html[data-admin-theme="light"] :is(.client-contact-icon,.client-summary-contact svg,.client-delete-symbol) { color:#94704a; }
.client-copy-email { display:inline-grid; place-items:center; flex:0 0 28px; width:28px; height:28px; padding:5px; border:1px solid transparent; border-radius:7px; background:transparent; color:#c4a17b; cursor:pointer; }
.client-copy-email:hover { background:#b98b5918; border-color:#b98b5940; }
.client-copy-email:focus-visible { outline:2px solid var(--copper); outline-offset:2px; }
.client-copy-email svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.client-contact-value { display:flex; align-items:center; gap:8px; }
.client-contact-value > span,.client-summary-contact small > span { min-width:0; overflow-wrap:anywhere; }
.client-copy-notice { position:fixed; bottom:28px; left:50%; transform:translateX(-50%); max-width:calc(100vw - 32px); padding:14px 20px; border:1px solid #b98b5960; border-radius:12px; background:var(--admin-panel); color:#d9b489; font-size:14px; z-index:6000; opacity:0; pointer-events:none; transition:opacity .18s; }
.client-copy-notice.is-visible { opacity:1; }
html[data-admin-theme="light"] .client-copy-email,html[data-admin-theme="light"] .client-copy-notice { color:#835c36; }
@media(pointer:coarse){.client-copy-email{width:40px;height:40px;flex-basis:40px}}
@media(prefers-reduced-motion:reduce){.client-copy-notice{transition:none}}
