/* Compact profile: full-width sections, one scroll area, retained forms and actions. */
body > dialog#client-drawer.client-profile-compact {width:min(1060px,calc(100vw - 32px));height:fit-content}
#client-drawer.client-profile-compact .client-drawer-header {padding:16px 20px;gap:12px}
#client-drawer.client-profile-compact .client-drawer-title {font-size:24px}
#client-drawer.client-profile-compact .client-drawer-subtitle {margin-top:5px}
#client-drawer.client-profile-compact .client-drawer-body {display:block;padding:16px 20px;background:var(--ws-bg)}
#client-drawer.client-profile-compact .client-drawer-body > * {width:100%;max-width:none;margin:0 0 12px}
#client-drawer.client-profile-compact .client-drawer-body > :last-child {margin-bottom:0}
#client-drawer.client-profile-compact .client-drawer-stats {gap:10px}
#client-drawer.client-profile-compact .client-drawer-stat {display:flex;align-items:center;gap:10px;padding:10px 12px;min-height:60px}
#client-drawer.client-profile-compact .client-drawer-stat .value {font-size:24px;line-height:1.25;flex-shrink:0}
#client-drawer.client-profile-compact .client-drawer-stat .label {font-size:12px;line-height:1.4;margin:0}
#client-drawer.client-profile-compact .client-drawer-stat--next {flex-wrap:wrap;gap:3px 10px}
#client-drawer.client-profile-compact .client-drawer-stat--next .value {font-size:18px}
#client-drawer.client-profile-compact .client-drawer-section {display:block;padding:14px;min-height:0;min-width:0;margin:0;border-radius:12px}
#client-drawer.client-profile-compact .client-drawer-section h3 {font-size:17px;margin:0 0 10px}
#client-drawer.client-profile-compact .client-profile-section-heading {margin:0 0 10px;gap:8px}
#client-drawer.client-profile-compact .client-profile-section-heading h3 {margin:0}
#client-drawer.client-profile-compact .client-drawer-section h3::before {background:#b94639}
#client-drawer.client-profile-compact .client-profile-finance-grid {gap:8px}
#client-drawer.client-profile-compact .client-profile-finance-card {padding:10px;gap:6px}
#client-drawer.client-profile-compact .client-profile-finance-card > span {font-size:12px;min-height:0}
#client-drawer.client-profile-compact .client-profile-finance-card > strong {font-size:23px}
#client-drawer.client-profile-compact .client-profile-finance-card small[hidden] {display:none}
#client-drawer.client-profile-compact .client-profile-finance-help {margin-top:8px}
#client-drawer.client-profile-compact .client-profile-finance-help summary {font-size:12px;color:var(--ws-muted)}
#client-drawer.client-profile-compact .client-profile-finance-help dl {font-size:13px;line-height:1.5}
#client-drawer.client-profile-compact .client-profile-finance-help dd {margin:0 0 8px;color:var(--ws-muted)}
#client-drawer.client-profile-compact .client-profile-columns {display:grid;width:100%;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:12px;align-items:start}
#client-drawer.client-profile-compact :is(.client-profile-main,.client-profile-aside) {display:grid;gap:12px;min-width:0;width:100%;align-items:start}
#client-drawer.client-profile-compact #client-funds {gap:12px;margin:0;min-width:0}
#client-drawer.client-profile-compact [data-funds-message]:empty {display:none}
#client-drawer.client-profile-compact .client-drawer-abonements {gap:10px}
#client-drawer.client-profile-compact .client-drawer-abonement {padding:12px}
#client-drawer.client-profile-compact .client-drawer-abonement-head {padding:12px;margin:-12px -12px 10px;gap:8px}
#client-drawer.client-profile-compact .client-drawer-abonement .package-name {font-size:15px}
#client-drawer.client-profile-compact .client-profile-sessions {margin:0 0 8px;gap:6px}
#client-drawer.client-profile-compact .client-profile-sessions strong {font-size:28px}
#client-drawer.client-profile-compact progress::-webkit-progress-value {background:#b94639}
#client-drawer.client-profile-compact progress::-moz-progress-bar {background:#b94639}
#client-drawer.client-profile-compact .client-drawer-item-meta {margin:6px 0;font-size:13px}
#client-drawer.client-profile-compact .client-drawer-finance {margin:8px 0;padding:8px 0}
#client-drawer.client-profile-compact .client-drawer-finance-row {font-size:13px;line-height:1.55}
#client-drawer.client-profile-compact .client-drawer-actions {display:flex;align-items:start;flex-wrap:wrap;margin-top:10px;gap:8px}
#client-drawer.client-profile-compact .client-drawer-actions > button {flex:0 1 auto;min-height:36px;padding:8px 11px;font-size:13px}
#client-drawer.client-profile-compact button[data-client-package-debit] {background:#943a30;border-color:#b64d3e;color:#fff}
#client-drawer.client-profile-compact .client-package-more {flex:1 1 180px;min-width:0}
#client-drawer.client-profile-compact .client-package-more > summary {font-size:13px;line-height:20px;border:1px solid var(--ws-line);border-radius:8px;padding:7px 10px}
#client-drawer.client-profile-compact .client-package-more-actions {display:grid;gap:6px;padding:8px 0}
#client-drawer.client-profile-compact .client-package-more-actions button {width:100%;text-align:left}
#client-drawer.client-profile-compact .client-profile-services {grid-template-columns:1fr;gap:8px}
#client-drawer.client-profile-compact .client-profile-service {padding:10px;gap:4px}
#client-drawer.client-profile-compact .client-profile-quick > .muted {margin-top:8px}
#client-drawer.client-profile-compact #client-profile-book-error:empty {display:none}
#client-drawer.client-profile-compact .client-drawer-empty {padding:10px;font-size:13px}
#client-drawer.client-profile-compact .client-profile-history > summary {font-size:15px;border-left-color:#b94639}
#client-drawer.client-profile-compact :is(.client-wallet,.family-packages) p {margin:8px 0;font-size:13px;line-height:1.5}
#client-drawer.client-profile-compact :is(.client-wallet,.family-packages) details {margin-top:10px}
#client-drawer.client-profile-compact :is(.client-wallet,.family-packages) summary {font-size:13px;line-height:1.5}
#client-drawer.client-profile-compact .client-funds-help {margin:6px 0 10px}
#client-drawer.client-profile-compact .client-funds-help summary {font-size:12px;color:var(--ws-muted)}
#client-drawer.client-profile-compact .family-package-card {padding:10px;margin-top:8px;font-size:13px}
#client-drawer.client-profile-compact [data-wallet-balance] {font-size:22px}
#client-drawer.client-profile-compact .wallet-fields {grid-template-columns:1fr;gap:8px}
#client-drawer.client-profile-compact .client-profile-aside :is(input,select,textarea) {max-width:100%;min-width:0}
#client-drawer.client-profile-compact .client-profile-aside .client-profile-section-heading > span {font-size:11px}
#client-drawer.client-profile-compact .client-profile-management {padding-top:8px;margin-top:8px}
#client-drawer.client-profile-compact .client-profile-aside .client-drawer-section > p {margin:8px 0}
#client-drawer.client-profile-compact .client-profile-aside summary {font-size:13px}
#client-package-debit-dialog {width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--ws-line);border-radius:16px;background:var(--ws-panel);color:var(--ws-ink);overflow:auto}
#client-package-debit-dialog .client-package-debit-header {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(115deg,#171b22,#382126);border-bottom:1px solid #4c373b;color:#f4f4f6}
#client-package-debit-dialog h2 {font-size:21px;margin:0}
#client-package-debit-dialog .client-package-debit-header p {font-size:13px;margin:5px 0 0;color:#c7cbd3}
#client-package-debit-dialog [data-close] {min-width:38px;min-height:38px;color:inherit}
#client-package-debit-dialog .client-package-debit-body {padding:18px 20px}
#client-package-debit-dialog p {font-size:14px;line-height:1.5;margin:10px 0}
#client-package-debit-dialog [data-debit-message]:empty {display:none}
#client-package-debit-dialog [data-debit-message] {color:var(--ws-ink);padding:10px;border-left:3px solid #b94639;background:var(--ws-raised)}
#client-package-debit-dialog .client-package-debit-balance {display:flex;justify-content:space-between;gap:10px}
#client-package-debit-dialog .client-package-visit-list {display:grid;gap:8px;margin:14px 0}
#client-package-debit-dialog [data-debit-visit] {display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:12px;border:1px solid var(--ws-line);border-radius:10px;background:var(--ws-raised);color:var(--ws-ink);white-space:normal}
#client-package-debit-dialog [data-debit-visit] > span {display:grid;gap:4px;min-width:0}
#client-package-debit-dialog [data-debit-visit] strong {font-size:14px}
#client-package-debit-dialog [data-debit-visit] span span {font-size:13px;color:var(--ws-muted)}
#client-package-debit-dialog [data-debit-visit] > b {white-space:nowrap;font-size:16px}
#client-package-debit-dialog .client-package-confirm {padding:14px;background:var(--ws-raised);border:1px solid var(--ws-line);border-radius:12px}
#client-package-debit-dialog .client-package-confirm-total {display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0;border-block:1px solid var(--ws-line);font-size:16px}
#client-package-debit-dialog .client-package-debit-actions {display:flex;justify-content:space-between;gap:12px;margin:14px 0}
#client-package-debit-dialog .primary {background:#943a30;border-color:#b64d3e;color:#fff}
#client-package-debit-dialog button {min-height:40px}
#client-package-debit-dialog .client-package-debit-success > strong {font-size:22px}
#client-package-debit-dialog :is(button,summary):focus-visible {outline:2px solid #c75143;outline-offset:2px}
:root[data-theme="light"] #client-package-debit-dialog .client-package-debit-header {background:linear-gradient(115deg,#edeae6,#f3ded7);color:#282b31;border-color:#d8c9c3}
:root[data-theme="light"] #client-package-debit-dialog .client-package-debit-header p {color:#535b66}
@media(max-width:800px){
 #client-drawer.client-profile-compact .client-profile-columns {grid-template-columns:1fr}
 #client-drawer.client-profile-compact .client-profile-finance-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 #client-drawer.client-profile-compact .client-drawer-stats {grid-template-columns:repeat(2,minmax(0,1fr))}
 #client-drawer.client-profile-compact .client-drawer-body {padding:12px}
 #client-drawer.client-profile-compact .client-drawer-header {padding:14px}
 #client-drawer.client-profile-compact .client-drawer-stat {min-height:58px}
 #client-drawer.client-profile-compact .client-drawer-actions > button {flex:1 1 auto}
}
@media(max-width:420px){
 #client-drawer.client-profile-compact .client-profile-finance-card > span {min-height:34px}
 #client-package-debit-dialog .client-package-debit-body {padding:14px}
 #client-package-debit-dialog .client-package-debit-actions {flex-wrap:wrap}
 #client-package-debit-dialog .client-package-debit-actions button {flex:1}
}

#client-drawer.client-profile-compact .client-drawer-body > .client-drawer-section {margin-bottom:12px}
#client-drawer.client-profile-compact .client-drawer-body > .client-drawer-section:last-child {margin-bottom:0}
#client-drawer.client-profile-compact .client-drawer-abonement {display:block}
#client-drawer.client-profile-compact .loyalty-section-head {margin-bottom:8px}
#client-drawer.client-profile-compact .loyalty-chips {margin:8px 0}
#client-drawer.client-profile-compact .loyalty-profile-number {font-size:24px}
#client-drawer.client-profile-compact .primary {background:#943a30;border-color:#b64d3e;color:#fff;box-shadow:0 3px 10px #0002}
#client-drawer.client-profile-compact .primary:hover:not(:disabled) {background:#a84236;border-color:#cb5b49}


/* Retain the card gutter over the older zero-horizontal-padding rule. */
#client-drawer.client-profile-compact .client-profile-training-debts .training-debt-row {padding:12px 14px;overflow-wrap:anywhere}
#client-drawer.client-profile-compact .client-profile-training-debts .training-debt-row .client-drawer-actions > button {max-width:100%;white-space:normal}
