/* Player and clients refinements for the approved 390px layout. */
.player-page { max-width:920px; }
.player-heading { margin:4px 0 14px; gap:14px; }
.player-heading h1 { overflow-wrap:anywhere; }
.player-groups { margin:6px 0 2px; color:#C9D1CB; font-size:14px; }
.player-tenure { margin:0; color:#9DA9A0; font-size:13px; }
.player-page .card-section-label { font-size:13px; color:#A9B4AC; font-weight:700; margin:0 0 6px; }
.player-page h3 { margin:0 0 4px; font-size:18px; line-height:1.4; }
.player-page .now-card { padding:16px; margin-bottom:12px; color:#EDEFE6; background:#1C2E20; border-color:#324C37; }
.player-page .now-card--debt { background:#2A1515; border-color:#4A2422; }
.player-page .now-card--debt .card-section-label { color:#C99A94; }
.player-page .now-card--waiting { background:#2A1F2E; border-color:#4D3655; }
.player-page .now-card--waiting .card-section-label { color:#DDB0E6; }
.player-page .now-card--ended,.player-page .now-card--neutral { background:#1E2621; border-color:#344039; }
.player-page .now-debt-total { margin:6px 0 4px; font-size:24px; line-height:1.3; font-weight:750; color:#EE8A80; }
.player-page .now-debt-detail { margin:0 0 14px; color:#DFC1BD; font-size:13px; }
.player-page .current-purchase { padding:16px; margin-bottom:12px; }
.player-page .current-purchase .split { margin-bottom:6px; }
.player-page .current-purchase .card-section-label { margin:0; }
.current-purchase-caption { color:#9DA9A0; font-size:13px; margin:0 0 12px; }
.player-page .current-stats { margin-top:12px; gap:6px; }
.player-page .current-stats>div { padding:10px 8px; }
.player-page .current-stats small { color:#9DA9A0; font-size:12px; }
.player-page .current-stats strong { font-size:15px; }
.player-contacts { padding:6px 16px; }
.player-contact-row { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:52px; }
.player-contact-row+.player-contact-row { border-top:1px solid var(--line); }
.player-contact-row>span { min-width:0; overflow-wrap:anywhere; }
.player-contact-row .button-link { min-height:44px; flex:none; padding:8px 12px; font-size:14px; background:transparent; }
.player-more-content>.player-more-item,.player-more-content>button.player-more-item,
.player-more-form>.player-more-item,.player-more-content details.player-more-item>summary { padding:12px 14px; min-height:52px; text-align:left; justify-content:initial; margin:0; }
.player-more-content details.player-more-item { padding:0; }
.player-more-item strong { font-size:14px; }
.player-more-item small { font-size:13px; }
.player-page .purchase-card { margin-bottom:8px; }
.player-page .purchase-card--current { border-color:#66796B; }
.player-page .purchase-details>summary { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 8px; padding:14px; min-height:72px; }
.purchase-summary-title strong { font-size:16px; overflow-wrap:anywhere; }
.purchase-summary-dates,.purchase-debt { grid-column:1 / -1; }
.purchase-summary-dates { font-size:13px; font-weight:400; color:#9DA9A0; }
.purchase-debt { font-size:14px; font-weight:700; color:#EE8A80; }
.purchase-cancellations { padding:0 16px; margin-top:16px; }
.purchase-cancellations summary { min-height:52px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; font-weight:650; list-style:none; }
.purchase-cancellations summary::-webkit-details-marker { display:none; }
.purchase-cancellations summary::after { content:""; height:7px; width:7px; border-right:2px solid #A9B4AC; border-bottom:2px solid #A9B4AC; transform:rotate(45deg); margin-left:12px; flex:none; }
.purchase-cancellations details[open] summary::after { transform:rotate(225deg); }
.player-page dialog .stack>button { width:100%; min-height:52px; flex-direction:column; }
.clients-list .client-row>div:first-child { min-width:0; }
.clients-list .client-row small { font-size:13px; overflow-wrap:anywhere; }
.clients-list .client-row>div:first-child>strong { font-size:15px; }
@media(max-width:760px) {
  .player-heading>div:first-child { width:100%; }
  .player-heading h1 { font-size:24px; }
  .player-header-actions>button,.player-header-actions>details>summary { min-height:48px; }
  .player-page .now-debt-total { font-size:22px; }
  .player-page .now-card .primary { min-height:48px; }
  .player-page .current-stats strong { font-size:14px; }
  .player-page .section-heading { margin:20px 0 8px; font-size:18px; }
  .clients-filter-bar { flex-wrap:wrap; }
  .clients-filter-bar .status-tabs { flex-basis:100%; flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
  .clients-filter-bar .status-tabs a { flex:none; min-height:44px; }
  .clients-list .client-row { gap:12px; min-height:72px; }
  .clients-list .client-balance strong { font-size:14px; }
}
@media(max-width:359px) {
  .player-page .purchase-details>summary { grid-template-columns:1fr; }
  .player-page .purchase-details>summary>.badge { justify-self:start; }
  .player-page .current-stats { grid-template-columns:1fr; }
}

/* Case 35: consistent form labels and menu alignment. */
.manual-writeoff-dialog .writeoff-label {display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.writeoff-date-label {display:block;margin:4px 0 8px;font-weight:650}
.player-more-form {padding:0;width:100%}
.player-more-form>.player-more-item {width:100%;box-sizing:border-box}
.player-menu-icon {display:inline-block;width:24px;margin-right:6px;color:var(--muted);text-align:center}
.player-more-item strong {display:flex;align-items:baseline}
.player-menu-icon {flex:none}
.player-page .writeoff-toast {position:relative;bottom:auto;left:auto;transform:none;margin:0;width:100%;max-width:100%;box-sizing:border-box}
.player-history [data-manual-return] button {min-height:44px;min-width:44px;display:inline-flex;align-items:center;padding:10px 0}
.older-purchases>summary,.history-all,.history-pagination .button-link {min-height:44px;display:flex;align-items:center;padding:10px 12px}
.older-purchases>summary{cursor:pointer;margin-bottom:8px;border:1px solid var(--line);border-radius:12px}
.history-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.history-filter select{width:auto;min-width:180px;flex:1}
.history-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px}
.history-day{font-size:15px;margin:18px 0 8px}
.manual-history-row{overflow-wrap:anywhere}
.older-purchases:not([open])>.purchase-card{display:none}
.older-purchases>summary::after{content:'▾';margin-left:auto}
.older-purchases[open]>summary::after{content:'▴'}
.player-history summary{min-height:44px;display:flex;align-items:center;cursor:pointer}

.player-contact-row--phone-search { flex-wrap:wrap; }
.player-contact-row--phone-search .button-link { width:100%; text-align:center; }
.player-page .badge.resuming{white-space:normal;max-width:100%;line-height:1.5;text-align:left;background:#203329;color:#d9e6dc}
.player-page .current-purchase .split:has(.resuming){flex-wrap:wrap;align-items:flex-start}
