/* Client account and the unified entry use the existing palette and controls. */
.account-entry{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;white-space:nowrap;font-size:.85rem;color:inherit}
.account-entry .icon{width:22px;height:22px;flex-shrink:0}
.client-auth{max-width:620px;min-height:55vh}
.client-auth-card{padding:clamp(20px,4vw,44px);border:1px solid var(--border);border-radius:24px;background:var(--surface)}
.client-auth-card h1,.client-account h1{font-family:var(--font-heading,Georgia,serif);font-weight:400;font-size:clamp(30px,4vw,44px);line-height:1.15;margin:0 0 20px}
.client-auth-card form,.client-profile form{display:grid;gap:16px}
.client-auth-links{margin-top:24px}
.client-auth-links a{color:var(--text);text-underline-offset:4px}
.client-notice{padding:12px;border:1px solid var(--border);border-radius:12px}
.client-account-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.client-tabs{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.client-tabs a{padding:10px 16px;border:1px solid var(--border);border-radius:24px;color:inherit;text-decoration:none}
.client-tabs [aria-current]{background:var(--accent);color:var(--accent-text)}
#client-account-view{margin-bottom:28px}
.client-visits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.client-visit{padding:24px;border:1px solid var(--border);border-radius:20px;background:var(--surface);min-width:0}
.client-visit h2{font-size:22px}
.client-visit p{overflow-wrap:break-word}
.client-visit .visit-services li{flex-wrap:wrap;gap:8px}
.client-profile{max-width:640px;display:grid;gap:32px}
.client-profile section{padding:24px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}
#client-visit-dialog{width:min(600px,calc(100% - 24px));max-height:90vh;overflow:auto;padding:28px}
#client-visit-body{padding-top:20px}
.booking-account-hint{margin-bottom:20px}
.booking-account-hint a{color:inherit}
@media(max-width:600px){.client-visits{grid-template-columns:1fr}.client-account-heading{align-items:flex-start}.client-tabs{gap:8px}.client-tabs a{padding:9px 12px;font-size:.85rem}.client-visit{padding:18px}.account-entry{gap:.2rem;font-size:.73rem}.account-entry .icon{width:18px;height:18px}.site-header .header-tools{gap:8px}.client-auth{padding-top:32px}.client-profile section{padding:18px}}
@media(max-width:450px){.site-header .header-tools{gap:5px}.site-header .account-entry{max-width:66px;white-space:normal;line-height:1.1}.site-header .account-entry span{max-width:45px}}
