

/* Stage 6C4C: identity order/recharge reversal workbench. */
.identity-reversal-shell { display:grid; gap:16px; margin-top:18px; padding:18px; border:1px solid rgba(255,255,255,.1); border-radius:18px; background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018)); min-width:0; }
.identity-reversal-head,.identity-reversal-card-head,.identity-reversal-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; min-width:0; }
.identity-reversal-head h3,.identity-reversal-detail-head h3 { margin:0; color:var(--s6-text,#f5f2fb); font-size:18px; }
.identity-reversal-head p,.identity-reversal-detail-head p { margin:6px 0 0; color:var(--s6-muted,#9c97aa); font-size:12px; line-height:1.55; }
.identity-reversal-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:5px; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:rgba(0,0,0,.18); }
.identity-reversal-tab,.identity-reversal-filter { min-height:46px; border:1px solid transparent; border-radius:10px; color:var(--s6-muted,#9c97aa); background:transparent; cursor:pointer; font:inherit; font-weight:700; }
.identity-reversal-tab.is-active,.identity-reversal-filter.is-active { color:#fff; border-color:rgba(240,113,177,.45); background:rgba(240,113,177,.13); }
.identity-reversal-toolbar { display:grid; gap:10px; min-width:0; }
.identity-reversal-search { display:block; min-width:0; }
.identity-reversal-search input { width:100%; min-height:46px; border:1px solid rgba(255,255,255,.12); border-radius:10px; padding:0 13px; color:var(--s6-text,#f5f2fb); background:rgba(0,0,0,.18); }
.identity-reversal-filters { display:flex; flex-wrap:wrap; gap:8px; }
.identity-reversal-filter { min-height:44px; padding:0 12px; border-color:rgba(255,255,255,.1); font-size:12px; }
.identity-reversal-list { display:grid; gap:10px; min-width:0; }
.identity-reversal-card { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(0,0,0,.12); }
.identity-reversal-card-head strong,.identity-reversal-card-head span { display:block; overflow-wrap:anywhere; word-break:break-word; }
.identity-reversal-card-head strong { color:var(--s6-text,#f5f2fb); font-size:14px; }
.identity-reversal-card-head > div > span { margin-top:4px; color:var(--s6-muted,#9c97aa); font-size:11px; }
.identity-reversal-facts,.identity-reversal-detail-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 14px; margin:0; min-width:0; }
.identity-reversal-facts div,.identity-reversal-detail-facts div { min-width:0; }
.identity-reversal-facts dt,.identity-reversal-detail-facts dt { color:var(--s6-muted,#9c97aa); font-size:11px; }
.identity-reversal-facts dd,.identity-reversal-detail-facts dd { margin:3px 0 0; color:var(--s6-text,#f5f2fb); font-size:13px; overflow-wrap:anywhere; word-break:break-word; }
.identity-reversal-card-actions,.identity-reversal-dialog-actions { display:flex; flex-wrap:wrap; gap:8px; }
.identity-reversal-card-actions button,.identity-reversal-dialog-actions button,.identity-reversal-state button,.identity-reversal-error button { min-height:46px; }
.identity-reversal-card-actions button { min-height:46px; }
.identity-reversal-dialog-actions button { min-height:46px; }
.identity-reversal-state { display:grid; place-items:center; gap:10px; min-height:140px; padding:18px; color:var(--s6-muted,#9c97aa); text-align:center; }
.identity-reversal-state[data-tone="error"],.identity-reversal-error { color:#ffd2df; }
.identity-reversal-detail-backdrop { position:fixed; inset:0; z-index:80; display:grid; place-items:end center; padding:18px; background:rgba(6,5,11,.72); }
.identity-reversal-detail { display:grid; gap:16px; width:min(680px,100%); max-height:min(88vh,760px); overflow:auto; padding:20px; border:1px solid rgba(255,255,255,.14); border-radius:18px 18px 8px 8px; background:#18151f; box-shadow:0 22px 70px rgba(0,0,0,.42); }
.identity-reversal-detail .icon-btn { min-width:46px; min-height:46px; }
.identity-reversal-detail > .ghost { min-height:46px; }
.identity-reversal-history { display:grid; gap:8px; }
.identity-reversal-history h4 { margin:0; color:var(--s6-text,#f5f2fb); font-size:14px; }
.identity-reversal-history article { display:grid; grid-template-columns:auto auto; gap:4px 10px; padding:10px; border:1px solid rgba(255,255,255,.1); border-radius:10px; }
.identity-reversal-history article p,.identity-reversal-history article small { grid-column:1 / -1; margin:0; overflow-wrap:anywhere; word-break:break-word; }
.identity-reversal-history article span,.identity-reversal-history article small,.identity-reversal-muted { color:var(--s6-muted,#9c97aa); font-size:11px; }
.identity-reversal-action-form { display:grid; gap:8px; }
.identity-reversal-action-form label { color:var(--s6-text,#f5f2fb); font-size:12px; font-weight:700; }
.identity-reversal-action-form textarea { width:100%; min-height:104px; resize:vertical; border:1px solid rgba(255,255,255,.12); border-radius:10px; padding:12px; color:var(--s6-text,#f5f2fb); background:rgba(0,0,0,.18); }
.identity-reversal-detail-copy { display:grid; gap:5px; padding:12px; border:1px solid rgba(255,255,255,.1); border-radius:10px; background:rgba(0,0,0,.12); }
.identity-reversal-detail-copy h4 { margin:0; color:var(--s6-muted,#9c97aa); font-size:11px; }
.identity-reversal-detail-copy p { margin:0 0 6px; color:var(--s6-text,#f5f2fb); font-size:13px; line-height:1.55; overflow-wrap:anywhere; word-break:break-word; }
.identity-reversal-error { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:12px; border:1px solid rgba(255,113,150,.32); border-radius:10px; background:rgba(255,65,120,.08); }
@media (max-width:640px) {
  .identity-reversal-shell { padding:14px; border-radius:14px; }
  .identity-reversal-head,.identity-reversal-card-head,.identity-reversal-detail-head { display:grid; grid-template-columns:minmax(0,1fr) auto; }
  .identity-reversal-facts,.identity-reversal-detail-facts { grid-template-columns:1fr; }
  .identity-reversal-filters,.identity-reversal-card-actions,.identity-reversal-dialog-actions { display:grid; grid-template-columns:1fr; }
  .identity-reversal-filters button,.identity-reversal-card-actions button,.identity-reversal-dialog-actions button { width:100%; }
  .identity-reversal-detail-backdrop { padding:0; }
  .identity-reversal-detail { max-height:94vh; border-radius:18px 18px 0 0; }
}

/* Stage 6D1: owner-only personnel management. */
.identity-reversal-rule-note { display:grid; gap:5px; margin:0 0 12px; padding:11px 12px; border:1px solid rgba(239,121,157,.25); border-radius:10px; background:rgba(239,121,157,.06); color:var(--s6-muted); font-size:12px; line-height:1.55; }
.identity-reversal-rule-note strong { color:#ffd4e2; font-size:12px; }
.personnel-page { display:grid; gap:16px; min-width:0; }
.personnel-page-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; min-width:0; }
.personnel-page-head > div { min-width:0; }
.personnel-page-head h3 { margin:4px 0 6px; color:var(--s6-text); font-size:22px; letter-spacing:-.02em; }
.personnel-page-head p { max-width:760px; margin:0; color:var(--s6-muted); font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.personnel-page-head > button { min-height:46px; flex:0 0 auto; }
.personnel-count { display:inline-grid; place-items:center; min-width:24px; min-height:24px; padding:0 6px; border-radius:999px; background:rgba(255,255,255,.12); font-size:11px; }
.personnel-stat-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; min-width:0; }
.personnel-staff-page .personnel-stat-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.personnel-stat { display:grid; gap:7px; min-height:78px; padding:13px 14px; border:1px solid var(--s6-line); border-radius:12px; background:linear-gradient(145deg,rgba(28,31,42,.9),rgba(18,20,28,.96)); }
.personnel-stat span { color:var(--s6-muted); font-size:11px; }
.personnel-stat strong { color:var(--s6-text); font-size:24px; line-height:1; }
.personnel-stat-accent { border-color:rgba(239,121,157,.35); background:rgba(239,121,157,.07); }
.personnel-stat-accent strong { color:#ffd4e2; }
.personnel-application-note { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:12px; min-width:0; padding:12px 14px; border:1px solid rgba(134,209,170,.28); border-radius:12px; background:rgba(134,209,170,.06); color:#d9ffe6; }
.personnel-application-note span { min-width:0; color:#b7f3cf; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.personnel-application-note button { min-height:44px; }
.personnel-toolbar { display:grid; grid-template-columns:minmax(260px,1fr) auto; align-items:center; gap:12px; min-width:0; }
.personnel-toolbar .searchbar { min-width:0; }
.personnel-filter { display:flex; flex-wrap:wrap; gap:7px; min-width:0; }
.personnel-filter button { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-width:72px; min-height:44px; padding:8px 11px; border:1px solid var(--s6-line); border-radius:10px; background:#151820; color:var(--s6-muted); cursor:pointer; }
.personnel-toolbar .searchbar input { min-height:44px; }
.personnel-toolbar .searchbar button { min-height:44px; }
.personnel-filter button:hover,.personnel-filter button.active { border-color:rgba(239,121,157,.55); background:rgba(239,121,157,.1); color:#ffd4e2; }
.personnel-filter button span { min-width:20px; padding:2px 5px; border-radius:999px; background:rgba(255,255,255,.08); font-size:10px; }
.personnel-table { min-width:0; }
.personnel-table table { min-width:980px; }
.personnel-table th,.personnel-table td { vertical-align:middle; }
.personnel-table .actions { flex-wrap:wrap; }
.personnel-table .mini { min-height:44px; }
.personnel-mobile-list { display:none; gap:12px; min-width:0; }
.personnel-task-card { display:grid; gap:12px; min-width:0; padding:15px; border:1px solid var(--s6-line); border-radius:14px; background:linear-gradient(145deg,rgba(28,31,42,.96),rgba(18,20,28,.98)); }
.personnel-task-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; min-width:0; }
.personnel-task-head > div { display:grid; gap:4px; min-width:0; }
.personnel-task-head strong { color:var(--s6-text); font-size:16px; overflow-wrap:anywhere; }
.personnel-task-head span:not(.tag) { color:var(--s6-muted); font-size:11px; overflow-wrap:anywhere; }
.personnel-primary-facts,.personnel-secondary-facts { display:flex; flex-wrap:wrap; gap:8px 14px; min-width:0; color:var(--s6-muted); font-size:12px; line-height:1.5; }
.personnel-primary-facts > span,.personnel-secondary-facts > span { min-width:0; overflow-wrap:anywhere; }
.personnel-card-actions { display:flex; flex-wrap:wrap; gap:8px; }
.personnel-card-actions button { min-width:112px; min-height:44px; }
.personnel-reactivate { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:44px; padding:8px 12px; border:1px solid rgba(83,209,142,.5); border-radius:9px; background:rgba(48,161,103,.13); color:#b9f5d1; font:inherit; font-weight:700; cursor:pointer; }
.personnel-reactivate:hover,.personnel-reactivate:focus-visible { border-color:rgba(105,232,165,.78); background:rgba(48,161,103,.22); color:#e2ffed; }
.personnel-reactivate i { width:16px; height:16px; }
.personnel-audio-button { min-height:44px !important; }
.personnel-audio-empty { min-height:30px; display:inline-flex; align-items:center; }
.personnel-empty { display:grid; gap:8px; place-items:center; min-height:190px; padding:26px; border:1px dashed var(--s6-line); border-radius:14px; text-align:center; }
.personnel-empty strong { color:var(--s6-text); font-size:15px; }
.personnel-empty span { color:var(--s6-muted); font-size:12px; line-height:1.5; }
.personnel-empty button { min-height:44px; }
.personnel-drawer-form { display:grid; gap:14px; min-width:0; }
.personnel-drawer-hint,.personnel-drawer-note { display:flex; align-items:flex-start; gap:8px; margin:0; padding:11px 12px; border:1px solid rgba(134,209,170,.25); border-radius:10px; background:rgba(134,209,170,.06); color:#b7f3cf; font-size:12px; line-height:1.55; }
.personnel-drawer-section { display:grid; gap:12px; padding:14px; border:1px solid var(--s6-line); border-radius:12px; background:rgba(18,20,28,.55); }
.personnel-drawer-section-head { display:flex; align-items:flex-start; gap:10px; }
.personnel-drawer-section-head > span { display:grid; place-items:center; width:26px; height:26px; flex:0 0 auto; border-radius:8px; background:rgba(239,121,157,.13); color:#ffd4e2; font-size:11px; }
.personnel-drawer-section-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.personnel-drawer-section-head p { margin:4px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.45; }
.personnel-drawer-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; min-width:0; }
.personnel-drawer-fields .field { min-width:0; }
.personnel-drawer-fields .field.full { grid-column:1 / -1; }
.personnel-drawer-fields label { display:block; min-height:20px; margin-bottom:6px; color:var(--s6-muted); font-size:11px; }
.personnel-drawer-fields input { width:100%; min-height:46px; }
.personnel-drawer-fields select { width:100%; min-height:46px; }
.personnel-drawer-fields textarea { width:100%; min-height:46px; }
.personnel-drawer-fields input:not([type="hidden"], [type="file"]),.personnel-drawer-fields select,.personnel-drawer-fields textarea { width:100%; min-height:46px; }
.personnel-drawer-fields textarea { min-height:96px; resize:vertical; }
.personnel-drawer-fields input[type="file"] { width:100%; min-height:46px; padding-block:10px; }
.personnel-readonly input { color:#c8c2d2; background:rgba(255,255,255,.035); }
.personnel-media-state { padding:11px 12px; border:1px dashed var(--s6-line); border-radius:9px; color:var(--s6-muted); font-size:12px; overflow-wrap:anywhere; }
.personnel-staff-page .range-bar { margin-top:0; }
.personnel-staff-page .range-bar button { min-height:44px; }
@media (max-width:900px) {
  .personnel-stat-grid,.personnel-staff-page .personnel-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .personnel-stat:last-child { grid-column:1 / -1; }
  .personnel-toolbar { grid-template-columns:1fr; }
  .personnel-filter { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
  .personnel-filter button { width:100%; }
  .personnel-table { display:none; }
  .personnel-mobile-list { display:grid; }
}
@media (min-width:901px) and (max-width:1100px) {
  .personnel-toolbar { grid-template-columns:1fr; }
  .personnel-filter { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
  .personnel-filter button { width:100%; }
  .personnel-table { display:none; }
  .personnel-mobile-list { display:grid; }
}
@media (max-width:640px) {
  .personnel-page-head { display:grid; gap:12px; }
  .personnel-page-head > button { width:100%; }
  .personnel-application-note { grid-template-columns:1fr; }
  .personnel-application-note button { width:100%; }
  .personnel-filter { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .personnel-drawer-fields { grid-template-columns:1fr; }
  .personnel-drawer-fields .field.full { grid-column:auto; }
  .personnel-card-actions { display:grid; grid-template-columns:1fr 1fr; }
  .personnel-card-actions button { width:100%; min-width:0; }
}.section-head div > span { color:var(--s6-muted);font-size:12px; }.order-card,
.split-box,
.shift-card { border-color:var(--s6-line);background:#1b1e27; }.status.owner { border-color:rgba(237,120,157,.35);background:var(--s6-pink-soft);color:#ffd0df; }.status.rejected { background:rgba(239,120,128,.13);color:#ffc8cc; }

/* The first complete 6A1 workspace: factual report queues and an action detail. */
.reports-page { display:grid; gap:14px; }.report-page-head { display:flex;align-items:end;justify-content:space-between;gap:18px;padding:2px 1px; }.report-page-head h3 { margin:0 0 5px;color:var(--s6-text);font-size:22px; }.report-page-head p { margin:0;color:var(--s6-muted);font-size:13px; }.report-tabs { width:max-content;max-width:100%;overflow:auto; }.report-search .searchbar { margin:0; }.report-review-workspace { display:grid;grid-template-columns:minmax(360px,.86fr) minmax(500px,1.14fr);min-height:600px;border:1px solid var(--s6-line);border-radius:16px;background:#11131a;overflow:hidden; }.report-review-stages { display:grid;align-content:start;gap:1px;border-right:1px solid var(--s6-line);background:#171a22; }.review-stage { padding:16px;border-bottom:1px solid var(--s6-line); }.review-stage:last-child { border-bottom:0; }.review-stage-head { display:flex;align-items:center;gap:10px;margin-bottom:12px; }.stage-number { display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(139,124,246,.55);border-radius:50%;background:rgba(139,124,246,.16);color:#c0b7ff; }.stage-number i { width:16px;height:16px; }.review-stage h3 { margin:0;color:var(--s6-text);font-size:15px; }.review-stage p { margin:2px 0 0;color:var(--s6-muted);font-size:12px; }.review-stage-list { display:grid;gap:8px; }.report-review-row { display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:76px;padding:11px;border:1px solid #303441;border-radius:11px;background:#1b1e27;color:var(--s6-text);text-align:left; }.report-review-row:hover { border-color:#5a5067;background:#20242e; }.report-review-row.selected { border-color:var(--s6-pink);box-shadow:inset 0 0 0 1px rgba(239,121,157,.22); }.report-review-row-main { display:grid;min-width:0;gap:5px; }.report-review-row-main strong,.report-review-row-main small { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.report-review-row-main strong { font-size:14px; }.report-review-row-main small { color:var(--s6-muted);font-size:12px; }.report-review-row-side { display:grid;justify-items:end;gap:7px;white-space:nowrap; }.report-review-row-side b { color:#ffd1df;font-size:14px; }.stage-empty { padding:14px;border:1px dashed #444857;border-radius:10px;color:var(--s6-muted);font-size:13px; }.report-review-detail { min-width:0;padding:20px; }.report-detail-head { display:flex;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--s6-line); }.report-detail-head h3 { margin:9px 0 4px;color:var(--s6-text);font-size:21px; }.report-detail-head p { margin:0;color:var(--s6-muted);font-size:12px; }.report-detail-actions h4 { margin:0 0 10px;color:#e9e7ed;font-size:13px; }.detail-grid > div { min-width:0; }.detail-grid dt { margin-bottom:4px;color:var(--s6-muted);font-size:12px; }.detail-grid dd { margin:0;overflow-wrap:anywhere;color:var(--s6-text);font-size:13px; }.money-detail dd { color:#ffd0df;font-size:15px;font-weight:700; }.proof-section { display:grid;gap:9px; }.proof-section h4 { margin-bottom:0; }.proof-button { display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:62px;padding:6px 10px;border:1px solid #3a3f4c;border-radius:10px;background:#1b1e27;color:#f4eef2;text-align:left; }.proof-button:hover { border-color:#796071;background:#222631; }.proof-button img { width:50px;height:48px;object-fit:cover;border-radius:7px; }.proof-button i { width:18px;height:18px;color:#c4b8ff; }.report-detail-actions { padding:16px 0;border-bottom:1px solid var(--s6-line); }.report-detail-actions .actions { align-items:center;justify-content:flex-start; }.approval-timeline ol { display:grid;gap:8px;margin:0;padding-left:20px;color:var(--s6-muted);font-size:12px;line-height:1.55; }

.report-pager { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px;color:var(--s6-muted);font-size:12px; }.report-pager button { min-height:36px; }.report-drawer-form { display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;width:100%; }.report-settlement-preview { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px; }.report-settlement-preview > div { min-width:0;padding:10px;border:1px solid rgba(239,121,157,.22);border-radius:9px;background:#20232d; }.report-settlement-preview span { display:block;color:var(--s6-muted);font-size:11px; }.report-settlement-preview strong { display:block;margin-top:5px;color:#ffd0df;font-size:15px; }.report-settlement-note { display:flex;align-items:flex-start;gap:8px;padding:11px;border-radius:9px;background:rgba(139,124,246,.10);color:#d9d3ff;font-size:12px;line-height:1.55; }.report-settlement-note i { flex:0 0 auto;width:17px;height:17px; }

@media (max-width: 1120px) { .report-review-workspace { grid-template-columns:minmax(315px,.8fr) minmax(430px,1.2fr); } }
@media (max-width: 1040px) {.report-review-workspace { grid-template-columns:1fr; }.report-review-stages { grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--s6-line); }.review-stage { border-bottom:0;border-right:1px solid var(--s6-line); }.review-stage:last-child { border-right:0; }.report-review-detail { min-height:0; } }
@media (max-width: 760px) {.reports-page { gap:12px; }.report-page-head { align-items:flex-start; }.report-page-head h3 { font-size:19px; }.report-page-head p { font-size:12px; }.report-page-head .primary { min-width:44px;padding-inline:11px; }.report-page-head .primary i { margin:0; }.report-page-head .primary { font-size:0; }.report-page-head .primary i { font-size:initial; }.report-tabs { width:100%; }.report-review-stages { grid-template-columns:1fr; }.review-stage { border-right:0;border-bottom:1px solid var(--s6-line); }.review-stage:last-child { border-bottom:0; }.report-review-detail { padding:14px; }.report-settlement-preview { grid-template-columns:repeat(2,minmax(0,1fr)); }.reports-active .message-dock { position:static;display:flex;align-items:center;justify-content:center;width:calc(100% - 24px);margin:12px;min-height:44px;padding:0 14px;border-radius:10px; }.reports-active .message-dock strong { display:inline; }.reports-active .message-dock .message-dot { position:static;margin-left:6px; } }
@media (max-width:390px) {.report-page-head { gap:10px; }.report-review-row { min-height:82px; }.report-review-row-main strong { white-space:normal; }.proof-button span { font-size:12px; } }
.account-status-chip { display:inline-flex; align-items:center; gap:6px; min-height:36px; padding:0 10px; border:1px solid var(--s6-line); border-radius:999px; background:#171a22; color:#d8d5dd; font-size:12px; white-space:nowrap; }
.account-status-chip i { width:15px; height:15px; }
.account-status-chip.is-ok { border-color:rgba(134,209,170,.38); color:#b7f3cf; }
.account-status-chip.is-warning { border-color:rgba(239,191,112,.42); color:#ffe0aa; }
.dashboard-page .role-context > div { display:grid; gap:4px; min-width:0; min-height:54px; padding:8px 10px; border:1px solid rgba(239,121,157,.16); border-radius:9px; background:rgba(239,121,157,.05); }

@media (max-width: 760px) {
  .dashboard-hero-actions .account-status-chip { flex:0 0 auto; }
  .dashboard-page .role-context > div { min-height:52px; padding:7px 8px; }
}

@media (max-width: 390px) {
  .dashboard-hero-actions .account-status-chip { justify-content:center; width:100%; }
}

/* Stage 6B1: dispatch and public audition surfaces. Existing data, commands,
   permissions and recording rules remain the source of truth. */
.dispatch-page { display:grid; gap:16px; min-width:0; padding:18px; }
.dispatch-page-header { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:14px; padding-bottom:14px; border-bottom:1px solid var(--s6-line); }
.dispatch-page-title { min-width:0; }
.dispatch-kicker { display:block; margin-bottom:5px; color:#f3a8bf; font-size:11px; font-weight:700; letter-spacing:.04em; }
.dispatch-page-title h3 { margin:0; color:var(--s6-text); font-size:22px; }
.dispatch-page-title p { margin:5px 0 0; color:var(--s6-muted); font-size:12px; line-height:1.45; }
.dispatch-page-actions { display:flex; justify-content:flex-end; }
.dispatch-page-actions button { min-height:44px; white-space:nowrap; }
.dispatch-summary { display:flex; gap:8px; align-items:stretch; }
.dispatch-summary-item { display:grid; grid-template-columns:auto auto; align-items:center; gap:8px; min-height:44px; padding:0 11px; border:1px solid var(--s6-line); border-radius:10px; background:rgba(26,29,38,.76); }
.dispatch-summary-item span { color:var(--s6-muted); font-size:11px; }
.dispatch-summary-item strong { color:var(--s6-text); font-size:18px; line-height:1; }
.dispatch-summary-item.is-open { border-color:rgba(134,209,170,.34); }
.dispatch-summary-item.is-open strong { color:var(--s6-ok); }
.dispatch-summary-item.is-closed { border-color:rgba(239,191,112,.30); }
.dispatch-summary-item.is-closed strong { color:var(--s6-warn); }
.dispatch-search-row { min-width:0; }
.dispatch-search-row .searchbar { margin:0; }
.dispatch-page .dispatch-grid { gap:12px; }
.dispatch-page .dispatch-card { grid-template-columns:minmax(0,1fr) auto; gap:16px; padding:16px; border-color:var(--s6-line); border-radius:16px; background:linear-gradient(135deg,rgba(239,121,157,.07),rgba(26,29,39,.86) 46%,rgba(139,124,246,.04)); }
.dispatch-page .dispatch-card--closed { background:rgba(26,29,38,.72); }
.dispatch-card-main { min-width:0; display:grid; gap:13px; }
.dispatch-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; min-width:0; }
.dispatch-card-title { min-width:0; }
.dispatch-code { display:inline-flex; min-height:22px; align-items:center; padding:0 7px; border-radius:7px; background:rgba(139,124,246,.14); color:#d9d3ff; font-size:11px; font-weight:700; letter-spacing:.04em; }
.dispatch-card-title h3 { margin:7px 0 0; color:var(--s6-text); font-size:18px; line-height:1.25; overflow-wrap:anywhere; }
.dispatch-card-title p { margin:5px 0 0; color:var(--s6-muted); font-size:12px; }
.dispatch-party-roles { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; min-width:0; margin-top:9px; }
.dispatch-party-role { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:7px; min-width:0; max-width:100%; }
.dispatch-party-role .role-tag { min-height:20px; padding:2px 7px; font-size:10px; white-space:nowrap; }
.dispatch-party-role strong { min-width:0; color:var(--s6-text); font-size:14px; font-weight:700; line-height:1.35; overflow-wrap:anywhere; }
.dispatch-party-role.role-customer > strong { color:#ffe27a; }
.dispatch-party-role.role-staff > strong { color:#ffaaa4; }
.dispatch-card-status { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:6px; flex:0 0 auto; }
.dispatch-card-status .status { min-height:28px; padding-inline:9px; }
.dispatch-key-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.dispatch-key-facts > div { display:grid; gap:4px; min-width:0; padding:9px 10px; border:1px solid rgba(48,52,66,.9); border-radius:10px; background:rgba(10,11,15,.24); }
.dispatch-key-facts span, .dispatch-field-label { color:var(--s6-muted); font-size:11px; line-height:1.3; }
.dispatch-key-facts strong { color:var(--s6-text); font-size:13px; overflow-wrap:anywhere; }
.dispatch-request-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.dispatch-request-grid > div { min-width:0; padding:10px 11px; border-left:2px solid rgba(239,121,157,.46); background:rgba(239,121,157,.04); }
.dispatch-request-grid p { margin:5px 0 0; color:#e5e0e5; font-size:13px; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; }
.dispatch-link-row { display:grid; grid-template-columns:auto minmax(0,1fr); gap:6px 10px; align-items:start; padding-top:2px; }
.dispatch-link-row .dispatch-field-label { grid-row:span 2; padding-top:2px; }
.dispatch-url { min-width:0; color:#d9d3ff; font-size:11px; line-height:1.45; overflow-wrap:anywhere; white-space:normal; }
.dispatch-url-note { color:#8f8c99; font-size:11px; line-height:1.35; }
.dispatch-candidate-section { display:grid; gap:8px; }
.dispatch-candidate-section .section-head { margin:0; }
.dispatch-candidate-section .section-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.dispatch-candidate-section .section-head span { color:var(--s6-muted); font-size:11px; }
.dispatch-page .candidate-grid { display:flex; flex-wrap:wrap; gap:10px; }
.dispatch-page .candidate-card { width:176px; border-color:rgba(48,52,66,.95); background:rgba(19,21,29,.88); }
.dispatch-page .candidate-cover { height:112px; }
.dispatch-page .candidate-body { padding:9px; }
.dispatch-page .audio-play { width:40px; height:40px; right:8px; bottom:8px; }
.dispatch-card-actions { display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:8px; min-width:126px; }
.dispatch-card-actions button, .dispatch-card-actions .tag { min-height:44px; justify-content:center; white-space:nowrap; }
.dispatch-card-actions .tag { display:inline-flex; align-items:center; padding-inline:10px; }
.dispatch-drawer-form { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; min-width:0; width:100%; }
.dispatch-drawer-section { min-width:0; }
.dispatch-drawer-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; min-width:0; }
.dispatch-drawer-fields > .field { min-width:0; }
.dispatch-drawer-fields input,.dispatch-drawer-fields select,.dispatch-drawer-fields textarea { width:100%; min-width:0; }
.dispatch-drawer-fields .picker-field { width:100%; min-width:0; }
.dispatch-people-fields { grid-template-columns:minmax(0,1fr); }
.dispatch-drawer-form input:not([type="hidden"]),.dispatch-drawer-form select,.dispatch-drawer-form textarea { min-height:46px; }
.dispatch-drawer-form textarea { min-height:96px; resize:vertical; }
.dispatch-drawer-form .picker-field,.dispatch-drawer-form .picker-field > input { min-height:46px; }
.dispatch-drawer-form .field-necessity { margin-inline-start:5px; color:#f2a1bb; font-size:11px; font-weight:600; }
.dispatch-drawer-form .field-necessity.optional { color:var(--s6-muted); font-weight:500; }
.dispatch-share-input { color:#d9d3ff; font-size:11px; }
.public-dispatch .public-wrap { gap:14px; }
.public-dispatch .public-top { padding:9px 2px; }
.public-dispatch .public-top strong { color:var(--s6-text); letter-spacing:.01em; }
.public-dispatch .public-panel { border-color:rgba(125,152,190,.25); background:rgba(19,24,38,.94); }
.public-dispatch .public-summary { grid-template-columns:220px minmax(0,1fr); gap:24px; padding:20px; }
.public-dispatch .public-logo-card { padding:6px 0; }
.public-dispatch .public-logo-card img { width:148px; border-radius:16px; box-shadow:0 12px 24px rgba(239,121,157,.14); }
.public-dispatch .public-logo-card strong { color:var(--s6-text); font-size:22px; }
.public-dispatch .public-logo-card span { color:var(--s6-muted); font-size:12px; }
.public-dispatch .public-info-row { min-height:44px; }
.public-dispatch .public-info-row strong { font-size:14px; }
.public-dispatch .public-block { padding:18px 20px; }
.public-dispatch .public-block h3 { margin-bottom:10px; color:var(--s6-text); font-size:17px; }
.public-dispatch .public-text { min-height:54px; font-size:14px; line-height:1.65; }
.public-dispatch .public-candidates { gap:10px; }
.public-dispatch .public-candidates .candidate-card { min-width:0; }
.public-dispatch .public-candidates .candidate-cover { height:156px; }
.public-dispatch .public-candidates .candidate-body { gap:8px; }
.public-dispatch .public-candidates .candidate-body strong { color:var(--s6-text); }
.public-dispatch .public-recording-panel { border-color:rgba(239,121,157,.26); background:rgba(26,29,38,.76); }
.public-dispatch .public-recording-controls button, .public-dispatch .public-bottom-bar button, .public-dispatch .public-login-grid button { min-height:44px; }
.public-dispatch .public-wrap > .public-bottom-bar { position:static; display:flex; justify-content:flex-end; gap:8px; margin:0; padding:10px 12px; border:1px solid rgba(125,152,190,.24); border-radius:12px; background:rgba(19,24,38,.92); }
.public-recovery-state { display:grid; gap:16px; width:min(760px,100%); margin:0 auto; }
.public-recovery-state .public-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 2px; }
.public-top-brand { display:flex; align-items:center; gap:10px; min-width:0; }
.public-top-brand img { width:34px; height:34px; object-fit:cover; border-radius:9px; box-shadow:0 8px 16px rgba(239,121,157,.15); }
.public-recovery-panel { display:grid; justify-items:center; gap:10px; min-height:300px; padding:36px 24px; text-align:center; align-content:center; }
.public-recovery-logo { width:84px; height:84px; object-fit:cover; border-radius:20px; box-shadow:0 16px 32px rgba(239,121,157,.18); }
.public-recovery-panel h2 { margin:4px 0 0; color:var(--s6-text); font-size:21px; line-height:1.35; }
.public-recovery-panel p { margin:0; color:#f3a8bf; font-size:14px; line-height:1.6; }
.public-recovery-hint { color:var(--s6-muted); font-size:12px; line-height:1.5; }

@media (max-width: 1040px) {
  .dispatch-page-header { grid-template-columns:minmax(0,1fr) auto; }
  .dispatch-summary { grid-column:1 / 2; grid-row:2; justify-content:flex-start; }
  .dispatch-page-actions { grid-column:2; grid-row:1 / span 2; align-items:center; }
}

@media (max-width: 760px) {
  .dispatches-active .message-dock { position:static;display:flex;align-items:center;justify-content:center;width:calc(100% - 24px);margin:12px;min-height:44px;padding:0 14px;border-radius:10px; }
  .dispatches-active .message-dock strong { display:inline; }
  .dispatches-active .message-dock .message-dot { position:static;margin-left:6px; }
  .dispatch-page { gap:13px; padding:13px; }
  .dispatch-page-header { grid-template-columns:minmax(0,1fr) auto; gap:10px; padding-bottom:12px; }
  .dispatch-page-title h3 { font-size:19px; }
  .dispatch-page-title p { font-size:11px; }
  .dispatch-summary { grid-column:1 / -1; grid-row:2; width:100%; }
  .dispatch-summary-item { flex:1; justify-content:space-between; }
  .dispatch-page-actions { grid-column:2; grid-row:1; }
  .dispatch-page-actions button { min-height:44px; padding-inline:11px; }
  .dispatch-page .dispatch-card { grid-template-columns:1fr; gap:12px; padding:13px; }
  .dispatch-card-head { display:grid; gap:9px; }
  .dispatch-card-status { justify-content:flex-start; }
  .dispatch-key-facts { gap:6px; }
  .dispatch-key-facts > div { padding:8px 7px; }
  .dispatch-key-facts strong { font-size:12px; }
  .dispatch-request-grid { grid-template-columns:1fr; gap:7px; }
  .dispatch-link-row { grid-template-columns:1fr; gap:4px; }
  .dispatch-link-row .dispatch-field-label { grid-row:auto; }
  .dispatch-page .candidate-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dispatch-page .candidate-card { width:100%; }
  .dispatch-card-actions { order:-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); min-width:0; }
  .dispatch-card-actions button, .dispatch-card-actions .tag { width:100%; min-height:44px; }
  .dispatch-drawer-fields { grid-template-columns:1fr; }
  .dispatch-drawer-fields .field.full { grid-column:auto; }
  .public-dispatch { padding-top:12px; }
  .public-dispatch .public-top { align-items:flex-start; flex-direction:column; }
  .public-dispatch .public-actions { width:100%; justify-content:flex-start; }
  .public-dispatch .public-actions button { min-height:44px; flex:1 1 auto; }
  .public-dispatch .public-summary { grid-template-columns:1fr; gap:14px; padding:14px; }
  .public-dispatch .public-logo-card { grid-template-columns:auto 1fr; justify-items:start; align-items:center; column-gap:12px; padding:0; }
  .public-dispatch .public-logo-card img { width:70px; grid-row:span 2; }
  .public-dispatch .public-logo-card strong { font-size:18px; }
  .public-dispatch .public-logo-card span { align-self:start; }
  .public-dispatch .public-info-row { grid-template-columns:84px minmax(0,1fr); }
  .public-dispatch .public-info-row strong { text-align:left; }
  .public-dispatch .public-block { padding:14px; }
  .public-dispatch .public-candidates { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .public-dispatch .public-candidates .candidate-cover { height:128px; }
  .public-dispatch .public-wrap > .public-bottom-bar { display:grid; grid-template-columns:1fr; padding:9px; }
  .public-dispatch .public-wrap > .public-bottom-bar button { width:100%; }
  .public-dispatch .public-login-grid { grid-template-columns:1fr; }
  .public-dispatch .public-login-grid .actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 390px) {
  .dispatch-key-facts { grid-template-columns:1fr; }
  .dispatch-page .candidate-grid, .public-dispatch .public-candidates { grid-template-columns:1fr; }
  .dispatch-card-actions { grid-template-columns:1fr; }
}

/* Stage 6B2: customer records stay dense on desktop and become task cards on mobile. */
.customer-page { display:grid; gap:16px; min-width:0; }
.customer-page-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; min-width:0; }
.customer-page-heading { min-width:0; }
.customer-page-kicker { display:block; margin-bottom:5px; color:#d8a8ff; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.customer-page-heading h3 { margin:0; color:var(--s6-text); font-size:21px; }
.customer-page-heading p { margin:6px 0 0; color:var(--s6-muted); font-size:12px; line-height:1.55; }
.customer-page-head > .primary { min-height:44px; white-space:nowrap; }
.customer-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:stretch; padding:12px; border:1px solid var(--s6-line); border-radius:14px; background:#191c24; }
.customer-toolbar .searchbar { margin:0; min-width:0; }
.customer-sort-group { display:grid; grid-template-columns:repeat(3,minmax(96px,1fr)); gap:8px; min-width:0; }
.customer-sort-btn { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:center; gap:2px 8px; min-width:0; min-height:44px; padding:7px 10px; border:1px solid var(--s6-line); border-radius:10px; background:#20232c; color:var(--s6-text); text-align:left; }
.customer-sort-btn:hover,.customer-sort-btn:focus-visible { border-color:var(--s6-pink); background:#29232d; }
.customer-sort-btn > span { min-width:0; overflow-wrap:anywhere; font-weight:700; }
.customer-sort-btn > small { color:var(--s6-muted); font-size:10px; }
.customer-sort-btn > i { grid-column:2; grid-row:1 / span 2; width:17px; height:17px; color:#ffd0df; }
.customer-list-head,.customer-record { display:grid; grid-template-columns:minmax(190px,1.35fr) repeat(3,minmax(96px,.68fr)) minmax(128px,.82fr) minmax(150px,1fr) minmax(150px,.9fr); gap:12px; align-items:center; min-width:0; }
.customer-list-head { padding:0 14px; color:var(--s6-muted); font-size:11px; font-weight:700; }
.customer-record-list { display:grid; gap:10px; min-width:0; }
.customer-record { padding:14px; border:1px solid var(--s6-line); border-radius:14px; background:linear-gradient(135deg,rgba(239,121,157,.06),rgba(26,29,39,.88) 42%,rgba(139,124,246,.05)); }
.customer-record:hover { border-color:rgba(239,121,157,.34); }
.customer-identity { display:flex; align-items:center; gap:10px; min-width:0; }
.customer-avatar { display:grid; place-items:center; width:38px; min-width:38px; height:38px; border:1px solid rgba(239,121,157,.25); border-radius:12px; background:var(--s6-pink-soft); color:#ffd6e3; font-weight:800; }
.customer-identity-copy { display:grid; gap:3px; min-width:0; }
.customer-identity-copy strong { overflow-wrap:anywhere; color:var(--s6-text); font-size:14px; }
.customer-code,.customer-contact,.customer-fact small,.customer-benefit-fact small { color:var(--s6-muted); font-size:11px; }
.customer-code,.customer-contact { overflow-wrap:anywhere; }
.customer-fact,.customer-benefit-fact { display:grid; gap:4px; min-width:0; }
.customer-fact > span:first-child,.customer-benefit-fact > span:first-child,.customer-note > span { color:var(--s6-muted); font-size:11px; font-weight:700; }
.customer-fact strong { color:var(--s6-text); font-size:16px; }
.customer-vip-fact .tag { width:max-content; max-width:100%; overflow-wrap:anywhere; }
.customer-benefit-fact button { width:max-content; max-width:100%; min-height:44px; }
.customer-note { min-width:0; }
.customer-note p { margin:5px 0 0; color:var(--s6-text); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.customer-record-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; min-width:0; }
.customer-record-actions button { min-width:0; min-height:44px; }
.customer-record-actions button i { width:16px; height:16px; }

.customer-drawer-heading { display:grid; gap:4px; margin-bottom:14px; }
.customer-drawer-heading h3 { margin:0; color:var(--s6-text); font-size:18px; }
.customer-drawer-heading p { margin:0; color:var(--s6-muted); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.customer-drawer-form { display:grid; gap:12px; min-width:0; }
.customer-drawer-hint { display:flex; align-items:flex-start; gap:8px; margin:0; padding:11px 12px; border:1px solid rgba(139,124,246,.27); border-radius:11px; background:rgba(139,124,246,.09); color:#dcd6ff; font-size:12px; line-height:1.55; }
.customer-drawer-hint i { flex:0 0 auto; width:17px; height:17px; }
.customer-drawer-section { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:12px; background:#1a1d26; }
.customer-drawer-section-head { display:flex; align-items:flex-start; gap:10px; }
.customer-drawer-section-head > span { display:grid; place-items:center; width:27px; min-width:27px; height:27px; border-radius:8px; background:var(--s6-pink-soft); color:#ffd4e2; font-size:11px; font-weight:800; }
.customer-drawer-section-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.customer-drawer-section-head p { margin:3px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.45; }
.customer-drawer-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.customer-drawer-fields .field.full { grid-column:1 / -1; }
.customer-drawer-form input[readonly] { border-color:rgba(139,124,246,.24); background:#20232d; color:#d9d3ff; cursor:default; }

.customer-benefits-drawer,.customer-ledger-drawer { min-width:0; }
.customer-benefit-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:13px; border:1px solid var(--s6-line); border-radius:12px; background:#1a1d26; }
.customer-benefit-form .field.full { grid-column:1 / -1; }
.customer-benefit-form button { min-height:44px; }
.customer-benefit-list { display:grid; gap:10px; margin-top:14px; min-width:0; }
.customer-benefit-item { min-width:0; padding:13px; border:1px solid var(--s6-line); border-radius:13px; background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,0)),#1b1e27; }
.customer-benefit-item-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-width:0; }
.customer-benefit-copy { display:grid; gap:7px; min-width:0; }
.customer-benefit-copy strong { color:var(--s6-text); overflow-wrap:anywhere; }
.customer-benefit-meta { display:flex; flex-wrap:wrap; align-items:center; gap:5px; color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.customer-benefit-meta .tag { min-height:22px; }
.customer-benefit-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; min-width:0; }
.customer-benefit-actions button { min-height:44px; }
.customer-benefit-log { margin:9px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.5; overflow-wrap:anywhere; }

.customer-ledger-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.customer-ledger-metric { min-width:0; padding:11px; border:1px solid var(--s6-line); border-radius:11px; background:#1b1e27; }
.customer-ledger-metric span,.customer-ledger-metric small { display:block; color:var(--s6-muted); font-size:11px; }
.customer-ledger-metric strong { display:block; margin:5px 0; color:var(--s6-text); font-size:16px; overflow-wrap:anywhere; }
.customer-ledger-note { display:flex; align-items:flex-start; gap:8px; margin:12px 0; padding:11px 12px; border:1px solid rgba(105,184,255,.22); border-radius:11px; background:rgba(105,184,255,.07); color:#cfe8ff; font-size:12px; line-height:1.55; }
.customer-ledger-note i { flex:0 0 auto; width:17px; height:17px; }
.customer-ledger-records { display:grid; gap:9px; min-width:0; }
.customer-ledger-record { display:grid; grid-template-columns:minmax(0,1fr) minmax(140px,.36fr); gap:12px; min-width:0; padding:12px; border:1px solid var(--s6-line); border-radius:12px; background:#1b1e27; }
.customer-ledger-record-main { display:grid; gap:5px; min-width:0; }
.customer-ledger-record-top { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.customer-ledger-date,.customer-ledger-code { color:var(--s6-muted); font-size:11px; overflow-wrap:anywhere; }
.customer-ledger-record-main strong { color:var(--s6-text); overflow-wrap:anywhere; }
.customer-ledger-record-main p { margin:0; color:var(--s6-muted); font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.customer-ledger-record-side { display:grid; align-content:start; justify-items:end; gap:5px; min-width:0; text-align:right; }
.customer-ledger-record-side > span { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.customer-ledger-delta { font-size:16px; }
.customer-ledger-delta.green { color:#b7f3cf; }
.customer-ledger-delta.pink { color:#ffd0df; }

@media (max-width:1180px) {
  .customer-toolbar { grid-template-columns:1fr; }
  .customer-list-head { display:none; }
  .customer-record { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-identity,.customer-note,.customer-record-actions { grid-column:1 / -1; }
}

@media (max-width:640px) {
  .customer-page.section { padding:14px; }
  .customer-page-head { flex-direction:column; align-items:stretch; }
  .customer-page-head > .primary { width:100%; }
  .customer-sort-group { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .customer-sort-btn { padding-inline:8px; font-size:12px; }
  .customer-record { grid-template-columns:1fr; }
  .customer-record > * { grid-column:auto; }
  .customer-record-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-record-actions button { width:100%; }
  .customer-drawer-fields,.customer-benefit-form { grid-template-columns:1fr; }
  .customer-drawer-fields .field.full,.customer-benefit-form .field.full { grid-column:auto; }
  .customer-benefit-item-head { flex-direction:column; }
  .customer-benefit-actions { width:100%; justify-content:stretch; }
  .customer-benefit-actions button { flex:1; min-width:0; }
  .customer-ledger-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-ledger-record { grid-template-columns:1fr; }
  .customer-ledger-record-side { justify-items:start; text-align:left; }
}

@media (max-width:390px) {
  .customer-sort-group { gap:6px; }
  .customer-sort-btn { padding-inline:6px; font-size:11px; }
  .customer-sort-btn > i { width:15px; height:15px; }
  .customer-ledger-summary { gap:7px; }
}
.wallet-filter.role-player.is-active { background:#075BBC; border-color:#56A8FF; color:#fff; }
.wallet-filter.role-staff.is-active { background:#B42318; border-color:#FF756B; color:#fff; }
.wallet-filter.role-customer.is-active { background:#F4C430; border-color:#FFE27A; color:#171100; }
.wallet-page .wallet-filters .wallet-filter:nth-child(2).is-active { background:#075BBC; border-color:#56A8FF; color:#fff; }
.wallet-page .wallet-filters .wallet-filter:nth-child(3).is-active { background:#B42318; border-color:#FF756B; color:#fff; }
.wallet-page .wallet-filters .wallet-filter:nth-child(4).is-active { background:#F4C430; border-color:#FFE27A; color:#171100; }
.identity-choice-type.role-tag { font-size:13px; }
.profile-account-line > .role-tag { margin-right:8px; }
.identity-center-fact strong.role-tag,
.detail-grid dt.role-tag { justify-self:start; width:max-content; max-width:100%; }

/* Stage 6B3: recharge records are a dense finance workspace on desktop and task cards on mobile. */
.recharge-page { display:grid; gap:14px; min-width:0; }
.recharge-page-head { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:16px; min-width:0; }
.recharge-page-heading { min-width:0; }
.recharge-page-heading h3 { margin:0; color:var(--s6-text); font-size:22px; }
.recharge-page-heading p { max-width:72ch; margin:6px 0 0; color:var(--s6-muted); font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.recharge-create-trigger { min-height:44px; white-space:nowrap; }
.recharge-toolbar { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.62fr); align-items:center; gap:12px; padding:11px 12px; border:1px solid var(--s6-line); border-radius:14px; background:#191c24; }
.recharge-toolbar .searchbar { min-width:0; margin:0; }
.recharge-toolbar .searchbox { min-width:0; }
.recharge-stream { display:grid; gap:9px; min-width:0; }
.recharge-stream-head { display:flex; justify-content:space-between; align-items:center; gap:12px; min-width:0; padding:0 2px; color:var(--s6-muted); font-size:11px; }
.recharge-stream-head strong { color:var(--s6-text); font-size:13px; }
.recharge-record-list { display:grid; gap:9px; min-width:0; }
.recharge-record { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px 12px; min-width:0; padding:13px; border:1px solid var(--s6-line); border-radius:14px; background:linear-gradient(135deg,rgba(239,121,157,.055),rgba(26,29,39,.9) 46%,rgba(139,124,246,.045)); }
.recharge-record:hover { border-color:rgba(239,121,157,.34); }
.recharge-record--reversed { background:linear-gradient(135deg,rgba(255,255,255,.025),rgba(26,29,39,.84)); }
.recharge-record--history { background:rgba(26,29,38,.68); }
.recharge-record > * { min-width:0; }
.recharge-record-id { grid-column:1; display:grid; align-content:center; gap:6px; }
.recharge-record-id-top { display:flex; align-items:center; flex-wrap:wrap; gap:6px; min-width:0; }
.recharge-record-id-top small { color:var(--s6-muted); font-size:10px; overflow-wrap:anywhere; }
.recharge-record-id strong { overflow-wrap:anywhere; color:var(--s6-text); font-size:14px; letter-spacing:.01em; }
.recharge-record-customer { grid-column:2; display:grid; align-content:center; gap:4px; }
.recharge-record-money { grid-column:3; display:grid; align-content:center; gap:4px; }
.recharge-record-credit { grid-column:4; display:grid; align-content:center; gap:4px; }
.recharge-record-balance { grid-column:5; display:grid; align-content:center; gap:4px; }
.recharge-record-time { grid-column:6; display:grid; align-content:center; gap:4px; }
.recharge-record-collection { grid-column:1 / span 2; display:grid; gap:4px; padding-top:10px; border-top:1px solid rgba(148,163,184,.13); }
.recharge-record-proof { grid-column:3; display:grid; gap:4px; padding-top:10px; border-top:1px solid rgba(148,163,184,.13); }
.recharge-record-note { grid-column:4 / span 2; display:grid; gap:4px; min-width:0; padding-top:10px; border-top:1px solid rgba(148,163,184,.13); }
.recharge-record-actions { grid-column:6; display:grid; align-content:start; gap:4px; padding-top:10px; border-top:1px solid rgba(148,163,184,.13); }
.recharge-record-label { color:var(--s6-muted); font-size:10px; font-weight:800; }
.recharge-record strong { color:var(--s6-text); font-size:13px; overflow-wrap:anywhere; }
.recharge-record-money strong,.recharge-record-credit strong,.recharge-record-balance strong { color:#ffd0df; font-size:16px; }
.recharge-record small,.recharge-record time { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.recharge-record-note p { margin:0; color:var(--s6-text); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.recharge-proof-button { display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:7px; width:100%; min-height:44px; padding:5px 8px; border:1px solid var(--s6-line); border-radius:10px; background:#20232c; color:var(--s6-text); text-align:left; }
.recharge-proof-button:hover,.recharge-proof-button:focus-visible { border-color:var(--s6-pink); background:#29232d; }
.recharge-proof-button img { width:34px; height:32px; object-fit:cover; border-radius:6px; }
.recharge-proof-button i { width:18px; height:18px; justify-self:center; color:#c0b7ff; }
.recharge-proof-button span { min-width:0; overflow-wrap:anywhere; font-size:11px; }
.recharge-proof-button.is-empty { color:var(--s6-muted); }
.recharge-record-actions button { width:100%; min-height:44px; }
.recharge-action-note { display:flex; align-items:center; justify-content:flex-start; gap:6px; min-height:44px; color:var(--s6-muted); font-size:11px; line-height:1.4; }
.recharge-action-note i { flex:0 0 auto; width:16px; height:16px; }
.recharge-empty { display:grid; place-items:center; gap:7px; min-height:180px; padding:24px; border:1px dashed #444857; border-radius:14px; background:#191c24; color:var(--s6-muted); text-align:center; }
.recharge-empty i { width:24px; height:24px; color:#c0b7ff; }
.recharge-empty strong { color:var(--s6-text); font-size:14px; }
.recharge-empty span { max-width:52ch; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.recharge-drawer-form { display:grid; gap:12px; min-width:0; }
.recharge-drawer-hint { display:flex; align-items:flex-start; gap:8px; min-width:0; margin:0; padding:11px 12px; border:1px solid rgba(139,124,246,.27); border-radius:11px; background:rgba(139,124,246,.09); color:#dcd6ff; font-size:12px; line-height:1.55; }
.recharge-drawer-hint i { flex:0 0 auto; width:17px; height:17px; }
.recharge-drawer-hint span { overflow-wrap:anywhere; }
.recharge-drawer-section { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:12px; background:#1a1d26; }
.recharge-drawer-section-head { display:flex; align-items:flex-start; gap:10px; }
.recharge-drawer-section-head > span { display:grid; place-items:center; width:27px; min-width:27px; height:27px; border-radius:8px; background:var(--s6-pink-soft); color:#ffd4e2; font-size:11px; font-weight:800; }
.recharge-drawer-section-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.recharge-drawer-section-head p { margin:3px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.45; }
.recharge-drawer-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.recharge-drawer-fields .field.full { grid-column:1 / -1; }
.recharge-drawer-form input:not([type="hidden"]),.recharge-drawer-form select { min-height:44px; }
.recharge-drawer-form textarea { min-height:108px; }
.recharge-drawer-form input[readonly] { border-color:rgba(139,124,246,.24); background:#20232d; color:#d9d3ff; cursor:default; }
.recharge-drawer-form small { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.recharge-money-note { color:#d9d3ff; }
.recharge-wallet-init { min-height:44px; }
.recharge-drawer-cancel,.recharge-drawer-confirm { min-height:44px; }

/* Stage 6B4: service-backed earnings and withdrawal workspace. */
.withdrawal-page { display:grid; gap:14px; min-width:0; }
.withdrawal-page-head { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:16px; min-width:0; }
.withdrawal-page-heading { min-width:0; }
.withdrawal-page-heading h3 { margin:0; color:var(--s6-text); font-size:22px; }
.withdrawal-page-heading p { max-width:72ch; margin:6px 0 0; color:var(--s6-muted); font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.withdrawal-create-action { display:grid; justify-items:end; gap:6px; min-width:0; max-width:30rem; }
.withdrawal-create-trigger { min-height:44px; white-space:nowrap; }
.withdrawal-create-action .withdrawal-create-trigger { width:100%; }
.withdrawal-create-reason { max-width:34ch; color:var(--s6-muted); font-size:11px; line-height:1.45; text-align:right; overflow-wrap:anywhere; }
.withdrawal-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; min-width:0; }
.withdrawal-summary-grid--worker { grid-template-columns:repeat(5,minmax(0,1fr)); }
.withdrawal-summary-card { display:grid; align-content:space-between; gap:8px; min-width:0; min-height:104px; padding:14px; border:1px solid var(--s6-line); border-radius:13px; background:#1b1e27; }
.withdrawal-summary-card--accent { border-color:rgba(239,121,157,.42); background:rgba(239,121,157,.09); }
.withdrawal-summary-card span,.withdrawal-summary-card small { color:var(--s6-muted); font-size:11px; line-height:1.4; overflow-wrap:anywhere; }
.withdrawal-summary-card strong { color:var(--s6-text); font-size:21px; overflow-wrap:anywhere; }
.withdrawal-summary-card--accent strong { color:#ffd0df; }
.withdrawal-policy { display:flex; align-items:flex-start; gap:8px; min-width:0; padding:11px 12px; border:1px solid rgba(139,124,246,.27); border-radius:11px; background:rgba(139,124,246,.09); color:#dcd6ff; font-size:12px; line-height:1.5; }
.withdrawal-policy i { flex:0 0 auto; width:17px; height:17px; }
.withdrawal-policy span { overflow-wrap:anywhere; }
.withdrawal-workspace { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:14px; background:#11131a; }
.withdrawal-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; min-width:0; }
.withdrawal-toolbar .searchbar { min-width:0; margin:0; }
.withdrawal-filters { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.withdrawal-filter { min-height:44px; padding:0 11px; border:1px solid var(--s6-line); border-radius:9px; background:#1b1e27; color:var(--s6-muted); white-space:nowrap; }
.withdrawal-filter:hover,.withdrawal-filter:focus-visible { border-color:#796071; color:var(--s6-text); }
.withdrawal-filter.active { border-color:var(--s6-pink); background:var(--s6-pink-soft); color:#ffd6e3; }
.withdrawal-stream-head { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; padding:0 2px; color:var(--s6-muted); font-size:11px; }
.withdrawal-stream-head strong { color:var(--s6-text); font-size:13px; }
.withdrawal-stream-head span { overflow-wrap:anywhere; text-align:right; }
.withdrawal-record-list { display:grid; gap:9px; min-width:0; }
.withdrawal-record { display:grid; grid-template-columns:1.05fr 1.15fr 1.2fr 1.1fr 1.55fr 1.15fr; gap:10px 12px; min-width:0; padding:13px; border:1px solid var(--s6-line); border-radius:14px; background:#1a1d26; }
.withdrawal-record:hover { border-color:rgba(239,121,157,.34); }
.withdrawal-record--gold { background:rgba(239,191,112,.055); }
.withdrawal-record--green { background:rgba(134,209,170,.045); }
.withdrawal-record--red { background:rgba(239,120,128,.045); }
.withdrawal-record--gray { background:rgba(255,255,255,.025); }
.withdrawal-record > * { min-width:0; }
.withdrawal-record-primary,.withdrawal-record-beneficiary,.withdrawal-record-request,.withdrawal-record-payout,.withdrawal-record-note,.withdrawal-record-actions { display:grid; align-content:start; gap:5px; min-width:0; }
.withdrawal-record-primary { grid-column:1; gap:7px; }
.withdrawal-record-primary strong { color:#ffd0df; font-size:18px; overflow-wrap:anywhere; }
.withdrawal-record-primary small,.withdrawal-record-request small,.withdrawal-record-payout small,.withdrawal-record-note small { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.withdrawal-record-beneficiary strong,.withdrawal-record-request strong,.withdrawal-record-payout strong { color:var(--s6-text); font-size:13px; overflow-wrap:anywhere; }
.withdrawal-record-label { color:var(--s6-muted); font-size:10px; font-weight:800; }
.withdrawal-record-note p { margin:0; color:var(--s6-text); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.withdrawal-record-actions { gap:6px; }
.withdrawal-record-actions .actions { display:grid; gap:7px; min-width:0; }
.withdrawal-record-actions button { width:100%; min-height:44px; }
.withdrawal-empty,.withdrawal-loading,.withdrawal-error { display:grid; place-items:center; gap:8px; min-height:170px; padding:24px; border:1px dashed #444857; border-radius:13px; background:#191c24; color:var(--s6-muted); text-align:center; }
.withdrawal-empty i,.withdrawal-loading i { width:24px; height:24px; color:#c0b7ff; }
.withdrawal-empty strong,.withdrawal-loading strong,.withdrawal-error strong { color:var(--s6-text); font-size:14px; }
.withdrawal-empty span,.withdrawal-loading span { max-width:58ch; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.withdrawal-loading i { animation:withdrawal-spin 900ms linear infinite; }
.withdrawal-error { border-style:solid; border-color:rgba(239,120,128,.42); background:rgba(239,120,128,.08); color:#ffc8cc; }
.withdrawal-error button { min-height:44px; }
@keyframes withdrawal-spin { to { transform:rotate(360deg); } }
.withdrawal-drawer-form { display:grid; gap:12px; min-width:0; }
.withdrawal-drawer-hint { display:flex; align-items:flex-start; gap:8px; min-width:0; margin:0; padding:11px 12px; border:1px solid rgba(139,124,246,.27); border-radius:11px; background:rgba(139,124,246,.09); color:#dcd6ff; font-size:12px; line-height:1.55; }
.withdrawal-drawer-hint i { flex:0 0 auto; width:17px; height:17px; }
.withdrawal-drawer-hint span { overflow-wrap:anywhere; }
.withdrawal-drawer-section { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:12px; background:#1a1d26; }
.withdrawal-drawer-section-head { display:flex; align-items:flex-start; gap:10px; }
.withdrawal-drawer-section-head > span { display:grid; place-items:center; width:27px; min-width:27px; height:27px; border-radius:8px; background:var(--s6-pink-soft); color:#ffd4e2; font-size:11px; font-weight:800; }
.withdrawal-drawer-section-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.withdrawal-drawer-section-head p { margin:3px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.45; }
.withdrawal-drawer-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.withdrawal-drawer-fields .field.full { grid-column:1 / -1; }
.withdrawal-drawer-form input:not([type="hidden"]),.withdrawal-drawer-form select { min-height:44px; }
.withdrawal-drawer-form textarea { min-height:108px; }
.withdrawal-drawer-form input[readonly] { border-color:rgba(139,124,246,.24); background:#20232d; color:#d9d3ff; cursor:default; }
.withdrawal-drawer-form small { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.withdrawal-confirm-note { display:flex; align-items:flex-start; gap:8px; grid-column:1 / -1; padding:10px 11px; border-radius:9px; background:rgba(139,124,246,.08); color:#d9d3ff; font-size:12px; line-height:1.5; }
.withdrawal-confirm-note i { flex:0 0 auto; width:17px; height:17px; }
.withdrawal-drawer-cancel,.withdrawal-drawer-confirm { min-height:44px; }
.withdrawal-detail { display:grid; gap:0; min-width:0; }
.withdrawal-detail--notice { display:grid; place-items:center; gap:9px; min-height:220px; padding:26px; color:var(--s6-muted); text-align:center; }
.withdrawal-detail--notice i { width:26px; height:26px; color:#c0b7ff; }
.withdrawal-detail--notice strong { color:var(--s6-text); font-size:15px; }
.withdrawal-detail--notice span { max-width:40ch; font-size:12px; line-height:1.5; }
.withdrawal-detail-heading { display:grid; gap:7px; padding:2px 0 16px; border-bottom:1px solid var(--s6-line); }
.withdrawal-detail-heading h3 { margin:0; color:var(--s6-text); font-size:20px; overflow-wrap:anywhere; }
.withdrawal-detail-heading p { margin:0; color:var(--s6-muted); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.withdrawal-detail-section { padding:16px 0; border-bottom:1px solid var(--s6-line); }
.withdrawal-detail-section:last-child { border-bottom:0; }
.withdrawal-detail-section h4 { margin:0 0 10px; color:var(--s6-text); font-size:13px; }
.withdrawal-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px 18px; margin:0; }
.withdrawal-detail-grid > div { min-width:0; }
.withdrawal-detail-grid > .full { grid-column:1 / -1; }
.withdrawal-detail-grid dt { margin-bottom:4px; color:var(--s6-muted); font-size:11px; }
.withdrawal-detail-grid dd { margin:0; color:var(--s6-text); font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
.withdrawal-detail-grid .money-detail { color:#ffd0df; font-size:17px; font-weight:700; }

@media (max-width:1180px) {
  .recharge-toolbar,.withdrawal-toolbar { grid-template-columns:1fr; align-items:stretch; }
  .recharge-record { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .recharge-record > * { grid-column:auto; }
  .recharge-record-customer,.recharge-record-collection,.recharge-record-note { grid-column:span 2; }
  .recharge-record-actions { grid-column:auto; }
  .withdrawal-summary-grid--worker { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .withdrawal-record { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:640px) {
  .withdrawal-page-head { grid-template-columns:1fr; align-items:stretch; gap:10px; }
  .withdrawal-page-heading h3 { font-size:19px; }
  .withdrawal-page-heading p { font-size:12px; }
  .withdrawal-create-action { width:100%; max-width:none; justify-items:stretch; }
  .withdrawal-create-reason { max-width:none; text-align:left; }
  .withdrawal-create-trigger { width:100%; }
  .withdrawal-summary-grid,.withdrawal-summary-grid--worker { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .withdrawal-toolbar { gap:10px; }
  .withdrawal-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); justify-content:stretch; }
  .withdrawal-filter { width:100%; padding-inline:6px; }
  .withdrawal-stream-head { align-items:flex-start; flex-direction:column; gap:3px; }
  .withdrawal-stream-head span { text-align:left; }
  .withdrawal-record { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 10px; padding:12px; }
  .withdrawal-record-primary,.withdrawal-record-beneficiary,.withdrawal-record-request,.withdrawal-record-payout,.withdrawal-record-note,.withdrawal-record-actions { grid-column:1 / -1; }
  .withdrawal-record-actions .actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .withdrawal-record-actions .actions .withdrawal-detail-button { grid-column:1 / -1; }
  .withdrawal-drawer-fields,.withdrawal-detail-grid { grid-template-columns:1fr; }
  .withdrawal-drawer-fields .field.full,.withdrawal-detail-grid > .full { grid-column:auto; }
  .recharge-page-head { grid-template-columns:1fr; align-items:stretch; gap:10px; }
  .recharge-page-heading h3 { font-size:19px; }
  .recharge-page-heading p { font-size:12px; }
  .recharge-create-trigger { width:100%; }
  .recharge-toolbar { padding:10px; }
  .recharge-stream-head { align-items:flex-start; flex-direction:column; gap:3px; }
  .recharge-record { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 10px; padding:12px; }
  .recharge-record-id,.recharge-record-customer,.recharge-record-balance,.recharge-record-time,.recharge-record-collection,.recharge-record-proof,.recharge-record-note,.recharge-record-actions { grid-column:1 / -1; }
  .recharge-record-money { grid-column:1; }
  .recharge-record-credit { grid-column:2; }
  .recharge-record-id-top { align-items:flex-start; flex-direction:column; gap:3px; }
  .recharge-record-actions { display:grid; }
  .recharge-drawer-fields { grid-template-columns:1fr; }
  .recharge-drawer-fields .field.full { grid-column:auto; }
}

@media (max-width:390px) {
  .recharge-record { padding:11px; }
  .recharge-record-money strong,.recharge-record-credit strong,.recharge-record-balance strong { font-size:15px; }
  .recharge-proof-button { padding-inline:7px; }
}

/* Stage 6C1: application review and account-state task surfaces. */
.application-page,.application-status-page,.blocked-page { display:grid; gap:14px; min-width:0; }
.application-page-head,.application-status-head,.blocked-page-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; min-width:0; }
.application-page-heading,.application-status-heading,.blocked-page-heading { min-width:0; }
.application-page-heading h3,.application-status-heading h3,.blocked-page-heading h3 { margin:0; color:var(--s6-text); font-size:22px; letter-spacing:-.02em; }
.application-page-heading p,.application-status-heading p,.blocked-page-heading p { max-width:70ch; margin:6px 0 0; color:var(--s6-muted); font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.application-kpi-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); min-width:0; border:1px solid var(--s6-line); border-radius:13px; background:#151820; }
.application-kpi { display:grid; gap:5px; min-width:0; padding:13px 15px; border-right:1px solid var(--s6-line); }
.application-kpi:last-child { border-right:0; }
.application-kpi span { color:var(--s6-muted); font-size:11px; }
.application-kpi strong { color:var(--s6-text); font-size:20px; line-height:1.1; overflow-wrap:anywhere; }
.application-kpi small { color:var(--s6-muted); font-size:11px; line-height:1.4; overflow-wrap:anywhere; }
.application-queue { display:grid; gap:10px; min-width:0; }
.application-queue-head { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; padding:0 2px; }
.application-queue-head strong { color:var(--s6-text); font-size:14px; }
.application-queue-head span { color:var(--s6-muted); font-size:11px; text-align:right; overflow-wrap:anywhere; }
.application-card { display:grid; grid-template-columns:minmax(190px,1.05fr) minmax(190px,1.2fr) minmax(160px,.9fr) minmax(170px,.75fr); gap:14px; min-width:0; padding:15px; border:1px solid var(--s6-line); border-radius:14px; background:#1a1d26; }
.application-card--pending { border-color:rgba(239,191,112,.38); background:rgba(239,191,112,.045); }
.application-card--approved { background:rgba(134,209,170,.035); }
.application-card--rejected { background:rgba(239,120,128,.035); }
.application-card > * { min-width:0; }
.application-card-primary,.application-card-profile,.application-card-evidence,.application-card-actions { display:grid; align-content:start; gap:7px; min-width:0; }
.application-card-primary { gap:9px; }
.application-card-status { display:flex; align-items:center; flex-wrap:wrap; gap:7px; }
.application-card-status time { color:var(--s6-muted); font-size:11px; overflow-wrap:anywhere; }
.application-card-name { color:var(--s6-text); font-size:17px; font-weight:800; overflow-wrap:anywhere; }
.application-card-phone,.application-card-label,.application-card-evidence small { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.application-card-label { font-weight:800; letter-spacing:.02em; }
.application-card-value { color:var(--s6-text); font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
.application-card-signature { grid-column:1 / -1; margin:0; padding-top:10px; border-top:1px solid rgba(48,52,66,.78); color:#d8d5dd; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.application-card-audio { display:flex; align-items:flex-start; gap:8px; min-width:0; }
.application-card-audio i { flex:0 0 auto; width:16px; height:16px; color:#c8c0ff; }
.application-card-audio > * { min-width:0; max-width:100%; }
.application-card-audio .application-audio-button { white-space:normal; overflow:hidden; text-align:left; }
.application-audio-button span,.application-audio-button small { min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.application-audio-empty { color:var(--s6-muted); font-size:12px; line-height:1.45; }
.application-audio-button,.application-card-actions button,.application-status-page button,.blocked-page button { min-height:44px; }
.application-audio-button { display:inline-flex; align-items:center; justify-content:flex-start; gap:7px; width:fit-content; max-width:100%; padding:0 11px; }
.application-audio-button i { width:16px; height:16px; }
.application-card-actions { justify-items:stretch; }
.application-card-actions .actions { display:grid; grid-template-columns:1fr; gap:7px; min-width:0; }
.application-card-actions button { width:100%; overflow-wrap:anywhere; }
.application-status,.blocked-status { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:start; gap:12px; min-width:0; padding:16px; border:1px solid rgba(239,191,112,.35); border-radius:14px; background:rgba(239,191,112,.06); }
.application-status.is-unsubmitted { border-color:rgba(139,124,246,.35); background:rgba(139,124,246,.07); }
.application-status.is-approved { border-color:rgba(134,209,170,.35); background:rgba(134,209,170,.055); }
.application-status.is-rejected { border-color:rgba(239,120,128,.35); background:rgba(239,120,128,.055); }
.application-status > i,.blocked-status > i { flex:0 0 auto; width:22px; height:22px; color:#ffd59d; }
.application-status.is-unsubmitted > i { color:#cbc3ff; }
.application-status.is-approved > i { color:#a8e6c1; }
.application-status.is-rejected > i { color:#ffc3c8; }
.application-status strong,.blocked-status strong { display:block; color:var(--s6-text); font-size:15px; line-height:1.45; overflow-wrap:anywhere; }
.application-status p,.blocked-status p { margin:4px 0 0; color:#d8d5dd; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.application-status-next { display:flex; align-items:flex-start; gap:8px; min-width:0; padding:11px 12px; border:1px solid var(--s6-line); border-radius:11px; background:#151820; color:var(--s6-muted); font-size:12px; line-height:1.5; }
.application-status-next i { flex:0 0 auto; width:17px; height:17px; color:#c8c0ff; }
.pending-application-card { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:13px; background:#151820; }
.pending-application-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; min-width:0; }
.pending-application-fact { display:grid; gap:4px; min-width:0; }
.pending-application-fact span { color:var(--s6-muted); font-size:11px; }
.pending-application-fact strong { color:var(--s6-text); font-size:13px; line-height:1.45; overflow-wrap:anywhere; }
.pending-application-signature { margin:0; color:#d8d5dd; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.blocked-status { border-color:rgba(239,120,128,.35); background:rgba(239,120,128,.055); }
.blocked-status > i { color:#ffc3c8; }
.blocked-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; min-width:0; }
.blocked-fact { display:grid; gap:4px; min-width:0; padding:13px; border:1px solid var(--s6-line); border-radius:12px; background:#151820; }
.blocked-fact span { color:var(--s6-muted); font-size:11px; }
.blocked-fact strong { color:var(--s6-text); font-size:14px; line-height:1.45; overflow-wrap:anywhere; }
.application-drawer-form { display:grid; gap:12px; min-width:0; }
.application-drawer-hint { display:flex; align-items:flex-start; gap:8px; min-width:0; margin:0; padding:11px 12px; border:1px solid rgba(139,124,246,.27); border-radius:11px; background:rgba(139,124,246,.09); color:#dcd6ff; font-size:12px; line-height:1.55; }
.application-drawer-hint i { flex:0 0 auto; width:17px; height:17px; }
.application-drawer-hint span { overflow-wrap:anywhere; }
.application-drawer-section { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:12px; background:#1a1d26; }
.application-drawer-section-head { display:flex; align-items:flex-start; gap:10px; }
.application-drawer-section-head > span { display:grid; place-items:center; width:27px; min-width:27px; height:27px; border-radius:8px; background:var(--s6-pink-soft); color:#ffd4e2; font-size:11px; font-weight:800; }
.application-drawer-section-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.application-drawer-section-head p { margin:3px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.45; }
.application-drawer-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.application-drawer-fields .field.full { grid-column:1 / -1; }
.application-drawer-form input:not([type="hidden"]),.application-drawer-form select { min-height:44px; }
.application-drawer-form .application-level-picker .tag-choice { min-height:44px; }
.application-drawer-form textarea { min-height:112px; }
.application-drawer-form input[readonly],.application-drawer-form textarea[readonly],.application-drawer-form select:disabled { border-color:rgba(139,124,246,.24); background:#20232d; color:#d9d3ff; cursor:default; opacity:1; }
.application-drawer-form input:disabled { opacity:.72; }
.application-drawer-form small,.application-upload-state { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.application-media-preview { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.application-media-item { display:grid; align-content:start; gap:7px; min-width:0; padding:10px; border:1px solid var(--s6-line); border-radius:10px; background:#151820; }
.application-media-item strong { color:var(--s6-text); font-size:12px; }
.application-media-item img { width:100%; height:116px; object-fit:cover; border-radius:8px; background:#20232d; }
.application-media-item span { color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.application-drawer-note { display:flex; align-items:flex-start; gap:8px; min-width:0; padding:10px 11px; border-radius:9px; background:rgba(239,121,157,.07); color:#ffd2df; font-size:12px; line-height:1.5; }
.application-drawer-note i { flex:0 0 auto; width:17px; height:17px; }
.application-drawer-close,.application-drawer-cancel,.application-drawer-submit { min-height:44px; }

@media (max-width:1180px) {
  .application-card { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .application-card-primary,.application-card-profile,.application-card-evidence,.application-card-actions { grid-column:auto; }
  .application-card-signature { grid-column:1 / -1; }
  .application-card-actions .actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .application-card-actions .actions .application-view-button { grid-column:1 / -1; }
}

@media (max-width:640px) {
  .application-page-head,.application-status-head,.blocked-page-head { align-items:stretch; flex-direction:column; gap:10px; }
  .application-page-heading h3,.application-status-heading h3,.blocked-page-heading h3 { font-size:19px; }
  .application-kpi-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .application-kpi { padding:11px 9px; }
  .application-kpi strong { font-size:17px; }
  .application-kpi span,.application-kpi small { font-size:10px; }
  .application-queue-head { align-items:flex-start; flex-direction:column; gap:3px; }
  .application-queue-head span { text-align:left; }
  .application-card { grid-template-columns:1fr; gap:12px; padding:13px; }
  .application-card-primary,.application-card-profile,.application-card-evidence,.application-card-actions,.application-card-signature { grid-column:1; }
  .application-card-actions { padding-top:2px; }
  .application-card-actions .actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .application-card-actions .actions .application-view-button { grid-column:1 / -1; }
  .application-status { grid-template-columns:1fr; gap:9px; }
  .application-status > i,.blocked-status > i { width:20px; height:20px; }
  .pending-application-facts,.blocked-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .application-drawer-fields,.application-media-preview { grid-template-columns:1fr; }
  .application-drawer-fields .field.full { grid-column:auto; }
  .application-media-item img { height:140px; }
  .drawer-footer .application-drawer-cancel,.drawer-footer .application-drawer-submit,.drawer-footer .application-drawer-close { flex:1 1 0; }
}

@media (max-width:390px) {
  .application-kpi { padding-inline:7px; }
  .application-kpi strong { font-size:16px; }
  .application-card-actions .actions { grid-template-columns:1fr; }
  .application-card-actions .actions .application-view-button { grid-column:1; }
  .pending-application-facts,.blocked-facts { grid-template-columns:1fr; }
}
.identity-center,
.identity-choices-panel { display:grid; gap:14px; min-width:0; }
.identity-choice-card button,
.identity-center-actions button { min-height:44px; }
.identity-entry { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:13px; padding-top:13px; border-top:1px solid var(--s6-line); color:var(--s6-muted); font-size:11px; line-height:1.45; }
.identity-entry .ghost { min-height:44px; padding-inline:10px; color:#ffd4e2; }
.identity-choices-head,.identity-center-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-width:0; }
.identity-choices-head h2,.identity-center-head h2 { margin:0; color:var(--s6-text); font-size:19px; letter-spacing:-.02em; }
.identity-choices-head p,.identity-center-head p { margin:4px 0 0; color:var(--s6-muted); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.identity-choices-head button { flex:0 0 auto; min-height:44px; }
.identity-choices-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.identity-choice-card { display:grid; align-content:start; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:13px; background:#151820; }
.identity-choice-card[data-status="active"] { border-color:rgba(239,121,157,.32); }
.identity-choice-card[data-status="unavailable"],.identity-choice-card[data-status="disabled"] { opacity:.78; }
.identity-choice-top { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; min-width:0; }
.identity-choice-type { color:var(--s6-text); font-size:15px; font-weight:800; line-height:1.4; overflow-wrap:anywhere; }
.identity-choice-state { flex:0 0 auto; padding:4px 7px; border:1px solid var(--s6-line); border-radius:999px; color:var(--s6-muted); font-size:10px; line-height:1.2; white-space:nowrap; }
.identity-choice-card[data-status="active"] .identity-choice-state { border-color:rgba(134,209,170,.35); background:rgba(134,209,170,.10); color:#b7f3cf; }
.identity-choice-card[data-status="disabled"] .identity-choice-state { border-color:rgba(239,126,134,.35); background:rgba(239,126,134,.08); color:#ffc8cc; }
.identity-choice-uid { display:grid; gap:3px; min-width:0; }
.identity-choice-uid span { color:var(--s6-muted); font-size:11px; }
.identity-choice-uid strong { color:#f0edf5; font-size:14px; line-height:1.45; overflow-wrap:anywhere; word-break:break-word; }
.identity-choice-help { margin:0; color:var(--s6-muted); font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.identity-choice-card button { width:100%; }
.identity-choice-card button:disabled { cursor:not-allowed; }
.identity-center-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; min-width:0; }
.identity-center-fact { display:grid; gap:4px; min-width:0; padding:13px; border:1px solid var(--s6-line); border-radius:12px; background:#151820; }
.identity-center-fact span { color:var(--s6-muted); font-size:11px; }
.identity-center-fact strong { color:var(--s6-text); font-size:14px; line-height:1.45; overflow-wrap:anywhere; word-break:break-word; }
.identity-center-actions { display:flex; flex-wrap:wrap; gap:9px; }
.identity-center-actions button { flex:1 1 190px; }
.identity-center-actions .danger { border-color:rgba(239,126,134,.4); color:#ffc8cc; }
.identity-payout-card { display:grid; gap:12px; min-width:0; padding:16px; border:1px solid rgba(139,124,246,.28); border-radius:14px; background:linear-gradient(135deg,rgba(139,124,246,.10),rgba(21,24,32,.92)); }
.identity-payout-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-width:0; }
.identity-payout-head h3 { margin:0; color:var(--s6-text); font-size:16px; }
.identity-payout-head p,.identity-payout-help,.identity-payout-phone-note { margin:4px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.identity-payout-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.identity-payout-summary > div { display:grid; gap:5px; min-width:0; padding:12px; border:1px solid var(--s6-line); border-radius:11px; background:#151820; }
.identity-payout-summary span { color:var(--s6-muted); font-size:11px; }
.identity-payout-summary strong { color:var(--s6-text); font-size:14px; line-height:1.45; overflow-wrap:anywhere; word-break:break-word; }
.identity-payout-card > .primary { min-height:44px; }
.identity-payout-state { display:flex; align-items:flex-start; gap:9px; min-width:0; padding:12px; border:1px solid var(--s6-line); border-radius:11px; background:#151820; color:#d8d5dd; font-size:12px; line-height:1.5; }
.identity-payout-state > i { flex:0 0 auto; width:17px; height:17px; color:#c8c0ff; }
.identity-payout-state > span { min-width:0; overflow-wrap:anywhere; }
.identity-payout-state[data-state="error"] { border-color:rgba(239,126,134,.42); color:#ffc8cc; flex-wrap:wrap; }
.identity-payout-state[data-state="error"] button { min-height:44px; margin-left:26px; }
.identity-payout-backdrop { position:fixed; z-index:60; inset:0; display:grid; place-items:center; padding:18px; background:rgba(4,6,10,.72); }
.identity-payout-dialog { display:grid; gap:16px; width:min(100%,560px); max-height:min(92dvh,760px); min-width:0; overflow:auto; padding:20px; border:1px solid rgba(139,124,246,.38); border-radius:16px; background:#11141b; box-shadow:0 24px 70px rgba(0,0,0,.48); }
.identity-payout-dialog-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-width:0; }
.identity-payout-dialog-head h2 { margin:0; color:var(--s6-text); font-size:19px; }
.identity-payout-dialog-head p { margin:5px 0 0; color:var(--s6-muted); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.identity-payout-dialog-head .icon-btn { flex:0 0 auto; width:44px; min-width:44px; min-height:44px; }
.identity-payout-dialog form { display:grid; gap:14px; min-width:0; }
.identity-payout-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; min-width:0; }
.identity-payout-dialog input { width:100%; min-width:0; min-height:46px; }
.identity-payout-code-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:10px; min-width:0; }
.identity-payout-code-row > button { min-width:138px; min-height:46px; }
.identity-payout-phone-note { display:flex; align-items:flex-start; gap:8px; margin:0; padding:11px 12px; border:1px solid var(--s6-line); border-radius:11px; background:#151820; }
.identity-payout-phone-note i { flex:0 0 auto; width:17px; height:17px; color:#c8c0ff; }
.identity-payout-code-sent { display:flex; align-items:flex-start; gap:8px; margin:0; padding:10px 11px; border:1px solid rgba(134,209,170,.38); border-radius:10px; background:rgba(134,209,170,.08); color:#b7f3cf; font-size:12px; line-height:1.5; }
.identity-payout-code-sent i { flex:0 0 auto; width:17px; height:17px; }
.identity-payout-form-error { min-width:0; padding:10px 11px; border:1px solid rgba(239,126,134,.42); border-radius:10px; background:rgba(239,126,134,.07); color:#ffc8cc; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.identity-payout-dialog-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:9px; }
.identity-payout-dialog-actions button { min-width:116px; min-height:44px; }
.identity-payout-dialog button:disabled { cursor:not-allowed; opacity:.62; }

@media (max-width:640px) {
  .identity-entry { align-items:flex-start; flex-direction:column; }
  .identity-entry .ghost { width:100%; }
  .identity-choices-head,.identity-center-head { align-items:stretch; flex-direction:column; }
  .identity-choices-head button { width:100%; }
  .identity-choices-grid { grid-template-columns:1fr; }
  .identity-center-summary { grid-template-columns:1fr; }
  .identity-center-actions { display:grid; grid-template-columns:1fr; }
  .identity-center-actions button { width:100%; }
  .identity-payout-summary,.identity-payout-fields { grid-template-columns:1fr; }
  .identity-payout-code-row { grid-template-columns:1fr; }
  .identity-payout-code-row > button,.identity-payout-dialog-actions button,.identity-payout-state[data-state="error"] button { width:100%; margin-left:0; }
  .identity-payout-dialog { max-height:calc(100dvh - 24px); padding:16px; }
}

@media (max-width:390px) {
  .identity-choice-card { padding:12px; }
}

/* Stage 6C4B: identity earnings and withdrawal workspace. */
.identity-earnings-card-shell { display:grid; gap:14px; min-width:0; padding:16px; border:1px solid rgba(134,209,170,.28); border-radius:14px; background:linear-gradient(145deg,rgba(134,209,170,.07),rgba(21,24,32,.95)); }
.identity-earnings-head,.identity-earnings-card-head,.identity-earnings-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-width:0; }
.identity-earnings-head h3,.identity-earnings-detail-head h3 { margin:0; color:var(--s6-text); font-size:16px; }
.identity-earnings-head p,.identity-earnings-detail-head p { margin:4px 0 0; color:var(--s6-muted); font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.identity-earnings-head > button,.identity-earnings-card-actions button,.identity-earnings-detail > button { min-height:44px; }
.identity-earnings-create-action { display:grid; gap:6px; justify-items:end; min-width:min(100%,240px); }
.identity-earnings-create-action > button { min-height:46px; }
.identity-earnings-entry-reason { max-width:280px; color:#ffc8cc; font-size:11px; line-height:1.45; text-align:right; overflow-wrap:anywhere; }
.identity-earnings-summary { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; min-width:0; }
.identity-earnings-manager-summary { grid-template-columns:repeat(4,minmax(0,1fr)); }
.identity-earnings-fact { display:grid; gap:5px; min-width:0; padding:12px; border:1px solid var(--s6-line); border-radius:11px; background:#151820; }
.identity-earnings-fact span { color:var(--s6-muted); font-size:11px; }
.identity-earnings-fact strong { color:var(--s6-text); font-size:15px; overflow-wrap:anywhere; }
.identity-earnings-policy,.identity-earnings-form-note,.identity-earnings-state { display:flex; align-items:flex-start; gap:8px; min-width:0; padding:11px 12px; border:1px solid var(--s6-line); border-radius:10px; background:#151820; color:var(--s6-muted); font-size:12px; line-height:1.5; }
.identity-earnings-policy { border-color:rgba(134,209,170,.28); color:#b7f3cf; }
.identity-earnings-policy i,.identity-earnings-form-note i,.identity-earnings-state i { flex:0 0 auto; width:17px; height:17px; }
.identity-earnings-policy span,.identity-earnings-form-note span,.identity-earnings-state span { min-width:0; overflow-wrap:anywhere; }
.identity-earnings-state { justify-content:center; flex-wrap:wrap; min-height:76px; }
.identity-earnings-state[data-tone="error"],.identity-earnings-form-error { border-color:rgba(239,126,134,.42); background:rgba(239,126,134,.08); color:#ffc8cc; }
.identity-earnings-state button,.identity-earnings-form-error button { min-height:44px; }
.identity-earnings-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; }
.identity-earnings-search { display:block; min-width:0; }
.identity-earnings-search input { width:100%; min-height:46px; }
.identity-earnings-filters { display:flex; flex-wrap:wrap; gap:8px; }
.identity-earnings-filter { min-height:44px; padding:0 13px; border:1px solid var(--s6-line); border-radius:999px; background:#151820; color:var(--s6-muted); }
.identity-earnings-filter.is-active { border-color:rgba(239,121,157,.48); background:rgba(239,121,157,.11); color:#ffd4e2; }
.identity-earnings-list { display:grid; gap:10px; min-width:0; }
.identity-earnings-card { display:grid; gap:11px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:12px; background:#151820; }
.identity-earnings-card-head > div { display:grid; gap:4px; min-width:0; }
.identity-earnings-card-head strong { color:var(--s6-text); overflow-wrap:anywhere; word-break:break-word; }
.identity-earnings-card-head div span { color:var(--s6-muted); font-size:11px; }
.identity-earnings-card-facts,.identity-earnings-detail-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; min-width:0; }
.identity-earnings-card-facts > div,.identity-earnings-detail-facts > div { display:grid; gap:4px; min-width:0; }
.identity-earnings-card-facts dt,.identity-earnings-detail-facts dt { color:var(--s6-muted); font-size:11px; }
.identity-earnings-card-facts dd,.identity-earnings-detail-facts dd { margin:0; color:var(--s6-text); font-size:12px; line-height:1.5; overflow-wrap:anywhere; word-break:break-word; }
.identity-earnings-card-actions { display:flex; flex-wrap:wrap; gap:8px; }
.identity-earnings-card-actions button { min-width:120px; }
.identity-earnings-drawer-backdrop,.identity-earnings-detail-backdrop { position:fixed; inset:0; z-index:125; display:grid; place-items:center; padding:18px; background:rgba(5,7,11,.78); }
 .identity-earnings-drawer,.identity-earnings-detail,.identity-withdrawal-review-dialog { display:grid; gap:14px; width:min(100%,560px); max-height:min(92dvh,760px); overflow:auto; padding:18px; border:1px solid rgba(239,121,157,.36); border-radius:16px; background:#11141b; box-shadow:0 22px 70px rgba(0,0,0,.45); }
.identity-earnings-drawer form { display:grid; gap:13px; min-width:0; }
.identity-earnings-drawer input,.identity-earnings-drawer textarea { min-height:46px; }
.identity-earnings-drawer textarea { min-height:100px; }
.identity-earnings-detail-head > .icon-btn { min-width:44px; min-height:44px; }
.identity-earnings-dialog-actions { display:flex; flex-wrap:wrap; gap:9px; }
.identity-earnings-dialog-actions button { min-width:132px; min-height:46px; }
.identity-earnings-form-error { display:flex; align-items:flex-start; flex-wrap:wrap; gap:9px; padding:11px 12px; border:1px solid rgba(239,126,134,.42); border-radius:10px; font-size:12px; line-height:1.5; }
.identity-earnings-form-error span { flex:1 1 180px; min-width:0; overflow-wrap:anywhere; }
.identity-earnings-detail > button { justify-self:start; }
@media (max-width:760px) {
  .identity-earnings-summary,.identity-earnings-manager-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .identity-earnings-summary .identity-earnings-fact:last-child { grid-column:1 / -1; }
  .identity-earnings-toolbar { grid-template-columns:1fr; }
  .identity-earnings-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .identity-earnings-filter { width:100%; }
}

body.p2-operate-active :is(.tabs,.report-tabs) button,
body.p3-operate-active :is(.tabs,.report-tabs) button { border: 0 !important; border-bottom: 2px solid transparent !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
body.p2-operate-active :is(.tabs,.report-tabs) button.active,
body.p3-operate-active :is(.tabs,.report-tabs) button.active { border-bottom-color: var(--p2-accent) !important; color: #ffdce7 !important; }
body.p2-operate-active :is(.tabs,.report-tabs) button:focus-visible,
body.p3-operate-active :is(.tabs,.report-tabs) button:focus-visible { outline: 2px solid rgba(238,128,168,.72); outline-offset: 3px; }

body.p2-operate-active :is(.report-page-head,.dispatch-page-header,.customer-page-head,.recharge-page-head) > div > p,
body.p3-operate-active :is(.personnel-page-head,.payroll-page-intro,.withdrawal-page-head) > div > p,
body.p3-operate-active .wallet-page-intro > div > p,
body.p3-operate-active .wallet-data-state[data-tone="success"],
body.p3-operate-active .wallet-list-head > span,
body.p3-operate-active .payroll-data-state[data-tone="success"] { display: none !important; }
@media (max-width:640px) {
  .identity-earnings-head,.identity-earnings-card-head,.identity-earnings-detail-head { align-items:stretch; flex-direction:column; }
  .identity-earnings-head > button { width:100%; }
  .identity-earnings-create-action { width:100%; justify-items:stretch; }
  .identity-earnings-entry-reason { max-width:none; text-align:left; }
  .identity-earnings-card-facts,.identity-earnings-detail-facts { grid-template-columns:1fr; }
  .identity-earnings-card-actions,.identity-earnings-dialog-actions { display:grid; grid-template-columns:1fr; }
  .identity-earnings-card-actions button,.identity-earnings-dialog-actions button { width:100%; }
  .identity-earnings-drawer-backdrop,.identity-earnings-detail-backdrop { align-items:start; padding:10px; }
   .identity-earnings-drawer,.identity-earnings-detail,.identity-withdrawal-review-dialog { width:100%; max-height:calc(100dvh - 20px); padding:14px; }
}
@media (max-width:390px) {
  .identity-earnings-card-shell { padding:12px; }
  .identity-earnings-fact { padding:10px; }
}
.phone-recovery-manager-item-head > div { display:grid; gap:4px; min-width:0; }
.phone-recovery-manager-item-head div span { color:var(--s6-muted); font-size:11px; }
.phone-recovery-manager-facts > div { display:grid; gap:4px; min-width:0; }
.phone-recovery-manager-detail dl { display:grid; gap:9px; margin:0; min-width:0; }
.phone-recovery-manager-detail dl > div { display:grid; grid-template-columns:92px minmax(0,1fr); gap:8px; min-width:0; }
.phone-recovery-manager-detail dt { color:var(--s6-muted); font-size:11px; }
.phone-recovery-manager-detail dd { margin:0; color:var(--s6-text); font-size:12px; line-height:1.55; overflow-wrap:anywhere; word-break:break-word; }

@media (max-width:640px) {
  .phone-recovery-manager-detail dl > div { grid-template-columns:1fr; gap:3px; }
}

/* Stage 6D2: payroll, commission, member rules and settings stay dense on desktop and single-column on phones. */
.player-payroll-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:14px; min-width:0; }
.payroll-page,.payroll-page .content-grid,.payroll-page .card,.payroll-page .table-wrap { min-width:0; max-width:100%; }
.payroll-page .table-wrap { overflow-x:auto; }
.payroll-page .payroll-content-stack { grid-template-columns:minmax(0,1fr); }
.payroll-page .payroll-content-stack > .card { width:100%; }
.player-payroll-head h3 { margin:0 0 4px; color:var(--s6-text); font-size:18px; }
.player-payroll-head span { color:var(--s6-muted); font-size:12px; line-height:1.5; }
.player-payroll-head button { min-height:44px; flex:0 0 auto; }
.payroll-save-status,.settings-save-status { display:flex; align-items:flex-start; gap:9px; min-width:0; margin:0 0 12px; padding:11px 12px; border:1px solid var(--s6-line); border-radius:10px; background:rgba(139,124,246,.08); color:#ddd7ff; font-size:12px; line-height:1.5; }
.payroll-save-status[data-tone="success"],.settings-save-status[data-tone="success"] { border-color:rgba(134,209,170,.34); background:rgba(134,209,170,.08); color:#b7f3cf; }
.payroll-save-status[data-tone="error"],.settings-save-status[data-tone="error"] { border-color:rgba(239,126,134,.42); background:rgba(239,126,134,.10); color:#ffc8cc; }
.payroll-save-status > i,.settings-save-status > i { flex:0 0 auto; width:17px; height:17px; }
.payroll-save-status span,.settings-save-status span { min-width:0; overflow-wrap:anywhere; }
.settings-save-status { flex-wrap:wrap; align-items:center; }
.settings-save-status button { min-height:44px; margin-left:auto; }
.settings-rate-field small { display:block; margin-top:5px; color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.settings-form input,.settings-form textarea { min-height:46px; }
.settings-form button { min-height:44px; }
.settings-form textarea { min-height:100px; resize:vertical; }
.range-error { flex:1 1 100%; min-width:0; padding:9px 11px; border:1px solid rgba(239,126,134,.42); border-radius:9px; background:rgba(239,126,134,.09); color:#ffc8cc; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.sort-btn { display:inline-flex; align-items:center; gap:5px; min-height:44px; padding:4px 8px; border:1px solid transparent; border-radius:8px; background:transparent; color:inherit; font-weight:700; }
.sort-btn:hover,.sort-btn:focus-visible { border-color:rgba(239,121,157,.45); background:rgba(239,121,157,.08); }
.sort-btn i { width:15px; height:15px; }
.members-readonly .table-wrap { min-width:0; }
@media (max-width:760px) {
  .player-payroll-head { display:grid; gap:10px; }
  .player-payroll-head button { width:100%; }
  .settings-save-status button { width:100%; margin-left:0; }
  .settings-form { grid-template-columns:1fr; }
  .settings-form .field.full { grid-column:auto; }
  .payroll-save-status,.settings-save-status { align-items:flex-start; }
}

/* Stage 6C3C: ordinary personal center and player workspace. */
.profile-account-line { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px; color:var(--muted); }
.profile-account-line strong { color:var(--s6-text); }
.profile-account-label { display:block; margin-top:4px; color:var(--s6-muted); font-size:11px; overflow-wrap:anywhere; }
.profile-boundary-note,.profile-drawer-boundary,.player-workspace-next { display:flex; align-items:flex-start; gap:9px; min-width:0; margin-top:14px; padding:11px 12px; border:1px solid var(--s6-line); border-radius:10px; background:rgba(139,124,246,.07); color:var(--s6-muted); font-size:12px; line-height:1.55; }
.profile-boundary-note > i,.profile-drawer-boundary > i,.player-workspace-next > i { flex:0 0 auto; width:17px; height:17px; color:#cfc7ff; }
.profile-boundary-note span,.profile-drawer-boundary span,.player-workspace-next span { min-width:0; overflow-wrap:anywhere; }
.profile-edit-locked { display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:0 13px; border:1px solid var(--s6-line); border-radius:10px; color:var(--s6-muted); font-size:12px; }
.profile-edit-locked i { width:15px; height:15px; }
.player-workspace-card { display:grid; gap:14px; }
.player-workspace-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; min-width:0; }
.player-workspace-link { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; min-height:72px; padding:12px; border:1px solid var(--s6-line); border-radius:12px; background:#151820; color:var(--s6-text); text-align:left; cursor:pointer; }
.player-workspace-link:hover { border-color:rgba(239,121,157,.48); background:rgba(239,121,157,.07); }
.player-workspace-link:focus-visible { outline:2px solid #ffd4e2; outline-offset:2px; }
.player-workspace-link > i:first-child { flex:0 0 auto; width:19px; height:19px; color:#ffd4e2; }
.player-workspace-link > i:last-child { flex:0 0 auto; width:16px; height:16px; color:var(--s6-muted); }
.player-workspace-link span { display:grid; gap:3px; min-width:0; }
.player-workspace-link strong,.player-workspace-link small { overflow-wrap:anywhere; }
.player-workspace-link strong { font-size:13px; }
.player-workspace-link small { color:var(--s6-muted); font-size:11px; line-height:1.45; }
.player-workspace-next { margin-top:0; background:rgba(134,209,170,.06); border-color:rgba(134,209,170,.28); color:#b7f3cf; }
.profile-drawer-boundary ~ * input,.profile-drawer-boundary ~ * textarea { min-height:46px; }
.drawer .level-picker .tag-choice { min-height:46px !important; height:46px !important; }
@media (max-width:1040px) { .player-workspace-links { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) {
  .player-workspace-links { grid-template-columns:1fr; }
  .player-workspace-link { min-height:64px; }
  .profile-edit-locked { width:100%; justify-content:center; }
}

/* Stage 6C4A: player report and dispatch task flow. */
.player-reports-page,.player-dispatches-page { display:grid; gap:16px; min-width:0; }
.player-reports-page .report-page-head,.player-dispatches-page .dispatch-page-header { align-items:flex-start; }
.player-reports-page .report-page-head > button { min-height:46px; flex:0 0 auto; }
.player-reports-page .report-tabs { display:flex; flex-wrap:wrap; gap:8px; }
.player-reports-page .report-tabs button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:44px; }
.player-reports-page .tab-count { min-width:22px; padding:2px 6px; border-radius:999px; background:rgba(255,255,255,.08); color:var(--s6-muted); font-size:11px; }
.player-reports-page .report-tabs button.active .tab-count { background:rgba(239,121,157,.18); color:#ffd4e2; }
.player-report-list,.player-dispatch-groups { display:grid; gap:12px; min-width:0; }
.player-report-card,.player-dispatch-card { display:grid; gap:12px; min-width:0; padding:16px; border:1px solid var(--s6-line); border-radius:14px; background:linear-gradient(145deg,rgba(28,31,42,.96),rgba(18,20,28,.98)); }
.player-report-card-head,.player-dispatch-card-head,.player-dispatch-group-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-width:0; }
.player-report-card-head > div,.player-dispatch-card-head > div { display:grid; gap:7px; min-width:0; }
.player-report-card h4,.player-dispatch-card h4 { margin:0; color:var(--s6-text); font-size:16px; line-height:1.45; overflow-wrap:anywhere; }
.player-report-next { display:flex; align-items:flex-start; gap:8px; margin:0; padding:10px 11px; border:1px solid rgba(134,209,170,.25); border-radius:10px; background:rgba(134,209,170,.06); color:#b7f3cf; font-size:12px; line-height:1.5; }
.player-report-next strong { flex:0 0 auto; color:#e0ffe9; }
.player-report-facts,.player-dispatch-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; min-width:0; }
.player-report-facts > div,.player-dispatch-facts > div { display:grid; gap:4px; min-width:0; }
.player-report-facts dt,.player-dispatch-facts dt { color:var(--s6-muted); font-size:11px; }
.player-report-facts dd,.player-dispatch-facts dd { margin:0; color:var(--s6-text); font-size:12px; line-height:1.5; overflow-wrap:anywhere; word-break:break-word; }
.player-report-media { min-height:44px; display:flex; align-items:center; }
.player-report-proof { display:block; width:84px; height:58px; padding:0; border:1px solid var(--s6-line); border-radius:8px; overflow:hidden; background:#11141b; }
.player-report-proof img { width:100%; height:100%; object-fit:cover; }
.player-report-actions,.player-dispatch-actions { display:flex; flex-wrap:wrap; gap:8px; }
.player-report-actions button,.player-dispatch-actions button { min-height:44px; }
.player-report-empty,.player-dispatch-empty { display:grid; gap:7px; place-items:center; min-height:180px; padding:24px; text-align:center; }
.player-report-empty strong,.player-dispatch-empty strong { color:var(--s6-text); font-size:15px; }
.player-report-empty span,.player-dispatch-empty span { color:var(--s6-muted); font-size:12px; line-height:1.5; }
.player-report-empty button,.player-dispatch-empty button { min-height:44px; }
.player-dispatch-group { display:grid; gap:10px; min-width:0; }
.player-dispatch-group-head { align-items:center; padding:2px 2px 0; }
.player-dispatch-group-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.player-dispatch-group-head span { color:var(--s6-muted); font-size:11px; }
.player-dispatch-list { display:grid; gap:10px; min-width:0; }
.player-dispatch-link { display:grid; gap:4px; min-width:0; margin:0; padding:9px 10px; border:1px dashed var(--s6-line); border-radius:9px; color:var(--s6-muted); font-size:11px; }
.player-dispatch-link code { display:block; min-width:0; color:#d9d4e3; font:inherit; overflow-wrap:anywhere; word-break:break-all; }
/* 6C4A report drawer: every primary field and command stays a real touch target. */
.report-drawer-form input:not([type="hidden"]),.report-drawer-form select,.report-drawer-form textarea,.report-drawer-form input[type="file"] { min-height:46px; height:46px; }
.report-drawer-form textarea { height:auto; min-height:96px; }
.report-drawer-form .picker-field,.report-drawer-form .picker-field > input { min-height:46px; }
.report-drawer-form .secondary,.report-drawer-form button { min-height:46px; }
.report-drawer-form .field-necessity { margin-inline-start:5px;color:#f2a1bb;font-size:11px;font-weight:600; }
.report-drawer-form .field-necessity.optional { color:var(--s6-muted);font-weight:500; }

/* Stage 6D3: shared secondary states and overlay affordances. */
.settings-save-status button { min-height:44px; }

.audio-play { width:44px; height:44px; min-width:44px; min-height:44px; display:grid; place-items:center; border:1px solid rgba(239,121,157,.42); border-radius:999px; background:rgba(239,121,157,.12); color:#ffd8e5; }
.audio-play:hover,.audio-play:focus-visible { border-color:var(--s6-pink); background:rgba(239,121,157,.2); }
.audio-play[data-audio-state="loading"] { cursor:progress; }
.audio-play[data-audio-state="error"] { border-color:rgba(239,126,134,.55); background:rgba(239,126,134,.12); color:#ffc8cc; }
.audio-play[data-audio-state="ended"] { border-color:rgba(134,209,170,.42); background:rgba(134,209,170,.1); color:#b7f3cf; }
.audio-play i,.audio-play svg { width:18px; height:18px; }
.audio-empty,.application-audio-empty,.personnel-audio-empty { display:inline-flex; align-items:center; gap:7px; min-height:44px; color:var(--s6-muted); font-size:12px; line-height:1.45; overflow-wrap:anywhere; }
.audio-empty i,.application-audio-empty i,.personnel-audio-empty i { flex:0 0 auto; width:16px; height:16px; }
.application-audio-button[data-audio-state="error"] { border-color:rgba(239,126,134,.55); color:#ffc8cc; }
.application-audio-button[data-audio-state="ended"] { border-color:rgba(134,209,170,.42); color:#b7f3cf; }

@media (prefers-reduced-motion: reduce) {
  .candidate-card { transition:none !important; animation:none !important; }
  .candidate-card:hover { transform:none !important; }
}
@media (max-width:640px) {
  .player-reports-page .report-page-head,.player-dispatches-page .dispatch-page-header { display:grid; gap:12px; }
  .player-reports-page .report-page-head > button { width:100%; }
  .player-reports-page .report-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .player-reports-page .report-tabs button:last-child { grid-column:1 / -1; }
  .player-report-card,.player-dispatch-card { padding:13px; }
  .player-report-card-head,.player-dispatch-card-head { align-items:stretch; flex-direction:column; }
  .player-report-facts,.player-dispatch-facts { grid-template-columns:1fr; }
  .player-report-actions,.player-dispatch-actions { display:grid; grid-template-columns:1fr; }
  .player-report-actions button,.player-dispatch-actions button { width:100%; }
  .player-dispatches-page .dispatch-summary { width:100%; }
}
.dispatch-card,
.player-dispatch-card,
.player-report-card,
.personnel-task-card,
.personnel-stat { transition: transform 260ms var(--ease-glass), border-color 260ms ease, box-shadow 260ms ease, background 260ms ease; }
.dispatch-card:hover,
.player-dispatch-card:hover,
.player-report-card:hover,
.personnel-task-card:hover { transform: translateY(-2px); border-color: rgba(244,166,193,.32); box-shadow: 0 28px 72px rgba(0,0,0,.32); }
.dispatch-page, .player-dispatches-page, .player-reports-page { border-radius: 22px; }
.dispatch-card, .player-dispatch-card, .player-report-card { background: rgba(17, 25, 37, .66); border-color: rgba(225,235,247,.12); }
.dispatch-card--open { border-left: 1px solid rgba(131,214,176,.48); box-shadow: inset 2px 0 0 rgba(131,214,176,.42), 0 18px 46px rgba(0,0,0,.18); }
.dispatch-card--closed { border-left: 1px solid rgba(157,169,186,.36); box-shadow: inset 2px 0 0 rgba(157,169,186,.28), 0 18px 46px rgba(0,0,0,.18); }
.dispatch-key-facts > div, .dispatch-request-grid > div, .dispatch-link-row { background: rgba(255,255,255,.035); border: 1px solid rgba(225,235,247,.08); border-radius: 13px; }
@keyframes glass-enter { from { opacity: 0; transform: translateY(10px) scale(.992); } to { opacity: 1; transform: translateY(0) scale(1); } }
.app > main > #view > .wallet-owner-page,
.app > main > #view > .withdrawal-owner-page { animation:none !important; transform:none !important; }

.dispatch-export-backdrop { position:fixed;inset:0;z-index:610;display:grid;place-items:center;padding:20px;background:rgba(3,5,9,.72);opacity:0;pointer-events:none;transition:opacity 180ms ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px); }
.dispatch-export-backdrop.show { opacity:1;pointer-events:auto; }
.dispatch-export-dialog { width:min(680px,100%);max-height:min(760px,calc(100dvh - 40px));overflow:auto;padding:22px;border:1px solid rgba(238,226,233,.16);border-radius:16px;background:rgba(18,19,25,.96);box-shadow:0 28px 80px rgba(0,0,0,.52);transform:translateY(10px);transition:transform 220ms var(--ease-glass); }
.dispatch-export-backdrop.show .dispatch-export-dialog { transform:translateY(0); }
.dispatch-export-head { display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--s6-line); }
.dispatch-export-head h2 { margin:0;color:var(--s6-text);font-size:20px;line-height:1.3;letter-spacing:-.02em; }
.dispatch-export-head p { max-width:64ch;margin:7px 0 0;color:var(--s6-muted);font-size:13px;line-height:1.65; }
.dispatch-export-head code,.dispatch-export-tokens { color:#f4bacd; }
#dispatchExportForm { display:grid;gap:10px;padding-top:18px; }
#dispatchExportForm label { color:var(--s6-text);font-size:13px;font-weight:700; }
#dispatchExportTemplateInput { width:100%;min-height:260px;resize:vertical;padding:14px 16px;border:1px solid rgba(238,226,233,.18);border-radius:12px;background:#0f1118;color:var(--s6-text);font:inherit;font-size:16px;line-height:1.65; }
#dispatchExportTemplateInput:focus { border-color:rgba(239,121,157,.62);box-shadow:0 0 0 3px rgba(239,121,157,.13);outline:none; }
.dispatch-export-tokens { margin:0;font-size:12px;line-height:1.65;overflow-wrap:anywhere; }
.dispatch-export-error { margin:0;padding:10px 12px;border:1px solid rgba(246,111,127,.35);border-radius:10px;background:rgba(98,25,37,.22);color:#ffc3cb;font-size:13px; }
.dispatch-export-actions { display:flex;align-items:center;gap:10px;padding-top:8px; }
.dispatch-export-action-spacer { flex:1; }
.dispatch-page-actions { flex-wrap:wrap; }

@media (max-width: 760px) {
  .dispatch-page-actions button { min-height:44px; }
  .dispatch-card-actions button, .dispatch-card-actions .tag { min-height:44px; }
  .dispatch-card-actions .dispatch-export-action { grid-column:1 / -1; }
  .public-actions button { min-height:44px; }
  .dispatch-export-backdrop { align-items:end;padding:0; }
  .dispatch-export-dialog { width:100%;max-height:90dvh;padding:20px 16px calc(18px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0; }
  .dispatch-export-head { gap:12px; }
  #dispatchExportTemplateInput { min-height:240px;font-size:16px; }
  .dispatch-export-actions { display:grid;grid-template-columns:1fr 1fr; }
  .dispatch-export-actions > :first-child { grid-column:1 / -1; }
  .dispatch-export-action-spacer { display:none; }
  .dispatch-export-actions button { min-height:44px; }
}
@media (prefers-reduced-motion: reduce) {
  .dispatch-card,
.player-dispatch-card,
.player-report-card { animation: none !important; transition: none !important; }
}
body.p1-dashboard-active .dashboard-hero-actions .account-status-chip {
  background: #1a1b1f !important;
  border-color: #3a363d !important;
}
body.p1-dashboard-active .dashboard-page > .role-context > div {
  min-height: 52px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #191a1e !important;
}
body.p1-dashboard-active .dashboard-page > .role-context > div + div { border-left: 1px solid var(--p1-line) !important; }
body.p1-dashboard-active .dashboard-report-table .report-main { gap: 3px; }
body.p1-dashboard-active .dashboard-report-table .report-main strong {
  display: block;
  white-space: normal;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
body.p1-dashboard-active .dashboard-report-table .report-meta { gap: 5px; white-space: nowrap; overflow: hidden; }
body.p1-dashboard-active .dashboard-report-proof .thumb { width: 24px; height: 24px; border-radius: 5px; }

/* Player sample: one compact identity block, then the four real tasks. */
body.p1-player-profile-active .player-profile-shell,
body.p1-player-profile-active .player-workspace-card {
  border: 1px solid var(--p1-line) !important;
  border-radius: 14px !important;
  background: var(--p1-surface) !important;
  box-shadow: var(--p1-shadow) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.p1-player-profile-active .player-profile-shell { padding: 13px !important; }
body.p1-player-profile-active .player-profile-shell .section-head { margin-bottom: 8px; }
body.p1-player-profile-active .player-profile-shell .section-head > div > span { display: none; }
body.p1-player-profile-active .player-profile-shell .profile-card {
  min-width: 0;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.p1-player-profile-active .player-profile-shell .profile-account-label { margin-top: 2px; }
body.p1-player-profile-active .player-profile-shell .profile-boundary-note { margin-top: 0; }
body.p1-player-profile-active .player-workspace-card { gap: 8px; padding: 12px !important; }
body.p1-player-profile-active .player-workspace-card .section-head { margin-bottom: 0; }
body.p1-player-profile-active .player-workspace-card .section-head > div > span { display: none; }
body.p1-player-profile-active .player-workspace-card .section-head h3 { font-size: 16px !important; color: var(--p1-text); }
body.p1-player-profile-active .player-workspace-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
body.p1-player-profile-active .player-workspace-link {
  min-height: 96px !important;
  padding: 10px !important;
  border: 1px solid #303137 !important;
  border-radius: 10px !important;
  background: var(--p1-surface-raised) !important;
}
body.p1-player-profile-active .player-workspace-link strong { color: var(--p1-text); font-size: 14px; line-height: 1.25; }
body.p1-player-profile-active .player-workspace-link small { color: var(--p1-muted); font-size: 11px; line-height: 1.35; }
body.p1-player-profile-active .player-workspace-link > i:first-child { color: var(--p1-pink); }
body.p1-player-profile-active .player-workspace-next {
  margin-top: 0;
  padding: 2px 0;
  border: 0;
  background: transparent !important;
  color: var(--p1-muted);
  font-size: 10px;
  line-height: 1.35;
}
body.p1-player-profile-active .player-profile-shell ~ .grid.content-grid > .card {
  min-width: 0;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding-inline: 0 !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) {
  background: #141518 !important;
  border-color: #3a3038 !important;
  box-shadow: -18px 24px 58px rgba(0,0,0,.38) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-header,
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-footer {
  background: #18191d !important;
  border-color: var(--p1-line) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) input,
body.p1-player-profile-active .drawer:has(#profile-player-code) select,
body.p1-player-profile-active .drawer:has(#profile-player-code) textarea {
  background: #101114 !important;
  border-color: #303137 !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .level-picker { background: #1d1a20 !important; border-color: #443440 !important; }
body.p1-player-profile-active .drawer:has(#profile-player-code) .level-picker .tag-choice { background: #191a1e !important; border-color: #34353c !important; }
body.p1-player-profile-active .drawer:has(#profile-player-code) .level-picker .tag-choice.active,
body.p1-player-profile-active .drawer:has(#profile-player-code) .level-picker .tag-choice[aria-pressed="true"] {
  background: var(--p1-pink) !important;
  border-color: var(--p1-pink) !important;
  color: #2a111b !important;
}
@media (max-width: 640px) {
  body.p1-player-profile-active .player-profile-shell .profile-card { grid-template-columns: auto minmax(0, 1fr) !important; gap: 10px !important; }
  body.p1-player-profile-active .player-profile-shell .profile-photo { width: 92px; height: 92px; }
  body.p1-player-profile-active .player-profile-shell .profile-boundary-note {
    margin-top: 6px;
    padding: 5px 0 0;
    font-size: 10px;
    line-height: 1.3;
  }
  body.p1-player-profile-active .player-workspace-card { margin-top: 0; }
  body.p1-player-profile-active .player-workspace-card .section-head > span { font-size: 11px; }
  body.p1-player-profile-active .player-workspace-link {
    min-height: 96px !important;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto 1fr;
    align-content: center;
    gap: 6px 7px;
  }
  body.p1-player-profile-active .player-workspace-link > i:last-child { grid-column: 2; justify-self: end; width: 15px; height: 15px; }
  body.p1-player-profile-active .player-profile-shell ~ .grid.content-grid { gap: 10px; }
}
@media (max-width: 360px) {
  body.p1-player-profile-active .player-profile-shell { padding: 11px !important; }
  body.p1-player-profile-active .player-profile-shell .profile-photo { width: 82px; height: 82px; }
  body.p1-player-profile-active .player-workspace-links { gap: 7px !important; }
  body.p1-player-profile-active .player-workspace-link { padding: 8px !important; min-height: 92px !important; }
  body.p1-player-profile-active .player-workspace-link strong { font-size: 13px; }
  body.p1-player-profile-active .player-workspace-link small { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  body.p1-player-profile-active .player-profile-shell *,
body.p1-player-profile-active .player-workspace-card *,
body.p1-player-profile-active .drawer:has(#profile-player-code) * {
    animation: none !important;
    transition: none !important;
  }
  body.p1-player-profile-active .player-workspace-link:hover { transform: none !important; }
}

/* Retired P1 R4/R5 visual experiments. Kept inert for audit history. */
@media (max-width: 0px) {
/* Visual pilot P1 R4: material depth and ordered grids, still page-scoped. */
:root {
  --p1-neon-pink: #f078a0;
  --p1-neon-rose: #ffb3ca;
  --p1-neon-violet: #9a78ff;
  --p1-neon-blue: #6887ff;
  --p1-material-base: linear-gradient(145deg, rgba(240,120,160,.14), rgba(154,120,255,.10) 52%, rgba(15,16,21,.94));
  --p1-material-soft: linear-gradient(145deg, rgba(240,120,160,.07), rgba(104,135,255,.065) 54%, rgba(24,25,31,.94));
  --p1-glow-hero: 0 22px 56px rgba(6,6,10,.48), 0 0 34px rgba(240,120,160,.14), inset 0 1px 0 rgba(255,211,226,.16);
  --p1-glow-card: 0 14px 34px rgba(6,6,10,.28), 0 0 18px rgba(154,120,255,.09), inset 0 1px 0 rgba(255,255,255,.06);
  --p1-glow-soft: 0 9px 22px rgba(6,6,10,.2), inset 0 1px 0 rgba(255,255,255,.045);
}

/* Owner: hero peak, continuous identity band, then a stable main/auxiliary grid. */
body.p1-dashboard-active .dashboard-page {
  position: relative;
  isolation: isolate;
  gap: 16px;
}
body.p1-dashboard-active .dashboard-page::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -28px -18px auto;
  height: 360px;
  pointer-events: none;
  background:
    radial-gradient(circle at 83% 3%, rgba(240,120,160,.18), transparent 34%),
    radial-gradient(circle at 62% 12%, rgba(154,120,255,.13), transparent 42%);
  filter: blur(22px);
  opacity: .9;
}
body.p1-dashboard-active .dashboard-hero {
  position: relative;
  overflow: hidden;
  border-color: rgba(240,120,160,.34) !important;
  background:
    radial-gradient(circle at 92% 16%, rgba(240,120,160,.28), transparent 38%),
    radial-gradient(circle at 70% 110%, rgba(154,120,255,.2), transparent 48%),
    linear-gradient(118deg, #17131d 0%, #17161d 58%, #24202d 100%) !important;
  box-shadow: var(--p1-glow-hero) !important;
}
body.p1-dashboard-active .dashboard-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(115deg, transparent 0 48%, rgba(255,183,209,.08) 72%, transparent 100%);
  mix-blend-mode: screen;
}
body.p1-dashboard-active .dashboard-hero > * { position: relative; z-index: 1; }
body.p1-dashboard-active .dashboard-page > .role-context {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  overflow: hidden;
  border-color: rgba(240,120,160,.2) !important;
  background:
    linear-gradient(90deg, rgba(240,120,160,.08), rgba(154,120,255,.06) 50%, rgba(104,135,255,.06)),
    #121316 !important;
  box-shadow: var(--p1-glow-soft) !important;
}
body.p1-dashboard-active .dashboard-page > .role-context > div {
  min-width: 0;
  background: transparent !important;
  box-shadow: none !important;
}
body.p1-dashboard-active .dashboard-page > .role-context > div + div { border-left-color: rgba(255,255,255,.1) !important; }
body.p1-dashboard-active .dashboard-priority {
  grid-template-columns: minmax(0, 1.95fr) minmax(270px, .65fr);
  align-items: stretch;
}
body.p1-dashboard-active .work-queue {
  position: relative;
  overflow: hidden;
  border-color: rgba(240,120,160,.26) !important;
  background:
    linear-gradient(180deg, rgba(240,120,160,.09), transparent 24%),
    linear-gradient(145deg, rgba(154,120,255,.08), rgba(20,21,27,.96) 44%) !important;
  box-shadow: var(--p1-glow-card) !important;
}
body.p1-dashboard-active .work-queue::before {
  content: "";
  position: absolute;
  inset: 0 16% auto 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(255,179,202,.9), rgba(154,120,255,.28), transparent);
  box-shadow: 0 0 14px rgba(240,120,160,.42);
  pointer-events: none;
}
body.p1-dashboard-active .work-queue > * { position: relative; z-index: 1; }
body.p1-dashboard-active .dashboard-report-table thead th {
  background: linear-gradient(90deg, rgba(104,135,255,.1), rgba(154,120,255,.08)) !important;
  border-bottom-color: rgba(240,120,160,.2) !important;
}
body.p1-dashboard-active .dashboard-report-table tbody tr:nth-child(odd) { background: linear-gradient(90deg, rgba(255,255,255,.018), transparent 72%); }
body.p1-dashboard-active .dashboard-report-table tbody tr:nth-child(even) { background: linear-gradient(90deg, rgba(154,120,255,.025), transparent 72%); }
body.p1-dashboard-active .dashboard-report-table tbody td { border-bottom-color: rgba(255,255,255,.055) !important; }
body.p1-dashboard-active .dashboard-overview {
  min-width: 0;
  align-self: stretch;
  padding: 0 !important;
}
body.p1-dashboard-active .dashboard-overview .section-head {
  padding-top: 2px;
  border-bottom-color: rgba(154,120,255,.22);
}
body.p1-dashboard-active .dashboard-overview .metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: minmax(96px, 1fr);
  align-items: stretch;
}
body.p1-dashboard-active .dashboard-overview .metric {
  background: var(--p1-material-soft) !important;
  border-color: rgba(255,255,255,.09) !important;
  box-shadow: var(--p1-glow-soft) !important;
}
body.p1-dashboard-active .dashboard-overview .metric:nth-child(2) {
  border-color: rgba(240,120,160,.28) !important;
  background: linear-gradient(145deg, rgba(240,120,160,.14), rgba(154,120,255,.09) 62%, rgba(24,25,31,.95)) !important;
  box-shadow: var(--p1-glow-card) !important;
}
body.p1-dashboard-active .dashboard-records > .card,
body.p1-dashboard-active .dashboard-owner-insights > .card,
body.p1-dashboard-active .dashboard-page > .grid.content-grid:not(.dashboard-records):not(.dashboard-owner-insights) > .card {
  background: var(--p1-material-soft) !important;
  box-shadow: var(--p1-glow-soft) !important;
}

/* Player: one luminous identity surface and one shared material family for equal task tiles. */
body.p1-player-profile-active .player-profile-shell {
  position: relative;
  overflow: hidden;
  border-color: rgba(240,120,160,.34) !important;
  background:
    radial-gradient(circle at 88% 4%, rgba(240,120,160,.27), transparent 34%),
    radial-gradient(circle at 16% 88%, rgba(154,120,255,.18), transparent 48%),
    linear-gradient(138deg, #19151e 0%, #17171d 56%, #211c2a 100%) !important;
  box-shadow: var(--p1-glow-hero) !important;
}
body.p1-player-profile-active .player-profile-shell::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(128deg, transparent 0 54%, rgba(255,196,216,.08), transparent 85%);
}
body.p1-player-profile-active .player-profile-shell > * { position: relative; z-index: 1; }
body.p1-player-profile-active .player-profile-shell .profile-photo {
  border: 1px solid rgba(255,179,202,.5);
  background: linear-gradient(145deg, rgba(240,120,160,.32), rgba(154,120,255,.26));
  box-shadow: 0 0 22px rgba(240,120,160,.18), inset 0 1px 0 rgba(255,255,255,.14);
}
body.p1-player-profile-active .player-workspace-card {
  position: relative;
  overflow: hidden;
  border-color: rgba(154,120,255,.28) !important;
  background:
    linear-gradient(180deg, rgba(154,120,255,.08), transparent 30%),
    linear-gradient(145deg, rgba(240,120,160,.065), rgba(20,21,27,.95) 60%) !important;
  box-shadow: var(--p1-glow-card) !important;
}
body.p1-player-profile-active .player-workspace-card::before {
  content: "";
  position: absolute;
  inset: 0 24% auto 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(255,179,202,.78), rgba(154,120,255,.25), transparent);
  box-shadow: 0 0 12px rgba(154,120,255,.36);
  pointer-events: none;
}
body.p1-player-profile-active .player-workspace-card > * { position: relative; z-index: 1; }
body.p1-player-profile-active .player-workspace-links {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: minmax(96px, 1fr);
  align-items: stretch;
  gap: 10px !important;
}
body.p1-player-profile-active .player-workspace-link {
  height: 100%;
  min-height: 96px !important;
  border-color: rgba(255,255,255,.1) !important;
  background: var(--p1-material-base) !important;
  box-shadow: var(--p1-glow-soft) !important;
}
body.p1-player-profile-active .player-workspace-link:hover,
body.p1-player-profile-active .player-workspace-link:focus-visible {
  border-color: rgba(240,120,160,.45) !important;
  background: linear-gradient(145deg, rgba(240,120,160,.2), rgba(154,120,255,.14) 56%, rgba(20,21,27,.94)) !important;
  box-shadow: var(--p1-glow-card) !important;
}
body.p1-player-profile-active .player-workspace-link > i:first-child { filter: drop-shadow(0 0 8px rgba(240,120,160,.38)); }
body.p1-player-profile-active .player-workspace-card .profile-boundary-note {
  border-top: 1px solid rgba(154,120,255,.18);
  padding-top: 8px;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) {
  background:
    radial-gradient(circle at 92% 0%, rgba(240,120,160,.18), transparent 34%),
    linear-gradient(145deg, #17151c, #111217 72%) !important;
  border-color: rgba(240,120,160,.32) !important;
  box-shadow: -22px 24px 64px rgba(0,0,0,.5), 0 0 26px rgba(154,120,255,.1) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-header {
  background: linear-gradient(90deg, rgba(240,120,160,.12), rgba(154,120,255,.08), transparent) !important;
  border-bottom-color: rgba(240,120,160,.22) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-footer {
  background: linear-gradient(90deg, rgba(154,120,255,.1), rgba(240,120,160,.1)) !important;
  border-top-color: rgba(154,120,255,.2) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) input,
body.p1-player-profile-active .drawer:has(#profile-player-code) select,
body.p1-player-profile-active .drawer:has(#profile-player-code) textarea {
  background: rgba(9,10,13,.86) !important;
  border-color: rgba(255,255,255,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
}

/* 业主 2026-09-20：今日概览回到「身份栏」正下方 ——
   原来这两档宽度里有把概览 order 压到页面最底的规则（构建源里各有一条），已连同删除；
   概览现在本来就是满宽整行，按 DOM 顺序排即可。窄屏只剩「记录两列 → 单列」的收窄。 */
@media (max-width: 980px) {
  body.p1-dashboard-active .dashboard-records { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  body.p1-player-profile-active .player-workspace-links { grid-auto-rows: minmax(96px, 1fr); }
  body.p1-player-profile-active .player-workspace-link { min-height: 96px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.p1-dashboard-active .dashboard-page::before,
  body.p1-dashboard-active .dashboard-hero::after,
  body.p1-dashboard-active .work-queue::before,
  body.p1-player-profile-active .player-profile-shell::after,
  body.p1-player-profile-active .player-workspace-card::before { filter: none !important; opacity: .55 !important; }
}

/* Visual pilot P1 R5: quieter glass depth; R4 grid and page scope remain intact. */
:root {
  --p1-glass-bg-soft: rgba(17,18,24,.64);
  --p1-glass-bg-card: rgba(20,21,28,.74);
  --p1-glass-bg-front: rgba(16,17,23,.88);
  --p1-glass-line: rgba(255,255,255,.09);
  --p1-glass-line-lit: rgba(255,218,231,.18);
  --p1-glass-highlight: inset 0 1px 0 rgba(255,255,255,.08);
  --p1-glass-shadow-soft: 0 12px 32px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.06);
  --p1-glass-shadow-card: 0 22px 48px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08);
  --p1-glass-shadow-front: 0 28px 72px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.08);
  --p1-glass-env-pink: rgba(240,120,160,.10);
  --p1-glass-env-cool: rgba(104,135,255,.06);
}

/* R5 plane 1: one distant, low-opacity environment light behind the page. */
body.p1-dashboard-active .dashboard-page::before {
  background:
    radial-gradient(circle at 86% 2%, var(--p1-glass-env-pink), transparent 34%),
    radial-gradient(circle at 62% 12%, var(--p1-glass-env-cool), transparent 44%);
  filter: blur(34px);
  opacity: .72;
}

/* R5 plane 2: navigation/context and ordinary panels share neutral transparent glass. */
body.p1-dashboard-active .dashboard-page > .role-context {
  border-color: var(--p1-glass-line) !important;
  background: var(--p1-glass-bg-soft) !important;
  -webkit-backdrop-filter: blur(14px) saturate(106%) !important;
  backdrop-filter: blur(14px) saturate(106%) !important;
  box-shadow: var(--p1-glass-shadow-soft) !important;
}
body.p1-dashboard-active .dashboard-page > .role-context > div + div { border-left-color: rgba(255,255,255,.08) !important; }
body.p1-dashboard-active .dashboard-hero {
  border-color: var(--p1-glass-line-lit) !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(240,120,160,.10), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.025), var(--p1-glass-bg-card) 58%, rgba(12,13,17,.78)) !important;
  -webkit-backdrop-filter: blur(18px) saturate(110%) !important;
  backdrop-filter: blur(18px) saturate(110%) !important;
  box-shadow: var(--p1-glass-shadow-card) !important;
}
body.p1-dashboard-active .dashboard-hero::after {
  background: linear-gradient(118deg, transparent 0 52%, rgba(255,218,231,.045) 76%, transparent 100%);
  mix-blend-mode: screen;
}
body.p1-dashboard-active .work-queue {
  border-color: var(--p1-glass-line-lit) !important;
  background: var(--p1-glass-bg-card) !important;
  -webkit-backdrop-filter: blur(18px) saturate(108%) !important;
  backdrop-filter: blur(18px) saturate(108%) !important;
  box-shadow: var(--p1-glass-shadow-card) !important;
}
body.p1-dashboard-active .work-queue::before {
  background: linear-gradient(90deg, rgba(255,179,202,.38), rgba(255,218,231,.10), transparent);
  box-shadow: 0 0 8px rgba(240,120,160,.12);
}
body.p1-dashboard-active .dashboard-report-table thead th {
  background: rgba(240,120,160,.045) !important;
  border-bottom-color: rgba(255,218,231,.12) !important;
}
body.p1-dashboard-active .dashboard-report-table tbody tr:nth-child(odd) { background: rgba(255,255,255,.012); }
body.p1-dashboard-active .dashboard-report-table tbody tr:nth-child(even) { background: rgba(255,255,255,.022); }
body.p1-dashboard-active .dashboard-overview .section-head { border-bottom-color: rgba(255,255,255,.08); }
body.p1-dashboard-active .dashboard-overview .metric,
body.p1-dashboard-active .dashboard-records > .card,
body.p1-dashboard-active .dashboard-owner-insights > .card,
body.p1-dashboard-active .dashboard-page > .grid.content-grid:not(.dashboard-records):not(.dashboard-owner-insights) > .card {
  border-color: var(--p1-glass-line) !important;
  background: var(--p1-glass-bg-soft) !important;
  -webkit-backdrop-filter: blur(14px) saturate(105%) !important;
  backdrop-filter: blur(14px) saturate(105%) !important;
  box-shadow: var(--p1-glass-shadow-soft) !important;
}
body.p1-dashboard-active .dashboard-overview .metric:nth-child(2) {
  border-color: rgba(255,218,231,.18) !important;
  background: rgba(240,120,160,.065) !important;
  box-shadow: var(--p1-glass-shadow-soft) !important;
}

/* R5 plane 3: player outer glass is thin; identity is the only local pink focal layer. */
body.p1-player-profile-active .player-profile-shell {
  border-color: var(--p1-glass-line-lit) !important;
  background:
    radial-gradient(circle at 88% 4%, rgba(240,120,160,.12), transparent 32%),
    var(--p1-glass-bg-card) !important;
  -webkit-backdrop-filter: blur(18px) saturate(110%) !important;
  backdrop-filter: blur(18px) saturate(110%) !important;
  box-shadow: var(--p1-glass-shadow-card) !important;
}
body.p1-player-profile-active .player-profile-shell::after {
  background: linear-gradient(128deg, transparent 0 58%, rgba(255,218,231,.04), transparent 84%);
}
body.p1-player-profile-active .player-profile-shell .profile-photo {
  border-color: rgba(255,218,231,.25);
  background: rgba(240,120,160,.10);
  box-shadow: var(--p1-glass-highlight);
}
body.p1-player-profile-active .player-workspace-card {
  border-color: var(--p1-glass-line) !important;
  background: rgba(17,18,24,.58) !important;
  -webkit-backdrop-filter: blur(14px) saturate(105%) !important;
  backdrop-filter: blur(14px) saturate(105%) !important;
  box-shadow: var(--p1-glass-shadow-soft) !important;
}
body.p1-player-profile-active .player-workspace-card::before {
  background: linear-gradient(90deg, rgba(255,218,231,.24), rgba(255,255,255,.06), transparent);
  box-shadow: none;
}
body.p1-player-profile-active .player-workspace-link {
  border-color: var(--p1-glass-line) !important;
  background: var(--p1-glass-bg-card) !important;
  -webkit-backdrop-filter: blur(14px) saturate(105%) !important;
  backdrop-filter: blur(14px) saturate(105%) !important;
  box-shadow: var(--p1-glass-shadow-soft) !important;
}
body.p1-player-profile-active .player-workspace-link:hover,
body.p1-player-profile-active .player-workspace-link:focus-visible {
  border-color: var(--p1-glass-line-lit) !important;
  background: rgba(240,120,160,.09) !important;
  box-shadow: var(--p1-glass-shadow-soft) !important;
}
body.p1-player-profile-active .player-workspace-link > i:first-child { filter: drop-shadow(0 0 4px rgba(240,120,160,.12)); }

/* R5 plane 4: the drawer is the most-front, readable glass surface. */
body.p1-player-profile-active .drawer:has(#profile-player-code) {
  border-color: var(--p1-glass-line-lit) !important;
  background: var(--p1-glass-bg-front) !important;
  -webkit-backdrop-filter: blur(22px) saturate(112%) !important;
  backdrop-filter: blur(22px) saturate(112%) !important;
  box-shadow: var(--p1-glass-shadow-front) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-header {
  background: rgba(240,120,160,.045) !important;
  border-bottom-color: rgba(255,218,231,.12) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-footer {
  background: rgba(104,135,255,.035) !important;
  border-top-color: rgba(255,255,255,.10) !important;
}

@media (prefers-reduced-motion: reduce) {
  body.p1-dashboard-active .dashboard-page::before,
  body.p1-dashboard-active .dashboard-hero::after,
  body.p1-dashboard-active .work-queue::before,
  body.p1-player-profile-active .player-profile-shell::after,
  body.p1-player-profile-active .player-workspace-card::before { opacity: .38 !important; }
}
}
/* 业主 2026-09-20：首页「最近充值留痕 / 本周流水趋势」等宽等高。
   ⚠ 这组规则必须放在上面的停用区（@media (max-width:0px)）之外才生效 ——
   上一版误加进停用区，等宽与拉伸从未生效（业主截图「缺一块」的根因）。 */
@media (min-width: 981px) {
  body.p1-dashboard-active .dashboard-records {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
  }
  body.p1-dashboard-active .dashboard-records > .card { display: flex; flex-direction: column; }
  body.p1-dashboard-active .dashboard-records .chart-bars { flex: 1; align-content: space-between; }
  body.p1-dashboard-active .dashboard-owner-insights { align-items: stretch; }
  body.p1-dashboard-active .dashboard-owner-insights > .card { display: flex; flex-direction: column; }
  body.p1-dashboard-active .dashboard-owner-insights .chart-bars { flex: 1; align-content: space-between; }
}
@media (max-width: 980px) {
  body.p1-dashboard-active .dashboard-records { grid-template-columns: minmax(0, 1fr); }
}
body.p1-dashboard-active .dashboard-page > .role-context > div {
  min-height: 62px !important;
  padding: 13px 18px !important;
  background: transparent !important;
}
body.p1-dashboard-active .dashboard-page > .role-context > div:first-child { padding-left: 0 !important; }
body.p1-dashboard-active .section-head div > span { font-size: 10px; }
body.p1-dashboard-active .dashboard-report-table .report-main strong { font-size: 12px; }
body.p1-player-profile-active .player-profile-shell {
  padding: 0 0 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
body.p1-player-profile-active .player-profile-shell::after { display: none; }
body.p1-player-profile-active .player-profile-shell .section-head { margin-bottom: 18px; }
body.p1-player-profile-active .player-profile-shell .section-head h3 { font-size: 21px; font-weight: 680; }
body.p1-player-profile-active .player-profile-shell .section-head span { font-size: 11px; }
body.p1-player-profile-active .player-profile-shell .section-head .primary {
  border: 1px solid rgba(238,128,168,.2) !important;
  background: var(--p1-r6-pink-soft) !important;
  color: #ffdce8 !important;
  box-shadow: none !important;
}
body.p1-player-profile-active .player-profile-shell .profile-card { gap: 16px !important; }
body.p1-player-profile-active .player-profile-shell .profile-photo {
  width: 68px;
  height: 68px;
  border: 1px solid rgba(238,128,168,.2);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(238,128,168,.14), rgba(99,84,150,.08));
  box-shadow: 0 14px 32px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.075);
}
body.p1-player-profile-active .profile-card h3 { font-size: 15px; }
body.p1-player-profile-active .profile-account-line,
body.p1-player-profile-active .profile-account-label,
body.p1-player-profile-active .profile-card small { font-size: 10px; }
body.p1-player-profile-active .profile-card .status,
body.p1-player-profile-active .profile-card .tag { font-size: 10px; }
body.p1-player-profile-active .player-workspace-card {
  gap: 18px;
  margin-top: 4px;
  padding: 26px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--p1-r6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
body.p1-player-profile-active .player-workspace-card::before { display: none; }
body.p1-player-profile-active .player-workspace-card .section-head { padding-inline: 2px; }
body.p1-player-profile-active .player-workspace-card .section-head h3 { font-size: 15px !important; font-weight: 620; }
body.p1-player-profile-active .player-workspace-links {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: auto;
  gap: 14px 10px !important;
}
body.p1-player-profile-active .player-workspace-link {
  min-height: 70px !important;
  height: 70px;
  padding: 8px 4px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
body.p1-player-profile-active .player-workspace-link:first-child {
  grid-column: 1 / -1;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 88px !important;
  height: 88px;
  padding: 16px 18px !important;
  border: 1px solid rgba(238,128,168,.18) !important;
  background:
    radial-gradient(200px 110px at 100% 0%, rgba(238,128,168,.18), transparent 74%),
    linear-gradient(118deg, rgba(39,29,39,.94), rgba(25,23,31,.9)) !important;
  box-shadow: 0 20px 44px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.065) !important;
  -webkit-backdrop-filter: blur(18px) saturate(108%) !important;
  backdrop-filter: blur(18px) saturate(108%) !important;
}
body.p1-player-profile-active .player-workspace-link:not(:first-child) {
  grid-template-columns: 1fr;
  grid-template-rows: 34px auto;
  align-content: center;
  justify-items: center;
  text-align: center;
}
body.p1-player-profile-active .player-workspace-link:hover,
body.p1-player-profile-active .player-workspace-link:focus-visible {
  background: rgba(238,128,168,.07) !important;
}
body.p1-player-profile-active .player-workspace-link strong { font-size: 12px; font-weight: 620; }
body.p1-player-profile-active .player-workspace-link:first-child strong { font-size: 15px; font-weight: 680; }
body.p1-player-profile-active .player-workspace-link small {
  display: -webkit-box;
  overflow: hidden;
  font-size: 10px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
body.p1-player-profile-active .player-workspace-link:not(:first-child) small,
body.p1-player-profile-active .player-workspace-link:not(:first-child) > i:last-child,
body.p1-player-profile-active .player-workspace-link:not(:first-child) > svg:last-child { display: none !important; }
body.p1-player-profile-active .player-workspace-link > i:first-child {
  width: 18px;
  height: 18px;
  filter: none;
}
body.p1-player-profile-active .player-workspace-link:not(:first-child) > i:first-child {
  box-sizing: content-box;
  width: 18px;
  height: 18px;
  padding: 7px;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 11px;
  background: rgba(255,255,255,.035);
  color: #f2c6d5;
}
body.p1-player-profile-active .player-workspace-link > i:last-child { width: 14px; height: 14px; }
body.p1-player-profile-active .player-workspace-card .profile-boundary-note {
  margin: 4px 2px 0;
  padding: 12px 0 0;
  border: 0;
  border-top: 1px solid var(--p1-r6-line);
  border-radius: 0;
  background: transparent;
  color: var(--p1-r6-muted);
  font-size: 10px;
}
body.p1-player-profile-active .player-workspace-next { display: none; }
body.p1-player-profile-active .drawer:has(#profile-player-code) {
  background: rgba(14,15,19,.94) !important;
  border-color: var(--p1-r6-line-lit) !important;
  box-shadow: 0 30px 80px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.05) !important;
  -webkit-backdrop-filter: blur(22px) saturate(106%) !important;
  backdrop-filter: blur(22px) saturate(106%) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-header,
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-footer {
  background: rgba(255,255,255,.018) !important;
  border-color: var(--p1-r6-line) !important;
}
body.p1-player-profile-active .drawer:has(#profile-player-code) .drawer-header h3 { font-size: 18px; }
body.p1-player-profile-active .drawer:has(#profile-player-code) label { font-size: 11px; }
body.p1-player-profile-active .drawer:has(#profile-player-code) input,
body.p1-player-profile-active .drawer:has(#profile-player-code) select,
body.p1-player-profile-active .drawer:has(#profile-player-code) textarea {
  border-color: transparent !important;
  border-bottom-color: rgba(255,255,255,.12) !important;
  border-radius: 8px 8px 0 0 !important;
  background: rgba(255,255,255,.022) !important;
  font-size: 16px;
  box-shadow: none !important;
}

@media (max-width: 640px) {
  body.p1-player-profile-active .player-profile-shell button {
    height: 44px;
    min-height: 44px;
    padding-block: 0;
    font-size: 14px;
  }
  body.p1-player-profile-active .player-profile-shell { padding: 0 0 24px !important; }
  body.p1-player-profile-active .player-profile-shell .profile-card {
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 12px !important;
  }
  body.p1-player-profile-active .player-profile-shell .profile-photo { width: 66px; height: 66px; }
  body.p1-player-profile-active .player-workspace-card { padding-top: 26px !important; }
  body.p1-player-profile-active .player-workspace-link { font-size: 13px; }
}

@media (max-width: 360px) {
  body.p1-player-profile-active .player-profile-shell .profile-photo { width: 62px; height: 62px; }
  body.p1-player-profile-active .player-workspace-links { gap: 12px 8px !important; }
  body.p1-player-profile-active .player-workspace-link:first-child { min-height: 84px !important; height: 84px; padding: 14px 16px !important; }
  body.p1-player-profile-active .player-workspace-link:not(:first-child) { min-height: 66px !important; height: 66px; }
}
body.p2-operate-active ::selection { background: rgba(238,128,168,.3); color: #fff8fa; }
body.p2-operate-active #view > :is(.reports-page,.dispatch-page,.customer-page,.recharge-page) {
  width: min(100%,var(--p2-content-width));
  margin-inline: auto;
}

/* Open heading, quiet controls, one dominant work surface. */
body.p2-operate-active #view > :is(.reports-page,.dispatch-page,.customer-page,.recharge-page) {
  gap: var(--p2-space-5);
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.p2-operate-active :is(.report-page-head,.dispatch-page-header,.customer-page-head,.recharge-page-head) {
  min-height: 70px;
  padding: 0 2px 18px;
  border-bottom: 1px solid var(--p2-line);
}
body.p2-operate-active :is(.report-page-head,.dispatch-page-title,.customer-page-heading,.recharge-page-heading) h3 {
  color: var(--p2-text);
  font-size: 24px;
  font-weight: 650;
  letter-spacing: -.025em;
}
body.p2-operate-active :is(.report-page-head,.dispatch-page-title,.customer-page-heading,.recharge-page-heading) p {
  max-width: 70ch;
  color: var(--p2-muted);
  font-size: 12px;
}
body.p2-operate-active :is(.page-kicker,.dispatch-kicker,.customer-page-kicker) { display: none; }
body.p2-operate-active :is(.report-search,.dispatch-search-row,.customer-toolbar,.recharge-toolbar) {
  padding: var(--p2-space-3) 2px;
  border: 0;
  border-top: 1px solid var(--p2-line);
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}

/* Reports: queue is primary, detail is the calmer adjacent plane. */
body.p2-operate-active .report-review-workspace {
  grid-template-columns: minmax(350px,.78fr) minmax(0,1.22fr);
  min-height: 600px;
  border-color: var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
  -webkit-backdrop-filter: blur(18px) saturate(106%);
  backdrop-filter: blur(18px) saturate(106%);
}
body.p2-operate-active .report-review-stages {
  border-color: var(--p2-line);
  background: rgba(14,15,19,.58);
}
body.p2-operate-active .review-stage { padding: 18px; border-color: var(--p2-line); }
body.p2-operate-active .stage-number { border-color: var(--p2-line); background: rgba(255,255,255,.035); color: #efc5d4; }
body.p2-operate-active .report-review-row {
  min-height: 72px;
  padding: 12px 10px;
  border-color: transparent;
  border-radius: 10px;
  background: transparent;
}
body.p2-operate-active .report-review-row:hover { border-color: var(--p2-line); background: rgba(255,255,255,.028); }
body.p2-operate-active .report-review-row.selected {
  border-color: var(--p2-line-lit);
  background: var(--p2-accent-soft);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
body.p2-operate-active .report-review-detail.card {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Dispatch: records read as one continuous task queue. */
body.p2-operate-active .dispatch-page-header { grid-template-columns: minmax(0,1fr) auto auto; }
body.p2-operate-active .dispatch-summary { gap: 18px; }
body.p2-operate-active .dispatch-summary-item {
  min-height: 42px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
body.p2-operate-active .dispatch-summary-item + .dispatch-summary-item { padding-left: 18px; border-left: 1px solid var(--p2-line); }
body.p2-operate-active .dispatch-grid {
  overflow: hidden;
  gap: 0 !important;
  border: 1px solid var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
}
body.p2-operate-active .dispatch-page .dispatch-card {
  padding: 22px;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.p2-operate-active .dispatch-page .dispatch-card:last-child { border-bottom: 0; }
body.p2-operate-active .dispatch-key-facts > div {
  padding: 8px 0;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}
body.p2-operate-active .dispatch-request-grid > div {
  padding: 12px;
  border-left: 0;
  border-radius: 10px;
  background: rgba(255,255,255,.024);
}

/* Customers and recharges: one ledger plane, rows carry the rhythm. */
body.p2-operate-active .customer-sort-btn {
  border-color: transparent;
  background: rgba(255,255,255,.025);
}
body.p2-operate-active .customer-record-list,
body.p2-operate-active .recharge-record-list {
  overflow: hidden;
  gap: 0;
  border: 1px solid var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
}
body.p2-operate-active .customer-record,
body.p2-operate-active .recharge-record {
  padding: 16px;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}
body.p2-operate-active :is(.customer-record,.recharge-record):last-child { border-bottom: 0; }
body.p2-operate-active :is(.customer-record,.recharge-record):hover { background: rgba(238,128,168,.035); }
body.p2-operate-active .customer-avatar {
  border-color: var(--p2-line-lit);
  background: var(--p2-accent-soft);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
body.p2-operate-active .recharge-record-money strong,
body.p2-operate-active .recharge-record-credit strong,
body.p2-operate-active .recharge-record-balance strong { color: #f4c4d4; }
body.p2-operate-active .drawer :is(.drawer-form-section,.dispatch-drawer-section,.customer-drawer-section,.recharge-drawer-section) {
  border-color: var(--p2-line);
  background: var(--p2-surface-soft);
}

@media (max-width: 1180px) {
  body.p2-operate-active .report-review-workspace { grid-template-columns: 1fr; }
  body.p2-operate-active .report-review-stages { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  /* Preserve sealed mobile contracts in the final 760px block. */
  .dispatch-page-actions button { min-height: 44px; }
  .dispatch-card-actions button, .dispatch-card-actions .tag { min-height: 44px; }
  .public-actions button { min-height: 44px; }
  body.p2-operate-active #view > :is(.reports-page,.dispatch-page,.customer-page,.recharge-page) { gap: 26px; }
  body.p2-operate-active :is(.report-page-head,.dispatch-page-header,.customer-page-head,.recharge-page-head) {
    min-height: 0;
    padding: 0 0 22px;
  }
  body.p2-operate-active :is(.report-page-head,.dispatch-page-title,.customer-page-heading,.recharge-page-heading) h3 { font-size: 22px; }
  body.p2-operate-active :is(.report-page-head,.dispatch-page-title,.customer-page-heading,.recharge-page-heading) p {
    margin-top: 8px;
    font-size: 11px;
    line-height: 1.6;
  }
  body.p2-operate-active :is(.report-search,.dispatch-search-row,.customer-toolbar,.recharge-toolbar) { padding-block: 14px; }

  body.p2-operate-active .report-review-workspace {
    display: grid;
    gap: 24px;
    min-height: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  body.p2-operate-active .report-review-stages {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    border: 0;
    background: transparent;
  }
  body.p2-operate-active .review-stage {
    padding: 0 0 18px;
    border: 0;
    border-bottom: 1px solid var(--p2-line);
  }
  body.p2-operate-active .review-stage:has(.stage-empty) { display: none; }
  body.p2-operate-active .report-review-row {
    min-height: 82px;
    padding: 14px;
    border: 1px solid var(--p2-line);
    background: var(--p2-surface-soft);
  }
  body.p2-operate-active .report-review-detail.card {
    padding: 18px 16px;
    border: 1px solid var(--p2-line-lit);
    border-radius: var(--p2-panel-radius);
    background: var(--p2-surface-main);
    box-shadow: var(--p2-shadow-main);
  }

  body.p2-operate-active .dispatch-page-header { grid-template-columns: 1fr; gap: 16px; }
  body.p2-operate-active .dispatch-summary { justify-content: flex-start; }
  body.p2-operate-active .dispatch-page-actions button { width: 100%; }
  body.p2-operate-active .dispatch-grid {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  body.p2-operate-active .dispatch-page .dispatch-card {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 22px 0 26px;
  }
  body.p2-operate-active .dispatch-key-facts { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body.p2-operate-active .dispatch-request-grid { grid-template-columns: 1fr; }

  body.p2-operate-active .customer-page-head { flex-direction: column; align-items: stretch; gap: 16px; }
  body.p2-operate-active .customer-page-head > .primary,
  body.p2-operate-active .recharge-create-trigger { width: 100%; }
  body.p2-operate-active .customer-toolbar { gap: 14px; }
  body.p2-operate-active .customer-record-list,
  body.p2-operate-active .recharge-record-list {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  body.p2-operate-active .customer-record,
  body.p2-operate-active .recharge-record {
    padding: 20px 0 24px;
    background: transparent;
  }
  body.p2-operate-active .customer-record { gap: 18px 12px; }
  body.p2-operate-active .customer-fact,
  body.p2-operate-active .customer-benefit-fact { padding-block: 2px; }
  body.p2-operate-active .customer-note { padding-top: 16px; border-top: 1px solid var(--p2-line); }
  body.p2-operate-active .recharge-toolbar { gap: 16px; }
  body.p2-operate-active .recharge-record { gap: 18px 12px; }
  body.p2-operate-active .recharge-record-collection,
  body.p2-operate-active .recharge-record-proof,
  body.p2-operate-active .recharge-record-note,
  body.p2-operate-active .recharge-record-actions { padding-top: 16px; border-color: var(--p2-line); }
}

@media (max-width: 390px) {
  body.p2-operate-active .customer-sort-group { gap: 7px; }
  body.p2-operate-active .customer-sort-btn { padding-inline: 7px; font-size: 11px; }
  body.p2-operate-active .dispatch-key-facts { grid-template-columns: 1fr; }
}
body.p3-operate-active ::selection { background: rgba(238,128,168,.3); color: #fff8fa; }
body.p3-operate-active :is(.withdrawal-page,.personnel-page,.payroll-page) { gap: 20px; }
body.p3-operate-active :is(.withdrawal-page-head,.personnel-page-head) {
  min-height: 70px;
  padding: 0 2px 18px;
  border-bottom: 1px solid var(--p2-line);
}
body.p3-operate-active :is(.withdrawal-page-heading,.personnel-page-head) h3 {
  color: var(--p2-text);
  font-size: 24px;
  font-weight: 650;
  letter-spacing: -.025em;
}
body.p3-operate-active :is(.withdrawal-page-heading,.personnel-page-head) p {
  max-width: 70ch;
  color: var(--p2-muted);
  font-size: 12px;
}
body.p3-operate-active .personnel-page-head .eyebrow { display: none; }

/* Summary facts use one reading band rather than a card wall. */
body.p3-operate-active :is(.withdrawal-summary-grid,.personnel-stat-grid,.payroll-page > .metrics) {
  gap: 0;
  padding-block: 6px;
  border-top: 1px solid var(--p2-line);
  border-bottom: 1px solid var(--p2-line);
}
body.p3-operate-active :is(.withdrawal-summary-card,.personnel-stat,.payroll-page > .metrics .metric) {
  min-height: 82px;
  padding: 14px 18px;
  border: 0 !important;
  border-right: 1px solid var(--p2-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.p3-operate-active :is(.withdrawal-summary-card,.personnel-stat,.payroll-page > .metrics .metric):last-child { border-right: 0 !important; }
body.p3-operate-active :is(.withdrawal-summary-card,.personnel-stat,.payroll-page > .metrics .metric) strong {
  color: var(--p2-text);
  font-size: 20px;
}
body.p3-operate-active :is(.withdrawal-summary-card,.personnel-stat,.payroll-page > .metrics .metric) :is(span,label,small) { color: var(--p2-muted); }
body.p3-operate-active :is(.withdrawal-summary-card--accent,.personnel-stat-accent) {
  background: var(--p2-accent-soft) !important;
}
body.p3-operate-active :is(.withdrawal-summary-card--accent,.personnel-stat-accent) strong { color: #f4c4d4; }
body.p3-operate-active .payroll-page > .metrics .metric::after { display: none !important; }

/* Withdrawals: policy is support; formal records own the main plane. */
body.p3-operate-active .withdrawal-policy {
  padding: 13px 2px;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
  color: #cbc3d0;
}
body.p3-operate-active .withdrawal-policy i { color: #e8b7c8; }
body.p3-operate-active .withdrawal-workspace {
  gap: 16px;
  padding: 18px;
  border-color: var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
  -webkit-backdrop-filter: blur(18px) saturate(106%);
  backdrop-filter: blur(18px) saturate(106%);
}
body.p3-operate-active .withdrawal-toolbar {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--p2-line);
}
body.p3-operate-active .withdrawal-filter { border-color: transparent; background: rgba(255,255,255,.025); }
body.p3-operate-active .withdrawal-filter.active { border-color: var(--p2-line-lit); background: var(--p2-accent-soft); }
body.p3-operate-active .withdrawal-record-list { gap: 0; }
body.p3-operate-active .withdrawal-record {
  padding: 16px 2px;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}
body.p3-operate-active .withdrawal-record:last-child { border-bottom: 0; }
body.p3-operate-active .withdrawal-record:hover { background: rgba(238,128,168,.03); }

/* Personnel: one toolbar and table; mobile becomes an open task list. */
body.p3-operate-active .personnel-application-note {
  padding: 13px 2px;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
  color: #c3dccf;
}
body.p3-operate-active .personnel-toolbar {
  gap: 14px;
  padding-block: 14px;
  border-top: 1px solid var(--p2-line);
  border-bottom: 1px solid var(--p2-line);
}
body.p3-operate-active .personnel-filter button { border-color: transparent; background: rgba(255,255,255,.025); }
body.p3-operate-active .personnel-filter button.active { border-color: var(--p2-line-lit); background: var(--p2-accent-soft); }
body.p3-operate-active .personnel-table {
  border-color: var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
}
body.p3-operate-active .personnel-table thead th { background: rgba(238,128,168,.035); }
body.p3-operate-active .personnel-table tbody tr:nth-child(even) { background: rgba(255,255,255,.018); }
body.p3-operate-active .payroll-page > .range-bar { padding-bottom: 16px; border-bottom: 1px solid var(--p2-line); }
body.p3-operate-active .payroll-page > .searchbar input {
  border-color: transparent;
  border-bottom-color: var(--p2-line);
  border-radius: 9px 9px 0 0;
  background: rgba(255,255,255,.025);
}
body.p3-operate-active .payroll-page .content-grid { gap: 20px; align-items: start; }
body.p3-operate-active .payroll-page .payroll-content-stack { grid-template-columns: minmax(0,1fr); }
body.p3-operate-active .payroll-page .card.section {
  border-color: var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
}
body.p3-operate-active .payroll-page .card.section .section-head {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--p2-line);
}
body.p3-operate-active :is(.payroll-page,#view > .card.section) table thead th { background: rgba(238,128,168,.035); }
body.p3-operate-active :is(.payroll-page,#view > .card.section) table tbody tr:nth-child(even) { background: rgba(255,255,255,.018); }
body.p3-operate-active .drawer :is(.withdrawal-drawer-section,.personnel-drawer-section) { border-color: var(--p2-line); background: var(--p2-surface-soft); }

@media (max-width: 760px) {
  /* Keep sealed mobile contracts visible to the existing static regressions. */
  .dispatch-page-actions button { min-height: 44px; }
  .dispatch-card-actions button, .dispatch-card-actions .tag { min-height: 44px; }
  .public-actions button { min-height: 44px; }
  body.p3-operate-active:has(.payroll-page) .topbar,
  body.p3-operate-active:has(#view > .range-bar + .card.section) .topbar { display: grid; gap: 18px; }
  body.p3-operate-active:has(.payroll-page) .topbar .title-wrap,
  body.p3-operate-active:has(#view > .range-bar + .card.section) .topbar .title-wrap { display: flex; }
  body.p3-operate-active:has(.payroll-page) .topbar .title-logo,
  body.p3-operate-active:has(#view > .range-bar + .card.section) .topbar .title-logo { display: none; }
  body.p3-operate-active :is(.withdrawal-page,.personnel-page,.payroll-page) { gap: 26px; }
  body.p3-operate-active :is(.withdrawal-page-head,.personnel-page-head) {
    min-height: 0;
    padding: 0 0 22px;
  }
  body.p3-operate-active :is(.withdrawal-page-heading,.personnel-page-head) h3 { font-size: 22px; }
  body.p3-operate-active :is(.withdrawal-page-heading,.personnel-page-head) p { margin-top: 8px; font-size: 11px; line-height: 1.6; }
  body.p3-operate-active .personnel-page-head { display: grid; gap: 16px; }
  body.p3-operate-active .personnel-page-head > button { width: 100%; }

  body.p3-operate-active :is(.withdrawal-summary-grid,.personnel-stat-grid,.payroll-page > .metrics) {
    grid-template-columns: repeat(2,minmax(0,1fr));
    padding: 0;
  }
  body.p3-operate-active :is(.withdrawal-summary-card,.personnel-stat,.payroll-page > .metrics .metric) {
    min-height: 86px;
    padding: 15px 10px;
    border-right: 0 !important;
    border-bottom: 1px solid var(--p2-line) !important;
  }
  body.p3-operate-active :is(.withdrawal-summary-card,.personnel-stat,.payroll-page > .metrics .metric):nth-child(odd) { border-right: 1px solid var(--p2-line) !important; }
  body.p3-operate-active .personnel-staff-page .personnel-stat:last-child { grid-column: auto; }

  body.p3-operate-active .withdrawal-page-head { grid-template-columns: 1fr; gap: 16px; }
  body.p3-operate-active .withdrawal-workspace {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  body.p3-operate-active .withdrawal-toolbar { gap: 14px; padding-block: 14px; border-top: 1px solid var(--p2-line); }
  body.p3-operate-active .withdrawal-record { padding: 20px 0 24px; gap: 16px 10px; }
  body.p3-operate-active .withdrawal-empty { border-color: var(--p2-line); background: var(--p2-surface-soft); }

  body.p3-operate-active .personnel-toolbar { gap: 14px; }
  body.p3-operate-active .personnel-mobile-list { gap: 0; }
  body.p3-operate-active .personnel-task-card {
    gap: 16px;
    padding: 22px 0 26px;
    border: 0;
    border-bottom: 1px solid var(--p2-line);
    border-radius: 0;
    background: transparent;
  }
  body.p3-operate-active .personnel-primary-facts { padding-top: 14px; border-top: 1px solid var(--p2-line); }
  body.p3-operate-active .personnel-secondary-facts { color: #c3bcc5; }
  body.p3-operate-active .personnel-card-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.p3-operate-active .personnel-card-actions button { min-width: 0; width: 100%; }
  body.p3-operate-active .personnel-card-actions .danger:nth-child(3) { grid-column: 1 / -1; }

  body.p3-operate-active .payroll-page > .range-bar { margin-bottom: 0; padding-bottom: 18px; }
  body.p3-operate-active .payroll-page .content-grid { grid-template-columns: 1fr; }
  body.p3-operate-active .payroll-page .card.section {
    padding: 18px 16px;
    border-color: var(--p2-line);
    background: var(--p2-surface-main);
    box-shadow: 0 20px 54px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.035);
  }
}

@media (max-width: 390px) {
  body.p3-operate-active .withdrawal-filters { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
body.p4-support-active :is(.application-page,.application-status-page,.blocked-page) { gap: 20px; }
body.p4-support-active :is(.application-page-head,.application-status-head,.blocked-page-head) {
  min-height: 70px;
  padding: 0 2px 18px;
  border-bottom: 1px solid var(--p2-line);
}
body.p4-support-active :is(.application-page-heading,.application-status-heading,.blocked-page-heading) h3 { color: var(--p2-text); font-size: 24px; font-weight: 650; letter-spacing: -.025em; }
body.p4-support-active :is(.application-page-heading,.application-status-heading,.blocked-page-heading) p { max-width: 70ch; margin-top: 7px; color: var(--p2-muted); font-size: 12px; line-height: 1.6; }

/* Applications: open facts first, then one quiet review queue. */
body.p4-support-active .application-kpi-strip {
  border: 0;
  border-block: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}
body.p4-support-active .application-kpi { min-height: 82px; padding: 14px 18px; border-color: var(--p2-line); }
body.p4-support-active .application-kpi strong { color: var(--p2-text); font-size: 20px; }
body.p4-support-active .application-kpi :is(span,small) { color: var(--p2-muted); }
body.p4-support-active .application-queue {
  gap: 0;
  padding: 18px 20px 4px;
  border: 1px solid var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
  -webkit-backdrop-filter: blur(18px) saturate(106%);
  backdrop-filter: blur(18px) saturate(106%);
}
body.p4-support-active .application-queue-head { padding: 0 0 16px; border-bottom: 1px solid var(--p2-line); }
body.p4-support-active .application-card {
  grid-template-columns: minmax(0,1.05fr) minmax(0,1.15fr) minmax(0,.9fr) minmax(120px,.72fr);
  padding: 20px 0;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}
body.p4-support-active .application-card:last-child { border-bottom: 0; }
body.p4-support-active .application-card--pending { box-shadow: inset 3px 0 0 rgba(238,128,168,.52); padding-left: 16px; }
body.p4-support-active .application-card--approved { box-shadow: inset 3px 0 0 rgba(134,209,170,.38); padding-left: 16px; }
body.p4-support-active .application-card--rejected { box-shadow: inset 3px 0 0 rgba(239,120,128,.38); padding-left: 16px; }
body.p4-support-active .application-card-signature { border-color: var(--p2-line); }

/* Pending and blocked states use one clear status plane, not stacked tiles. */
body.p4-support-active :is(.application-status,.blocked-status) {
  padding: 22px;
  border-color: var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
}
body.p4-support-active .application-status-next {
  padding: 14px 2px;
  border: 0;
  border-block: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}
body.p4-support-active .pending-application-card {
  padding: 20px;
  border-color: var(--p2-line);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-soft);
}
body.p4-support-active .blocked-facts {
  gap: 0;
  padding: 0;
  border-block: 1px solid var(--p2-line);
}
body.p4-support-active .blocked-fact { padding: 18px; border-right: 1px solid var(--p2-line); }
body.p4-support-active .blocked-fact:last-child { border-right: 0; }

/* Rules, settings and ordinary profile each get one main glass plane. */
body.p4-support-active .account-profile-shell {
  padding: 18px;
  border-color: var(--p2-line-lit);
  border-radius: var(--p2-panel-radius);
  background: var(--p2-surface-main);
  box-shadow: var(--p2-shadow-main);
  -webkit-backdrop-filter: blur(18px) saturate(106%);
  backdrop-filter: blur(18px) saturate(106%);
}
body.p4-support-active .account-profile-shell > .section-head { padding-bottom: 18px; border-bottom: 1px solid var(--p2-line); }
body.p4-support-active .members-readonly-page .table-wrap { margin-top: 18px; border-color: var(--p2-line); }
body.p4-support-active .members-readonly-page table thead th { background: rgba(238,128,168,.035); }
body.p4-support-active .members-readonly-page table tbody tr:nth-child(even) { background: rgba(255,255,255,.018); }
body.p4-support-active .members-readonly-page > .empty {
  padding: 16px 2px !important;
  border: 0 !important;
  border-top: 1px solid var(--p2-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.p4-support-active .settings-form { gap: 22px 18px; margin-top: 20px; }
body.p4-support-active .settings-rate-field {
  padding: 0 0 18px;
  border-bottom: 1px solid var(--p2-line);
}
body.p4-support-active .settings-form :is(input,textarea) { border-color: var(--p2-line); background: rgba(255,255,255,.025); }
body.p4-support-active .settings-form .field.full:last-child { padding-top: 4px; }
body.p4-support-active .settings-form .field.full:last-child button { width: min(320px,100%); }
body.p4-support-active .profile-card {
  margin-top: 18px;
  padding: 18px;
  border: 0;
  border-radius: 15px;
  background: var(--p2-surface-soft);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
body.p4-support-active .profile-boundary-note { margin-top: 18px; border-color: var(--p2-line); background: transparent; }

@media (max-width: 760px) {
  /* Keep sealed mobile contracts visible to the existing static regressions. */
  .dispatch-page-actions button { min-height: 44px; }
  .dispatch-card-actions button, .dispatch-card-actions .tag { min-height: 44px; }
  .public-actions button { min-height: 44px; }
  body.p4-support-active :is(.application-page,.application-status-page,.blocked-page) { gap: 26px; }
  body.p4-support-active :is(.application-page-head,.application-status-head,.blocked-page-head) {
    min-height: 0;
    padding: 0 0 22px;
    gap: 16px;
  }
  body.p4-support-active :is(.application-page-heading,.application-status-heading,.blocked-page-heading) h3 { font-size: 22px; }
  body.p4-support-active :is(.application-page-heading,.application-status-heading,.blocked-page-heading) p { margin-top: 8px; font-size: 11px; line-height: 1.65; }
  body.p4-support-active .application-kpi-strip { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body.p4-support-active .application-kpi { min-height: 86px; padding: 15px 10px; }
  body.p4-support-active .application-kpi strong { font-size: 20px; }
  body.p4-support-active .application-queue {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  body.p4-support-active .application-card,
  body.p4-support-active .application-card--pending,
  body.p4-support-active .application-card--approved,
  body.p4-support-active .application-card--rejected {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 22px 0 26px;
    box-shadow: none;
  }
  body.p4-support-active .application-card-primary { padding-left: 12px; border-left: 3px solid rgba(238,128,168,.5); }
  body.p4-support-active :is(.application-status,.blocked-status) { padding: 20px 18px; }
  body.p4-support-active .pending-application-card { padding: 18px 16px; }
  body.p4-support-active .blocked-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.p4-support-active .blocked-fact { padding: 16px 10px; border-bottom: 1px solid var(--p2-line); }
  body.p4-support-active .account-profile-shell {
    padding: 18px 16px;
    border-color: var(--p2-line);
    box-shadow: 0 20px 54px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.035);
  }
  body.p4-support-active .members-readonly-page .table-wrap { margin-top: 14px; border: 0; }
  body.p4-support-active .members-readonly-page table tbody { gap: 0; }
  body.p4-support-active .members-readonly-page table tbody tr {
    padding: 20px 0 24px;
    border: 0;
    border-bottom: 1px solid var(--p2-line);
    border-radius: 0;
    background: transparent;
  }
  body.p4-support-active .settings-form { gap: 20px; }
  body.p4-support-active .settings-rate-field { padding-bottom: 20px; }
  body.p4-support-active .profile-card { grid-template-columns: 72px minmax(0,1fr); padding: 18px 14px; }
  body.p4-support-active .profile-photo { width: 72px; height: 72px; }
}

@media (max-width: 390px) {
  body.p4-support-active .application-kpi small { display: none; }
}
body.p2-operate-active .recharge-drawer-form {
  grid-template-columns: minmax(0,1fr);
  gap: 0;
  width: 100%;
}
body.p2-operate-active .recharge-drawer-hint {
  margin-bottom: 8px;
  padding: 12px 14px;
  border-color: rgba(238,128,168,.2);
  background: rgba(238,128,168,.055);
  color: #ded7df;
}
body.p2-operate-active .recharge-drawer-section {
  gap: 15px;
  padding: 22px 0;
  border: 0;
  border-bottom: 1px solid var(--p2-line);
  border-radius: 0;
  background: transparent;
}
body.p2-operate-active .recharge-drawer-section:last-child { border-bottom: 0; padding-bottom: 4px; }
body.p2-operate-active .recharge-drawer-section-head { gap: 12px; }
body.p2-operate-active .recharge-drawer-section-head > span {
  width: 30px;
  min-width: 30px;
  height: 30px;
  border: 1px solid rgba(238,128,168,.2);
  border-radius: 9px;
  background: rgba(238,128,168,.1);
  color: #f2c6d5;
}
body.p2-operate-active .recharge-drawer-section-head h4 { font-size: 15px; }
body.p2-operate-active .recharge-drawer-section-head p { margin-top: 4px; font-size: 12px; }
body.p2-operate-active .recharge-drawer-fields { gap: 14px 16px; padding-left: 42px; }
body.p2-operate-active .recharge-drawer-section-primary .field > label { color: #d8d2da; }
body.p2-operate-active .recharge-drawer-form :is(input:not([type="hidden"]),select,textarea) {
  border-color: rgba(255,255,255,.11);
  background: rgba(8,10,15,.42);
}
body.p2-operate-active .recharge-drawer-form :is(input:not([type="hidden"]),select,textarea):focus {
  border-color: rgba(238,128,168,.58);
  box-shadow: 0 0 0 3px rgba(238,128,168,.1);
}

@media (max-width: 760px) {
  body.p1-dashboard-active .dashboard-report-table .report-main { gap: 7px; }
  body.p1-dashboard-active .dashboard-report-table .report-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; overflow: visible; white-space: normal; }
  body.p1-dashboard-active .dashboard-report-table .money-cell > :nth-child(n+3) { grid-column: 1 / -1; }
  body.p2-operate-active .recharge-drawer-section { padding-block: 20px; }
  body.p2-operate-active .recharge-drawer-fields { grid-template-columns: 1fr; padding-left: 0; }
}

body.p2-operate-active .recharge-record-list .recharge-record { background: rgba(255,255,255,.012); }
body.p2-operate-active .recharge-record-list .recharge-record:nth-child(even) { background: rgba(238,128,168,.032); }
body.p2-operate-active .recharge-record-list .recharge-record:not(:last-child) { border-bottom: 1px solid rgba(238,128,168,.2); }
body.p2-operate-active .recharge-record-list .recharge-record + .recharge-record { box-shadow: inset 0 1px 0 rgba(255,255,255,.035); }
body.p2-operate-active .recharge-record-list .recharge-record:hover { background: rgba(238,128,168,.065); }

/* Customer editor follows the same linear reading order as the recharge drawer. */
body.p2-operate-active .drawer:has(#customerCode) { width: min(720px, calc(100vw - 24px)); }
body.p2-operate-active .drawer:has(#customerCode) .drawer-body { padding: 18px 26px 28px; }
body.p2-operate-active .customer-drawer-form { gap: 0; width: 100%; }
body.p2-operate-active .customer-drawer-hint { margin-bottom: 8px; }
body.p2-operate-active .customer-drawer-section { gap: 15px; padding: 22px 0; border: 0; border-bottom: 1px solid var(--p2-line); border-radius: 0; background: transparent; }
body.p2-operate-active .customer-drawer-section:last-child { border-bottom: 0; padding-bottom: 4px; }
body.p2-operate-active .customer-drawer-section-head { gap: 12px; }
body.p2-operate-active .customer-drawer-section-head > span { width: 30px; min-width: 30px; height: 30px; background: rgba(238,128,168,.1); color: #f2c6d5; }
body.p2-operate-active .customer-drawer-section-head h4 { font-size: 15px; }
body.p2-operate-active .customer-drawer-section-head p { margin-top: 4px; font-size: 12px; }
body.p2-operate-active .customer-drawer-fields { gap: 14px 16px; padding-left: 42px; }
body.p2-operate-active .customer-drawer-form :is(input:not([type="hidden"]),select,textarea) { border-color: rgba(255,255,255,.11); background: rgba(8,10,15,.42); }
body.p2-operate-active .customer-drawer-form :is(input:not([type="hidden"]),select,textarea):focus { border-color: rgba(238,128,168,.58); box-shadow: 0 0 0 3px rgba(238,128,168,.1); }
body.p2-operate-active .customer-drawer-form #customerBalance,
body.p2-operate-active .customer-drawer-form #customerTotalSpend { background: rgba(34,38,52,.85); color: #d9d3ff; }

@media (max-width: 760px) {
  body.p1-dashboard-active .dashboard-page > .role-context > div { min-height: 58px; padding: 8px 10px; border: 0; border-radius: 0; background: transparent; }
  body.p1-dashboard-active .dashboard-page > .role-context > div + div { border-left: 1px solid var(--p2-line) !important; }
  body.p2-operate-active .drawer:has(#customerCode) { width: 100%; }
  body.p2-operate-active .drawer:has(#customerCode) .drawer-body { padding: 14px 16px 20px; }
  body.p2-operate-active .customer-drawer-section { padding-block: 20px; }
  body.p2-operate-active .customer-drawer-fields { grid-template-columns: 1fr; padding-left: 0; }
}

/* Stage 6E: wallet, payroll, and identity payout extension. Keep facts readable at every width. */
.payroll-owner-page,.wallet-page { display:grid; gap:16px; min-width:0; }
.payroll-page-intro,.wallet-page-intro,.payroll-panel-head,.wallet-approval-head,.wallet-detail-head,.wallet-grant-head,.wallet-review-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; min-width:0; }
.payroll-page-intro > div,.wallet-page-intro > div,.payroll-panel-head > div,.wallet-approval-head > div,.wallet-detail-head > div,.wallet-grant-head > div,.wallet-review-head > div { min-width:0; }
.payroll-page-intro h3,.wallet-page-intro h3 { margin:0 0 5px; color:var(--s6-text); font-size:22px; letter-spacing:-.02em; }
.payroll-page-intro p,.wallet-page-intro p,.payroll-panel-head p,.wallet-approval-head p,.wallet-detail-head p,.wallet-grant-head p,.wallet-review-head p { margin:0; color:var(--s6-muted); font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.payroll-page-actions,.wallet-person-actions,.wallet-grant-actions,.wallet-review-actions { display:flex; flex-wrap:wrap; gap:8px; }
.payroll-page-actions button,.wallet-person-actions button,.wallet-grant-actions button,.wallet-review-actions button { min-height:44px; }
.payroll-summary-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; min-width:0; border-block:1px solid rgba(255,255,255,.1); }
.payroll-summary-strip > div { display:grid; gap:4px; min-width:0; padding:14px 16px; border-left:1px solid rgba(255,255,255,.1); }
.payroll-summary-strip > div:first-child { border-left:0; }
.payroll-summary-strip span,.payroll-summary-strip small,.payroll-count,.wallet-list-head span,.wallet-person-card small,.wallet-facts span,.wallet-withdraw-state { color:var(--s6-muted); font-size:11px; }
.payroll-summary-strip strong { color:var(--s6-text); font-size:18px; overflow-wrap:anywhere; }
.payroll-summary-strip small { line-height:1.45; overflow-wrap:anywhere; }
.payroll-report-panel,.wallet-people-list,.wallet-detail-panel,.wallet-approval-panel { display:grid; gap:12px; min-width:0; padding:16px; border:1px solid rgba(255,255,255,.13); border-radius:16px; background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(21,24,32,.92)); }
.payroll-panel-head h4,.wallet-approval-head h4,.wallet-detail-head h4,.wallet-grant-head h4,.wallet-review-head h4 { margin:0; color:var(--s6-text); font-size:16px; }
.payroll-owner-page .table-wrap { min-width:0; overflow-x:auto; border:1px solid rgba(255,255,255,.08); border-radius:10px; }
.payroll-owner-page table { width:100%; min-width:800px; border-collapse:collapse; }
.payroll-owner-page th,.payroll-owner-page td { min-width:0; padding:12px 10px; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
.payroll-owner-page th { color:#d9d4e2; background:rgba(139,124,246,.08); font-size:11px; }
.payroll-owner-page td { color:var(--s6-text); border-top:1px solid rgba(255,255,255,.08); font-size:12px; line-height:1.45; }
.payroll-owner-page tbody tr:hover { background:rgba(239,121,157,.045); }
.payroll-data-state,.wallet-data-state,.wallet-detail-empty,.wallet-empty { display:flex; align-items:flex-start; flex-wrap:wrap; gap:9px; min-width:0; padding:12px; border:1px solid var(--s6-line); border-radius:10px; background:#151820; color:var(--s6-muted); font-size:12px; line-height:1.5; }
.payroll-data-state > i,.wallet-data-state > i,.wallet-detail-empty > i,.wallet-empty > i { flex:0 0 auto; width:17px; height:17px; color:#cfc7ff; }
.payroll-data-state span,.wallet-data-state span,.wallet-detail-empty span,.wallet-empty span { min-width:0; overflow-wrap:anywhere; }
.payroll-data-state[data-tone="error"],.wallet-data-state[data-tone="error"],.wallet-detail-empty[data-tone="error"] { border-color:rgba(239,126,134,.42); background:rgba(239,126,134,.08); color:#ffc8cc; }
.payroll-data-state[data-tone="success"],.wallet-data-state[data-tone="success"] { border-color:rgba(134,209,170,.32); background:rgba(134,209,170,.07); color:#b7f3cf; }
.payroll-data-state button,.wallet-data-state button,.wallet-detail-empty button { min-height:44px; margin-left:auto; }
.payroll-muted,.payroll-readonly { color:var(--s6-muted); font-size:11px; }
.wallet-toolbar { display:grid; grid-template-columns:minmax(0,1fr); align-items:stretch; gap:10px; min-width:0; }
.wallet-approval-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; }
.wallet-searchbar { min-width:0; width:100%; margin:0; }
.wallet-searchbar .searchbox { min-width:0; width:100%; }
.wallet-searchbar .searchbox input { width:100%; min-height:46px; }
.wallet-filters { display:flex; flex-wrap:wrap; gap:7px; }
.wallet-filter { display:inline-flex; align-items:center; gap:5px; min-height:44px; padding:0 12px; border:1px solid var(--s6-line); border-radius:999px; background:#151820; color:var(--s6-muted); cursor:pointer; }
.wallet-filter.is-active { border-color:rgba(239,121,157,.5); background:rgba(239,121,157,.12); color:#ffd4e2; }
.wallet-workspace-grid { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr); gap:14px; min-width:0; }
.wallet-list-head { display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
.wallet-list-head strong { color:var(--s6-text); font-size:14px; }
.wallet-people-list { align-content:start; }
.wallet-person-card { display:grid; gap:12px; min-width:0; padding:14px; border:1px solid var(--s6-line); border-radius:12px; background:#151820; }
.wallet-person-card.is-selected { border-color:rgba(239,121,157,.55); background:rgba(239,121,157,.08); }
.wallet-person-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; min-width:0; }
.wallet-person-head > div { display:grid; gap:4px; min-width:0; }
.wallet-person-head strong { color:var(--s6-text); overflow-wrap:anywhere; }
.wallet-person-head small { overflow-wrap:anywhere; }
.wallet-withdraw-state { flex:0 0 auto; padding:5px 8px; border-radius:999px; background:rgba(134,209,170,.1); color:#b7f3cf; }
.wallet-withdraw-state.is-consume-only { background:rgba(139,124,246,.12); color:#d8d0ff; }
.wallet-facts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; min-width:0; }
.wallet-facts > div { display:grid; gap:3px; min-width:0; padding:9px; border:1px solid rgba(255,255,255,.08); border-radius:9px; background:rgba(0,0,0,.12); }
.wallet-facts strong { color:var(--s6-text); font-size:14px; overflow-wrap:anywhere; }
.wallet-person-actions button { flex:1 1 150px; }
.wallet-detail-panel { align-content:start; }
.wallet-detail-head .icon-btn { flex:0 0 auto; min-width:44px; min-height:44px; }
.wallet-ledger-list,.wallet-withdrawal-list { display:grid; gap:8px; min-width:0; }
.wallet-ledger-row,.wallet-withdrawal-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(120px,.7fr) minmax(0,1.2fr); gap:12px; min-width:0; padding:13px; border:1px solid rgba(255,255,255,.1); border-radius:11px; background:#151820; }
.wallet-ledger-row > div,.wallet-withdrawal-row > div { display:grid; gap:4px; min-width:0; align-content:start; }
.wallet-ledger-row strong,.wallet-withdrawal-row strong { color:var(--s6-text); overflow-wrap:anywhere; }
.wallet-ledger-row small,.wallet-withdrawal-row small,.wallet-withdrawal-row span,.wallet-withdrawal-row p { margin:0; color:var(--s6-muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.wallet-approval-panel { gap:14px; }
.wallet-approval-head > .wallet-count { flex:0 0 auto; color:#ffd4e2; font-size:12px; }
.wallet-withdrawal-row { grid-template-columns:minmax(130px,.8fr) minmax(110px,.55fr) minmax(160px,1fr) auto; align-items:start; }
.wallet-review-actions { align-self:start; }
.wallet-grant-backdrop,.wallet-review-backdrop { position:fixed; z-index:130; inset:0; display:grid; place-items:center; padding:18px; background:rgba(5,7,11,.78); }
.wallet-grant-dialog,.wallet-review-dialog { display:grid; gap:15px; width:min(100%,640px); max-height:min(92dvh,780px); overflow:auto; padding:20px; border:1px solid rgba(239,121,157,.35); border-radius:16px; background:#11141b; box-shadow:0 24px 70px rgba(0,0,0,.5); }
.wallet-grant-head .icon-btn,.wallet-review-head .icon-btn { flex:0 0 auto; min-width:44px; min-height:44px; }
.wallet-grant-dialog form,.wallet-review-dialog form { display:grid; gap:13px; min-width:0; }
.wallet-grant-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; min-width:0; }
.wallet-grant-grid .field.full { grid-column:1 / -1; }
.wallet-grant-dialog input,.wallet-grant-dialog select,.wallet-grant-dialog textarea,.wallet-review-dialog input,.wallet-review-dialog select,.wallet-review-dialog textarea { width:100%; min-width:0; min-height:46px; }
.wallet-grant-dialog textarea,.wallet-review-dialog textarea { min-height:100px; resize:vertical; }
.wallet-grant-actions,.wallet-review-actions { justify-content:flex-end; }
.wallet-grant-error,.wallet-review-error { padding:11px 12px; border:1px solid rgba(239,126,134,.42); border-radius:10px; background:rgba(239,126,134,.08); color:#ffc8cc; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.wallet-review-tabs,.identity-withdrawal-review-tabs { display:flex; flex-wrap:wrap; gap:7px; padding:4px; border:1px solid rgba(255,255,255,.1); border-radius:10px; background:rgba(0,0,0,.15); }
.wallet-review-tabs button,.identity-withdrawal-review-tabs button { flex:1 1 140px; min-height:44px; border:0; border-radius:8px; color:var(--s6-muted); background:transparent; cursor:pointer; font:inherit; font-weight:700; }
.wallet-review-tabs button.is-active,.identity-withdrawal-review-tabs button.is-active { color:#fff; background:rgba(239,121,157,.18); }
.wallet-review-tabs button.is-active.is-danger,.identity-withdrawal-review-tabs button.is-active.is-danger { color:#ffd2d7; background:rgba(239,126,134,.16); }
.wallet-review-section,.identity-withdrawal-review-section { display:grid; gap:10px; min-width:0; padding:13px; border:1px solid var(--s6-line); border-radius:11px; background:#151820; }
.wallet-review-section h5,.identity-withdrawal-review-section h4 { margin:0; color:var(--s6-text); font-size:14px; }
.wallet-review-section p,.wallet-review-hint { margin:0; color:var(--s6-muted); font-size:11px; line-height:1.5; }
.identity-payout-method-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
.identity-payout-method-block,.identity-payout-form-note,.identity-payout-legacy-fields { min-width:0; }
.identity-payout-method-block { display:grid; gap:10px; padding:13px; border:1px solid rgba(255,255,255,.1); border-radius:11px; background:#151820; }
.identity-payout-block-head,.identity-earnings-section-head { display:flex; align-items:baseline; justify-content:space-between; gap:10px; }
.identity-payout-block-head h3,.identity-earnings-section-head h4 { margin:0; color:var(--s6-text); font-size:14px; }
.identity-payout-block-head span,.identity-earnings-section-head span { color:var(--s6-muted); font-size:11px; }
.identity-payout-form-note { display:flex; align-items:flex-start; gap:8px; padding:11px 12px; border:1px solid rgba(139,124,246,.35); border-radius:10px; background:rgba(139,124,246,.08); color:#d8d0ff; font-size:12px; line-height:1.5; }
.identity-payout-form-note i { flex:0 0 auto; width:17px; height:17px; }
.identity-payout-upload-row { display:flex; align-items:center; flex-wrap:wrap; gap:9px; min-width:0; }
.identity-payout-upload-status { color:var(--s6-muted); font-size:11px; overflow-wrap:anywhere; }
.identity-payout-legacy-fields details { border:1px dashed var(--s6-line); border-radius:10px; padding:10px; }
.identity-payout-legacy-fields summary { cursor:pointer; color:var(--s6-muted); font-size:11px; }
.identity-payout-legacy-fields details[open] { display:grid; gap:10px; }
.identity-earnings-payout-snapshot { display:grid; gap:10px; min-width:0; padding:13px; border:1px solid rgba(239,121,157,.24); border-radius:11px; background:rgba(239,121,157,.045); }
.identity-earnings-method-card { display:grid; gap:9px; min-width:0; padding:11px; border:1px solid rgba(255,255,255,.1); border-radius:10px; background:#151820; }
.identity-earnings-method-card > div:first-child { display:flex; align-items:baseline; justify-content:space-between; gap:8px; min-width:0; }
.identity-earnings-method-card strong { color:var(--s6-text); }
.identity-earnings-method-card small { color:var(--s6-muted); font-size:11px; overflow-wrap:anywhere; }
.identity-earnings-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.identity-earnings-upload { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-width:0; color:var(--s6-muted); font-size:11px; }
.identity-earnings-sync-choice { display:grid; gap:8px; min-width:0; margin:0; padding:12px; border:1px solid var(--s6-line); border-radius:10px; color:var(--s6-text); }
.identity-earnings-sync-choice legend { padding:0 5px; color:var(--s6-muted); font-size:11px; }
.identity-earnings-sync-choice label { display:flex; align-items:center; gap:8px; min-height:30px; font-size:12px; }
.identity-earnings-sync-choice small,.identity-earnings-balance-note { color:var(--s6-muted); font-size:11px; line-height:1.5; }
.identity-earnings-balance-note { display:flex; align-items:flex-start; gap:8px; padding:11px 12px; border:1px solid rgba(134,209,170,.28); border-radius:10px; background:rgba(134,209,170,.07); }
.identity-earnings-balance-note i { flex:0 0 auto; width:17px; height:17px; color:#b7f3cf; }
.payroll-owner-page button:focus-visible,.wallet-page button:focus-visible,.wallet-page input:focus-visible,.wallet-page select:focus-visible,.wallet-page textarea:focus-visible,.identity-payout-dialog button:focus-visible,.identity-payout-dialog input:focus-visible,.identity-payout-dialog select:focus-visible,.identity-payout-dialog textarea:focus-visible,.identity-earnings-drawer button:focus-visible,.identity-earnings-drawer input:focus-visible,.identity-earnings-drawer select:focus-visible,.identity-earnings-drawer textarea:focus-visible { outline:2px solid #ffd4e2; outline-offset:2px; }
@media (max-width:900px) {
  .wallet-workspace-grid { grid-template-columns:1fr; }
  .wallet-detail-panel { order:2; }
  .wallet-facts { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .wallet-withdrawal-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .payroll-page-intro,.wallet-page-intro,.payroll-panel-head,.wallet-approval-head,.wallet-detail-head,.wallet-grant-head,.wallet-review-head { display:grid; grid-template-columns:minmax(0,1fr) auto; }
  .payroll-page-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .payroll-page-actions button { width:100%; }
  .payroll-summary-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .payroll-summary-strip > div:nth-child(odd) { border-left:0; }
  .payroll-summary-strip > div:nth-child(n+3) { border-top:1px solid rgba(255,255,255,.1); }
  .wallet-toolbar,.wallet-approval-toolbar { grid-template-columns:1fr; }
  .wallet-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wallet-filter { justify-content:center; width:100%; }
  .identity-payout-method-summary { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .payroll-page-intro,.wallet-page-intro,.payroll-panel-head,.wallet-approval-head,.wallet-detail-head,.wallet-grant-head,.wallet-review-head { display:flex; flex-direction:column; align-items:stretch; }
  .payroll-page-actions,.wallet-person-actions,.wallet-grant-actions,.wallet-review-actions { display:grid; grid-template-columns:1fr; }
  .payroll-page-actions button,.wallet-person-actions button,.wallet-grant-actions button,.wallet-review-actions button { width:100%; }
  .payroll-summary-strip { grid-template-columns:1fr; }
  .payroll-summary-strip > div,.payroll-summary-strip > div:nth-child(n+3) { border-left:0; border-top:1px solid rgba(255,255,255,.1); }
  .payroll-summary-strip > div:first-child { border-top:0; }
  .payroll-report-panel,.wallet-people-list,.wallet-detail-panel,.wallet-approval-panel { padding:12px; border-radius:13px; }
  .wallet-facts,.wallet-withdrawal-row,.wallet-grant-grid,.identity-earnings-fields { grid-template-columns:1fr; }
  .wallet-grant-grid .field.full { grid-column:auto; }
  .wallet-grant-backdrop,.wallet-review-backdrop { align-items:start; padding:10px; }
  .wallet-grant-dialog,.wallet-review-dialog { width:100%; max-height:calc(100dvh - 20px); padding:14px; }
  .identity-payout-code-row { grid-template-columns:1fr; }
  .identity-payout-code-row > button { width:100%; }
  .identity-payout-dialog,.identity-earnings-drawer,.identity-earnings-detail { width:100%; max-height:calc(100dvh - 20px); }
}
@media (max-width:390px) {
  .payroll-page-intro h3,.wallet-page-intro h3 { font-size:20px; }
  .wallet-filters { grid-template-columns:1fr; }
  .wallet-person-card { padding:12px; }
}

body.p3-operate-active .wallet-approval-head p,
body.p3-operate-active .commissions-page .section-head div > span,
body.p4-support-active .application-page-heading p,
body.p4-support-active .account-profile-shell > .section-head > div > span,
body.p4-support-active .account-profile-shell .profile-boundary-note,
body.p4-support-active .player-workspace-card .profile-boundary-note,
body.p4-support-active .members-readonly-page .section-head div > span,
body.p4-support-active .settings-page .section-head div > span { display:none !important; }

body.p2-operate-active .drawer:has(#customerCode) .customer-drawer-form { grid-template-columns: minmax(0,1fr) !important; }
body.p2-operate-active .drawer:has(#customerCode) .customer-drawer-hint,
body.p2-operate-active .drawer:has(#customerCode) .customer-drawer-section { grid-column: 1 / -1; }

/* ── 老板端（客户身份）外壳页面 ──────────────────────────────────────────────
   业主 2026-09-20：老板端改用与员工后台相同的外壳与排版。
   这里只补一个外层容器：卡片本身复用现成的 .card.section / .grid.metrics /
   .report-table，所以不需要重新构建样式产物（也不引入任何前端框架）。 */
.boss-page { display: grid; gap: 14px; min-width: 0; }
.boss-page > .card.section { min-width: 0; }
.boss-page .identity-customer-section { border: 0; background: transparent; padding: 0; }
@media (max-width: 760px) {
  .boss-page { gap: 12px; }
}

/* 首页看板（业主 2026-09-20）：去掉「我的工作」之后——
   ① 今日概览独占整行；
   ② 底部两列卡片统一等高对齐（原来 .content-grid 是 align-items:start，两列高度不一，看着歪）；
   ③ 「客服班次贡献」独占整行，班次卡片铺开，不再挤在一根窄柱里。 */
body.p1-dashboard-active .dashboard-page > .dashboard-overview {
  width: 100%;
  margin: 0;
}
body.p1-dashboard-active .dashboard-page > .grid.content-grid.dashboard-owner-insights {
  align-items: stretch;
  grid-auto-rows: minmax(220px, 1fr);
}
@media (min-width: 1081px) {
  body.p1-dashboard-active .dashboard-page > .grid.content-grid.dashboard-owner-insights {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}

/* ── 个人中心（普通后台账号）字段：绑定手机号 + 头像 ──────────────────────────
   业主 2026-09-20：
   ① 绑定手机号只做脱敏展示（136******98），旁边并排一个「更改绑定手机号」按钮；
      输入框**按号码长度收窄**（业主反馈：号码就 11 位，框拉满整行太丑）；
   ② 编辑资料里加头像上传（预览 + 换图）。卡片本身复用现成的 .card.section。 */
.profile-phone-binding {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
/* 提高一级特异性压过编译产物里的 .field input{width:100%}（属性选择器算一个类）。
   宽度按「136******98」11 个字符的实际占位收窄，不留一大截空白。 */
.profile-phone-binding input[readonly] {
  flex: 0 0 auto;
  width: 168px;
  max-width: 100%;
  color: var(--s6-muted, #9aa3b2);
  letter-spacing: 1px;
}
.profile-avatar-edit { display: flex; align-items: center; gap: 14px; }
.profile-avatar-edit .profile-photo { width: 64px; height: 64px; font-size: 22px; }
.profile-avatar-upload { position: relative; overflow: hidden; cursor: pointer; }
.profile-avatar-input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
/* 陪玩自己抽屉里的「选完即见」预览框：平时隐藏，选了图才出现。 */
.inline-avatar-preview { width: 64px; height: 64px; font-size: 22px; margin-top: 8px; }
.profile-photo[hidden] { display: none !important; }
.profile-uid-line { margin-top: 6px; color: var(--s6-muted, #9aa3b2); font-size: 13px; letter-spacing: .5px; }
/* 换号第一步：当前绑定手机号的脱敏展示（136******98），业主 2026-09-20 要求先亮号码再发码。 */
.identity-phone-current-number {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 10px;
  background: rgba(9,10,13,.7);
  color: var(--s6-text, #e8e6ec);
  font-size: 18px;
  letter-spacing: 2px;
}
/* 恢复 / 申诉页（业主 2026-09-20）：副标题小字整批去掉，intro 为空时不再占位。 */
.phone-recovery-heading p:empty { display: none; }
/* 申诉图片凭证：表单里可预览/移除；店长审核队列里直接出缩略图。 */
.phone-recovery-attachments { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.phone-recovery-attachments .phone-recovery-attachment { position: relative; }
.phone-recovery-attachments img { width: 72px; height: 72px; object-fit: cover; border-radius: 8px; border: 1px solid rgba(255,255,255,.14); }
.phone-recovery-attachments .phone-recovery-attachment button {
  position: absolute; top: -6px; right: -6px; width: 20px; height: 20px;
  border-radius: 50%; border: 0; cursor: pointer; display: grid; place-items: center;
  background: rgba(239,121,157,.9); color: #fff;
}
.phone-recovery-attachments .phone-recovery-attachment button i { width: 12px; height: 12px; }
.phone-recovery-manager-facts .phone-recovery-attachments img { width: 64px; height: 64px; }
.phone-recovery-form input, .phone-recovery-form textarea { min-height: 46px; }
.phone-recovery-actions button, .phone-recovery-manager-actions button { min-height: 44px; }
.phone-recovery-manager-detail-head > .icon-btn { min-width: 44px; min-height: 44px; }
/* 恢复/申诉表单的触达面积（≥44px）：手写层显式声明，与编译产物保持一致；
   详情关闭按钮原来没有任何高度规则，点起来太小。
   （注释放在规则后面：回归脚本按"精确选择器"扫规则，规则前挂注释会连在一起扫不到。） */
.account-safety-page { display: grid; gap: 16px; min-width: 0; }
@media (max-width: 760px) {
  .profile-phone-binding { display: grid; grid-template-columns: minmax(0, 1fr); }
  .profile-phone-binding input[readonly] { width: 100%; }
  .profile-phone-binding .secondary { width: 100%; }
}
