.asb-admin { max-width: 1500px; }
.asb-heading, .asb-buttons, .asb-pagination { display: flex; align-items: center; gap: 12px; }
.asb-heading { margin-bottom: 20px; }
.asb-heading h1 { padding: 0; }
.asb-editor { padding: 20px; margin: 20px 0; border: 1px solid #c3c4c7; background: #fff; }
.asb-editor h2 { margin-top: 0; }
.asb-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 24px; margin-bottom: 24px; }
.asb-field { display: flex; flex-direction: column; gap: 6px; }
.asb-field label { font-weight: 600; }
.asb-field input:not([type=checkbox]), .asb-field select, .asb-field textarea { width: 100%; max-width: none; }
.asb-field input[type=checkbox] { margin: 5px 0; }
.asb-wide { grid-column: span 2; }
.asb-table-scroll { overflow-x: auto; }
.asb-actions { display: flex; flex-wrap: wrap; gap: 6px; min-width: 180px; }
.asb-pagination { justify-content: flex-end; margin-top: 16px; }
.asb-admin .notice { margin: 12px 0; }
@media (max-width: 900px) { .asb-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .asb-fields { grid-template-columns: 1fr; } .asb-wide { grid-column: auto; } .asb-editor { padding: 14px; } }
.asb-search { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 18px 0; }
.asb-search label { font-weight: 600; }
.asb-search input { min-width: 250px; }
.asb-account-search { display: flex; flex-direction: column; gap: 6px; margin-top: 10px; }
.asb-account-search .button { align-self: flex-start; }
.asb-member-summary { display: grid; grid-template-columns: minmax(140px, 220px) 1fr; gap: 8px 16px; }
.asb-member-summary dt { font-weight: 600; }
.asb-member-summary dd { margin: 0; overflow-wrap: anywhere; }
.asb-member-details > .asb-heading h2, .asb-member-details > .asb-heading h3 { margin: 0; }

.asb-booking-detail { border: 1px solid #ccd0d4; background: white; padding: 1rem; margin-top: 1rem; }
.asb-booking-detail dl { display: grid; grid-template-columns: 160px 1fr; gap: .5rem; }
.asb-booking-detail dd { margin: 0; }
.asb-table-scroll { overflow-x: auto; margin: 1rem 0; }
.asb-booking-detail textarea { display: block; width: min(100%, 500px); }

.asb-form-section { border: 1px solid #dcdcde; padding: 18px; margin: 0 0 20px; min-width: 0; }
.asb-form-section legend { font-size: 15px; font-weight: 600; padding: 0 6px; }
.asb-form-section .asb-fields { margin-bottom: 0; }
.asb-price-section { background: #fff; border: 1px solid #c3c4c7; padding: 20px; margin: 20px 0; min-width: 0; }
.asb-price-section .asb-heading { justify-content: space-between; }
.asb-price-section h2, .asb-price-section h3 { margin: 0; }
.asb-price-meta { display: block; color: #50575e; margin-top: 6px; }
.asb-pricing .asb-form { background: #fff; border: 1px solid #c3c4c7; padding: 20px; margin: 20px 0; }
.asb-pricing .asb-form fieldset { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 24px; min-width: 0; }
.asb-pricing .asb-form legend { font-size: 16px; font-weight: 600; margin-bottom: 16px; }
.asb-pricing .asb-form label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; min-width: 0; }
.asb-pricing .asb-form input:not([type=checkbox]), .asb-pricing .asb-form select { width: 100%; max-width: none; }
.asb-pricing .asb-form button { padding: 6px 12px; cursor: pointer; }
.asb-pricing .asb-form p { grid-column: 1 / -1; margin: 0; }
.asb-operations-tabs { display: flex; flex-wrap: wrap; margin-bottom: 20px; }
.asb-operations-tabs .nav-tab { float: none; }
.asb-settings-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.asb-heading, .asb-buttons { flex-wrap: wrap; }
@media (max-width: 900px) { .asb-pricing .asb-form fieldset { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
  .asb-pricing .asb-form fieldset { grid-template-columns: 1fr; }
  .asb-pricing .asb-form, .asb-price-section, .asb-form-section { padding: 14px; }
  .asb-pricing .asb-form p { grid-column: auto; }
}
.asb-settings-tabs { display:flex; flex-wrap:wrap; gap:6px; margin:20px 0 0; border-bottom:1px solid #c3c4c7; padding-bottom:8px; }
.asb-settings-tabs button { min-height:44px; }
.asb-settings-tabs .is-active { background:#2271b1; border-color:#2271b1; color:#fff; }
.asb-settings-panel { background:#fff; border:1px solid #c3c4c7; padding:20px; margin-top:12px; min-width:0; }
.asb-settings-panel label { display:block; margin:12px 0; }
.asb-settings-panel input:not([type=checkbox]), .asb-settings-panel select { min-height:44px; width:100%; max-width:440px; box-sizing:border-box; }
.asb-settings-panel button, .asb-settings-panel .button { min-height:44px; }
.asb-settings-panel dd { margin:0 0 12px; overflow-wrap:anywhere; }
.asb-payment-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px; }
.asb-payment-card { padding:16px; border:1px solid #c3c4c7; border-radius:4px; min-width:0; }
.asb-payment-card.is-unavailable { background:#f0f0f1; color:#50575e; }
.asb-checkbox { display:flex!important; align-items:center; gap:8px; min-height:44px; }
.asb-settings fieldset { border:0; padding:0; min-width:0; }
.asb-settings-panel .asb-editor { border:0; padding:0; margin:0; }
.asb-credit input:not([type=checkbox]), .asb-credit button { min-height:44px; }
@media(max-width:480px) { .asb-settings-panel { padding:12px; } .asb-payment-cards { grid-template-columns:minmax(0,1fr); } .asb-settings-panel input, .asb-settings-panel select { font-size:16px; } }

/* Confirmation text editing: one locale panel, stacked labels and full width textareas. */
.asb-email-tabs { display:flex; flex-wrap:wrap; gap:6px; margin:20px 0 0; }
.asb-email-tabs [role="tab"] { min-height:44px; padding:8px 14px; border:1px solid #8c8f94; background:#f6f7f7; color:#1d2327; cursor:pointer; }
.asb-email-tabs [aria-selected="true"] { background:#2271b1; color:#fff; border-color:#2271b1; }
.asb-email-tabs [role="tab"]:focus-visible { outline:2px solid #2271b1; outline-offset:2px; }
.asb-email-panel { padding-top:16px; min-width:0; }
.asb-email-field { display:flex; flex-direction:column; gap:6px; margin-bottom:20px; min-width:0; }
.asb-email-settings .asb-email-field label { display:block; margin:0; font-weight:600; }
.asb-email-field .description { margin:0; }
.asb-email-field textarea { display:block; width:100%; max-width:100%; min-height:110px; box-sizing:border-box; resize:vertical; }

.asb-payment-toggle { display:flex!important; align-items:center; gap:10px; min-height:44px; cursor:pointer; margin:0; }
.asb-payment-toggle input { flex:0 0 auto; margin:0!important; }
.asb-payment-card { min-width:0; overflow-wrap:anywhere; }
.asb-payment-card.is-unavailable { background:#f6f7f7; }
.asb-payment-card .asb-payment-card { padding:10px; }
.asb-stacked { display:flex; flex-direction:column; gap:6px; min-width:0; }
.asb-stacked input,.asb-stacked select { width:100%; max-width:100%; box-sizing:border-box; }
.asb-editor .asb-autocomplete label { display:block; }
.asb-editor .asb-autocomplete input { width:100%; min-height:44px; box-sizing:border-box; }
.asb-editor .asb-autocomplete button { min-height:44px; }
.asb-editor .asb-checkbox { display:flex; align-items:center; gap:8px; min-height:44px; }

/* Season management and import workflows stay usable within WordPress admin widths. */
.asb-members,.asb-member-workflow { min-width:0; }
.asb-form-section summary { font-weight:600; cursor:pointer; min-height:32px; }
.asb-form-section[open] summary { margin-bottom:16px; }
.asb-member-filters { margin:16px 0; }
.asb-member-filters .asb-field,.asb-member-workflow .asb-field { min-width:0; }
.asb-member-workflow .asb-stacked { max-width:480px; margin:16px 0; }
.asb-member-workflow select { max-width:100%; }
.asb-member-workflow input[type=file] { width:100%; }
.asb-member-workflow .widefat { min-width:780px; }
.asb-member-workflow fieldset { min-width:0; }
.asb-members .asb-search select { max-width:100%; }
@media(max-width:600px) {
 .asb-member-summary { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .asb-pagination { flex-wrap:wrap; }
 .asb-member-workflow .asb-fields input,.asb-member-workflow .asb-fields select { min-height:40px; }
}
.asb-member-workflow .asb-table-scroll { max-height:560px; overflow:auto; }
.asb-member-workflow thead th { position:sticky; top:0; z-index:1; background:#fff; }

.asb-import-guidance { margin:16px 0 24px; }
.asb-import-templates { border:1px solid #c3c4c7; background:#f6f7f7; padding:16px; margin:20px 0; }
.asb-import-templates h2 { margin:0 0 14px; }
.asb-import-templates .button { white-space:normal; text-align:left; min-height:40px; }
.asb-import-csv { margin-top:14px; }
.asb-import-csv summary { cursor:pointer; font-weight:600; padding:8px 0; }
.asb-import-help p { overflow-wrap:anywhere; }
@media(max-width:600px){.asb-import-templates .asb-buttons { align-items:stretch; flex-direction:column; }.asb-import-templates { padding:12px; }}
.asb-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin:16px 0}.asb-form-grid>label,.asb-policy-editor form label,.asb-restrictions form>fieldset>label{display:flex;flex-direction:column;gap:6px;font-weight:600;min-width:0}.asb-form-grid input,.asb-form-grid select,.asb-policy-editor textarea,.asb-restrictions textarea{width:100%;max-width:none;box-sizing:border-box}.asb-policy-editor form label.asb-checkbox{flex-direction:row;align-items:center;margin:12px 0}.asb-restrictions textarea{min-height:90px;margin-bottom:16px}.asb-restrictions .asb-heading,.asb-policy-editor .asb-heading{flex-wrap:wrap}.asb-policy-editor .asb-heading h2{overflow-wrap:anywhere}.asb-restrictions fieldset{min-width:0}.asb-restrictions td{overflow-wrap:anywhere}
.asb-restrictions .asb-table-scroll table{min-width:1050px}.asb-restrictions .asb-table-scroll th:nth-child(5){width:26%}.asb-restrictions .asb-table-scroll td:nth-child(6){white-space:nowrap}.asb-restrictions .asb-table-scroll td:nth-child(7){min-width:140px}
.asb-membership-management .asb-buttons{flex-wrap:wrap}.asb-duration-control{border:1px solid #c3c4c7;padding:12px 16px;margin:0 0 18px;min-width:0}.asb-duration-control legend{font-weight:600;padding:0 6px}.asb-duration-control .asb-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:500px;margin:6px 0}.asb-usage-limits>.asb-stacked{max-width:500px}.asb-usage-limits select{max-width:100%;min-width:0}.asb-policy-editor .description{overflow-wrap:anywhere}.asb-policy-editor table{min-width:760px}
.asb-policy-editor form>fieldset{min-width:0}.asb-policy-editor form select{width:100%;box-sizing:border-box}.asb-usage-limits>.asb-stacked{min-width:0}.asb-usage-limits>.asb-stacked select{width:100%;box-sizing:border-box}

/* Statistics: cards and filters wrap; only data tables scroll horizontally. */
.asb-statistics { min-width: 0; }
.asb-statistics .nav-tab-wrapper { display: flex; flex-wrap: wrap; gap: 4px; }
.asb-statistics .nav-tab { margin: 0; }
.asb-stat-panel { background: #fff; border: 1px solid #c3c4c7; border-radius: 6px; padding: 20px; margin: 18px 0; min-width: 0; }
.asb-stat-panel h2 { margin-top: 0; }
.asb-stat-cards { display: grid; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap: 12px; }
.asb-stat-cards > div { background: #fff; border: 1px solid #c3c4c7; border-left: 4px solid #135e96; border-radius: 4px; padding: 16px; }
.asb-stat-cards dt { color: #50575e; }
.asb-stat-cards dd { margin: 8px 0 0; font-size: 23px; font-weight: 600; overflow-wrap: anywhere; }
.asb-statistics input,.asb-statistics select { max-width: 100%; }
.asb-statistics .asb-form-grid label { display: flex; flex-direction: column; gap: 6px; }
.asb-statistics .asb-buttons { flex-wrap: wrap; }
.asb-statistics .asb-table-scroll { margin: 14px 0; }
.asb-statistics .asb-table-scroll:focus-visible { outline: 2px solid #2271b1; outline-offset: 2px; }
.asb-statistics th,.asb-statistics td { vertical-align: top; }
.asb-stat-trend { display: block; width: 100%; max-height: 240px; }
.asb-stat-bars { padding: 0; }
.asb-stat-bars li { display: grid; grid-template-columns: minmax(90px,1fr) 2fr minmax(60px,auto); gap: 12px; align-items: center; }
.asb-stat-bars li > span:first-child { overflow-wrap: anywhere; }
.asb-stat-bar { display: block; height: 16px; background: #f0f0f1; border-radius: 3px; }
.asb-stat-bar > span { display: block; height: 100%; background: #135e96; border-radius: 3px; }
.asb-stat-heatmap { min-width: 1800px; border-collapse: collapse; }
.asb-stat-heatmap th,.asb-stat-heatmap td { border: 1px solid #c3c4c7; text-align: center; white-space: nowrap; color: #1d2327; }
@media(max-width:600px) { .asb-stat-panel { padding: 12px; } .asb-stat-cards { grid-template-columns: 1fr; } .asb-statistics .asb-search { display: flex; flex-direction: column; align-items: stretch; } .asb-statistics .asb-pagination { flex-wrap: wrap; } }
.asb-stat-trend text { font-size: 11px; fill: #50575e; }

/* M8F international labels and bank profiles. */
.asb-bank-profile{border:1px solid #c3c4c7;padding:16px;margin-block:16px;min-inline-size:0}.asb-bank-profile legend{font-weight:600;overflow-wrap:anywhere}.asb-bank-profiles input,.asb-bank-profiles textarea,.asb-bank-profiles select{max-inline-size:100%;min-inline-size:0;box-sizing:border-box}.asb-bank-preview img{max-inline-size:100%;block-size:auto}.asb-email-settings select{inline-size:100%;max-inline-size:440px}.asb-settings-tabs button,.asb-buttons button{white-space:normal;overflow-wrap:anywhere}.asb-preserve-lines{white-space:pre-line}
.asb-settings-panel .button{max-inline-size:100%;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}

/* Pilot setup and diagnostics remain usable on narrow administration screens. */
.asb-pilot-tools {max-width:1100px}
.asb-setup-checklist {margin:20px 0;padding:0;list-style:none}
.asb-setup-checklist li {display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:16px;background:#fff;border:1px solid #c3c4c7;margin-block-end:8px}
.asb-setup-checklist strong {flex:1;min-width:160px}
.asb-health {font-weight:600;white-space:nowrap}
.asb-health-ok {color:#176735}.asb-health-warning {color:#805600}.asb-health-error {color:#a01616}
.asb-pilot-tools .asb-panel {background:#fff;border:1px solid #c3c4c7;padding:20px;margin-block:20px}
.asb-pilot-tools label {display:block;margin-block-end:8px;font-weight:600}
.asb-pilot-tools input {display:block;width:100%;max-width:420px;margin-block-end:12px;box-sizing:border-box}
.asb-pilot-tools td {overflow-wrap:anywhere}.asb-pilot-actions {display:flex;gap:12px;flex-wrap:wrap;margin-block:16px}
.asb-pilot-tools .asb-danger {border:2px solid #a01616}.asb-danger-button {color:#a01616!important;border-color:#a01616!important}
@media(max-width:600px){.asb-pilot-tools .asb-panel {padding:12px}.asb-setup-checklist li {gap:12px}.asb-setup-checklist .button {width:100%;text-align:center}}

/* Keep precedence guidance with its field and out of the accessible label. */
.asb-precedence-field { min-width:0; max-width:560px; }
.asb-precedence-field > label { display:block; margin-bottom:6px; font-weight:600; }
.asb-precedence-field > input { width:100%; max-width:100%; box-sizing:border-box; }
.asb-precedence-field > .description { margin:6px 0 0; font-weight:400; overflow-wrap:anywhere; }

.asb-resource-selector {display:grid;gap:.65rem;max-width:100%;padding:1rem;border:1px solid #c3c4c7;box-sizing:border-box}
.asb-resource-selector label {display:flex;align-items:center;gap:.4rem;overflow-wrap:anywhere}
.asb-resource-checkboxes {display:grid;gap:.5rem;max-height:16rem;overflow:auto;padding:.5rem}
.asb-group-title {display:block;margin-top:.25rem}
.asb-series-preview {max-width:100%;margin:1rem 0}
.asb-series-preview td {vertical-align:top;overflow-wrap:anywhere;min-width:7rem}
.asb-series-preview .asb-table-scroll {max-height:28rem;overflow:auto}
.asb-editor fieldset {min-width:0}
@media(max-width:600px){.asb-resource-selector .asb-actions{flex-wrap:wrap}.asb-series-preview .asb-table-scroll{max-height:22rem}}

.asb-privacy-settings { min-width:0; }
.asb-privacy-settings p,.asb-privacy-settings small { overflow-wrap:anywhere; }
.asb-privacy-settings table { min-width:620px; }
.asb-privacy-settings fieldset { min-width:0; }
