/* Desktop-only polish for member, guardian and coach workflows.
   Mobile behaviour remains owned by portal_mobile.css. */
@media (min-width: 1024px) {
    body.portal-member main .member-portal-dashboard {
        display: grid;
        gap: 18px;
    }

    body.portal-member main .member-portal-dashboard > * {
        min-width: 0;
        margin-top: 0;
    }

    body.portal-member main .member-portal-hero {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(280px, 350px);
        align-items: stretch;
        gap: 24px;
        padding: 26px;
    }

    body.portal-member main .member-portal-main h1 {
        margin-bottom: 7px;
        font-size: clamp(1.8rem, 2.4vw, 2.35rem);
        letter-spacing: -.025em;
    }

    body.portal-member main .member-portal-actions {
        gap: 8px;
        margin-top: 18px;
    }

    body.portal-member main .member-portal-actions .btn {
        min-height: 42px;
        padding: 9px 13px;
    }

    body.portal-member main .member-card-cta {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 12px;
        width: 100%;
        max-width: none;
        padding: 20px;
    }

    body.portal-member main .member-card-cta h2,
    body.portal-member main .member-card-cta p { margin: 0; }

    body.portal-member main .member-card-cta .btn {
        min-height: 46px;
        font-size: 15px;
    }

    body.portal-member main .member-portal-alerts,
    body.portal-member main .member-portal-schedule > .schedule-entry-card,
    body.portal-member main .member-portal-record-grid > .section-card {
        border: 1px solid var(--line, #dbe3ef);
        border-radius: 15px;
        box-shadow: 0 5px 18px rgba(20, 43, 76, .045);
    }

    body.portal-member main .member-portal-alerts { padding: 20px 22px; }
    body.portal-member main .member-portal-alerts h2 { margin-bottom: 12px; }

    body.portal-member main .member-portal-status-overview {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    body.portal-member main .member-portal-status-overview .stat-card {
        min-width: 0;
        min-height: 112px;
        padding: 18px 20px;
        border: 1px solid var(--line, #dbe3ef);
        border-radius: 14px;
        background: var(--surface, #fff);
        box-shadow: 0 5px 18px rgba(20, 43, 76, .045);
    }

    body.portal-member main .member-portal-status-overview .stat-label {
        margin-bottom: 10px;
        color: var(--muted, #64748b);
        font-size: 12px;
        font-weight: 750;
        letter-spacing: .025em;
        text-transform: uppercase;
    }

    body.portal-member main .member-portal-status-overview .stat-value {
        line-height: 1.25;
        overflow-wrap: anywhere;
    }

    body.portal-member main .member-portal-schedule > .schedule-entry-card {
        margin: 0;
        border-radius: 15px;
    }

    body.portal-member main .member-portal-schedule .card-body { padding: 20px 22px; }

    body.portal-member main .member-portal-record-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    body.portal-member main .member-portal-record-grid > .section-card {
        min-width: 0;
        margin: 0;
        padding: 20px;
    }

    body.portal-member main .member-portal-record-grid .portal-desktop-record-table {
        width: 100%;
        overflow-x: auto;
        border-radius: 9px;
    }

    body.portal-member main .member-portal-record-grid table { margin-bottom: 0; }
    body.portal-member main .member-portal-record-grid th { color: var(--muted, #64748b); font-size: 12px; }
    body.portal-member main .member-portal-record-grid td { overflow-wrap: anywhere; }

    body.portal-guardian main .guardian-portal { gap: 20px; }

    body.portal-guardian main .guardian-portal > .d-flex:first-child {
        align-items: center !important;
        padding: 4px 2px 8px;
    }

    body.portal-guardian main .guardian-portal > .d-flex:first-child h1 {
        margin-bottom: 7px !important;
        font-size: clamp(1.8rem, 2.35vw, 2.3rem);
        letter-spacing: -.025em;
    }

    body.portal-guardian main .guardian-portal > .d-flex:first-child > .d-flex {
        gap: 8px !important;
    }

    body.portal-guardian main .guardian-child-list {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 1fr));
        gap: 18px;
        align-items: stretch;
    }

    body.portal-guardian main .guardian-child-summary {
        height: 100%;
        border: 1px solid var(--line, #dbe3ef);
        border-radius: 16px;
        box-shadow: 0 8px 24px rgba(20, 43, 76, .055);
    }

    body.portal-guardian main .guardian-child-summary > .card-body {
        display: flex;
        flex-direction: column;
        gap: 15px;
        height: 100%;
        padding: 19px;
    }

    body.portal-guardian main .guardian-child-identity {
        padding: 15px 17px;
        border: 1px solid rgba(31, 75, 153, .12);
        border-radius: 12px;
        background: linear-gradient(135deg, #f1f6ff, #e7effb);
    }

    body.portal-guardian main .guardian-child-identity h3 { font-size: 1.2rem; }
    body.portal-guardian main .guardian-child-identity p:last-child { margin-bottom: 0 !important; }

    body.portal-guardian main .guardian-status-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
        align-items: stretch;
    }

    body.portal-guardian main .guardian-status-grid > .info-item {
        min-width: 0;
        padding: 11px 12px;
        border: 1px solid var(--line, #dbe3ef);
        border-radius: 10px;
        background: var(--surface, #fff);
        overflow-wrap: anywhere;
    }

    body.portal-guardian main .guardian-status-grid > .info-item > strong {
        display: block;
        margin-bottom: 4px;
        color: var(--muted, #64748b);
        font-size: 11px;
        font-weight: 750;
        letter-spacing: .02em;
        text-transform: uppercase;
    }

    body.portal-guardian main .guardian-child-actions {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 7px !important;
        margin-top: auto !important;
        padding-top: 14px;
        border-top: 1px solid var(--line, #dbe3ef);
    }

    body.portal-guardian main .guardian-child-actions .btn {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        min-height: 40px;
        padding: 7px 8px;
        font-size: 12px;
        line-height: 1.25;
        text-align: center;
        white-space: normal;
    }

    body.portal-guardian main .guardian-portal > .dashboard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    body.portal-guardian main .guardian-portal > .dashboard-grid > * {
        min-width: 0;
        border: 1px solid var(--line, #dbe3ef);
        border-radius: 14px;
        box-shadow: 0 5px 18px rgba(20, 43, 76, .045);
    }

    body.portal-guardian main .guardian-portal .table-responsive { border-radius: 0 0 14px 14px; }
    body.portal-guardian main .guardian-portal .table { margin-bottom: 0; }
    body.portal-guardian main .guardian-portal th { color: var(--muted, #64748b); font-size: 12px; }
    body.portal-guardian main .guardian-portal td { overflow-wrap: anywhere; }

    body.portal-coach main .coach-training-workspace {
        width: 100%;
        max-width: 1480px;
        padding-inline: 0;
    }

    body.portal-coach main .coach-training-workspace__heading {
        align-items: center !important;
        gap: 18px !important;
        margin-bottom: 20px !important;
    }

    body.portal-coach main .coach-training-workspace__heading h1 {
        margin-bottom: 7px !important;
        font-size: clamp(1.8rem, 2.35vw, 2.3rem);
        letter-spacing: -.025em;
    }

    body.portal-coach main .coach-training-workspace__actions {
        justify-content: flex-end;
        gap: 8px !important;
        max-width: 700px;
    }

    body.portal-coach main .coach-training-workspace > .card {
        border: 1px solid var(--line, #dbe3ef);
        border-radius: 14px;
        box-shadow: 0 5px 18px rgba(20, 43, 76, .045);
    }

    body.portal-coach main .coach-training-workspace > .card > .card-body { padding: 19px; }

    body.portal-coach main .coach-training-workspace .table {
        font-size: 13px;
    }

    body.portal-coach main .coach-training-workspace .table th {
        color: var(--muted, #64748b);
        font-size: 11px;
        letter-spacing: .025em;
        text-transform: uppercase;
        white-space: normal;
    }

    body.portal-coach main .coach-training-workspace .table td { overflow-wrap: anywhere; }

    body.portal-coach main .coach-schedule-workspace {
        max-width: 1520px;
        padding: 0 0 8px;
    }

    body.portal-coach main .coach-schedule-workspace .schedule-heading { margin-bottom: 19px; }
    body.portal-coach main .coach-schedule-workspace .schedule-group-filters {
        flex-wrap: wrap;
        overflow: visible;
        gap: 7px;
        padding-bottom: 8px;
    }

    body.portal-coach main .coach-schedule-workspace .schedule-toolbar {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        align-items: end;
        gap: 12px;
        padding: 16px;
    }

    body.portal-coach main .coach-schedule-workspace .schedule-toolbar-actions {
        grid-column: 1 / 3;
        justify-content: flex-start;
    }

    body.portal-coach main .coach-schedule-workspace .schedule-week {
        grid-column: 3 / 5;
    }

    body.portal-coach main .coach-schedule-workspace .schedule-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    body.portal-coach main .coach-schedule-workspace .schedule-day { padding: 15px; }
    body.portal-coach main .coach-schedule-workspace .session-groups {
        white-space: normal;
        overflow: visible;
        overflow-wrap: anywhere;
        text-overflow: clip;
    }
}

@media (min-width: 1400px) {
    body.portal-coach main .coach-schedule-workspace .schedule-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    body.member-list-page .ui-member-list-table { table-layout: fixed; }
    body.member-list-page .ui-member-actions { display: block; min-width: 0; }
    body.member-list-page .ui-member-actions-row {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 5px;
        min-width: 0;
    }
    body.member-list-page .ui-member-list-table .ui-member-col-number { white-space: nowrap; }
    body.member-list-page .ui-member-list-table :is(.ui-member-col-name, .ui-member-col-guardian, .ui-member-col-classification, .ui-member-col-category, .ui-member-col-status, .ui-member-col-operational) {
        overflow-wrap: normal;
        word-break: normal;
    }
    body.member-list-page .ui-member-list-table .ui-member-name-link { overflow-wrap: break-word; }
    body.member-list-page .ui-member-actions-row > a {
        flex: 0 0 auto;
        min-height: 31px;
        padding-inline: 7px;
        font-size: 11px;
        white-space: nowrap;
    }

    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-select { width: 3%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-number { width: 7%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-name { width: 18%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-last-login { width: 12%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-guardian { width: 9%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-classification { width: 8%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-category { width: 8%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-status { width: 7%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-operational { width: 6%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-actions { width: 22%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-select { width: 3%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-number { width: 8%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-name { width: 24%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-guardian { width: 10%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-classification { width: 9%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-category { width: 9%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-status { width: 8%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-operational { width: 7%; }
    body.member-list-page .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-actions { width: 22%; }

    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-number { width: 8%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-name { width: 19%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-last-login { width: 12%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-guardian { width: 9%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-classification { width: 8%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-category { width: 8%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-status { width: 7%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-operational { width: 7%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-actions { width: 22%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-number { width: 9%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-name { width: 25%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-guardian { width: 11%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-classification { width: 9%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-category { width: 9%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-status { width: 9%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-operational { width: 6%; }
    body.member-list-page .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-actions { width: 22%; }

    html[data-aksel-theme="desktop"] body > main .ui-member-list-table .ui-member-col-actions { width: 28%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-select { width: 4%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-number { width: 8%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-name { width: 27%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-last-login { width: 16%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--last-login .ui-member-col-status { width: 17%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-select { width: 4%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-number { width: 9%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-name { width: 45%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table--admin.ui-member-list-table--no-last-login .ui-member-col-status { width: 14%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-number { width: 10%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-name { width: 26%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-last-login { width: 18%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--last-login .ui-member-col-status { width: 18%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-number { width: 13%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-name { width: 45%; }
    html[data-aksel-theme="desktop"] body > main .ui-member-list-table:not(.ui-member-list-table--admin).ui-member-list-table--no-last-login .ui-member-col-status { width: 14%; }
}

@media (min-width: 1024px) and (max-width: 1180px) {
    body.member-list-page .ui-member-actions-row { flex-wrap: wrap; }
    html[data-aksel-theme="desktop"] body.member-list-page .ui-member-actions-row { flex-wrap: wrap; }
}

/* Respect the already-persisted dark choice on desktop portal pages too. */
@media (min-width: 1024px) {
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) {
        color-scheme: dark;
        --bg: #0c1523;
        --surface: #142238;
        --surface-muted: #192a40;
        --text: #e8eef7;
        --muted: #afbdd0;
        --line: #33465f;
        --primary: #8bb8ff;
        --primary-dark: #a8c8ff;
        --success: #69d5a2;
        --danger: #ff929e;
        --ak-bg: #0c1523;
        --ak-bg-elevated: #101d30;
        --ak-surface: #142238;
        --ak-surface-soft: #192a40;
        --ak-ink: #e8eef7;
        --ak-ink-soft: #c2cede;
        --ak-muted: #afbdd0;
        --ak-line: #33465f;
        --ak-line-strong: #526a87;
        background: #0c1523 !important;
        color: #e8eef7 !important;
    }

    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) > main { color: #e8eef7; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(h1, h2, h3, h4, strong, .stat-value, .stat-label) { color: #f1f5fb !important; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(.text-muted, small, .muted, .text-secondary) { color: #afbdd0 !important; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(.page-shell, .section-card, .card, .panel, .info-item, .stat-card, .dashboard-card, .dashboard-panel, .schedule-entry-card) {
        background: #142238 !important;
        border-color: #33465f !important;
        color: #e8eef7 !important;
    }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(th, td, .list-group-item) { border-color: #33465f !important; color: #e8eef7; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main tbody tr:hover { background: #203650 !important; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
        border-color: #526a87 !important;
        background: #101d30 !important;
        color: #e8eef7 !important;
    }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(input, textarea)::placeholder { color: #afbdd0 !important; opacity: 1; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(input[type="checkbox"], input[type="radio"]) { accent-color: #8bb8ff; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(.btn-outline-primary, .btn-outline-secondary) {
        border-color: #789ac2 !important;
        color: #b8d2ff !important;
    }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(.bg-success, .alert-success, .status-ok, .goe-positive) { background: #173b32 !important; border-color: #36735e !important; color: #b7f0d3 !important; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(.bg-danger, .alert-danger, .status-danger, .goe-negative) { background: #46252d !important; border-color: #8c4752 !important; color: #ffd0d5 !important; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(.bg-warning, .alert-warning, .status-warning) { background: #45381f !important; border-color: #88713c !important; color: #ffe4a2 !important; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main :is(.bg-info, .alert-info, .status-info) { background: #183748 !important; border-color: #3b6b83 !important; color: #c3eafa !important; }
    html[data-aksel-admin-theme="dark"] body.portal-member main .member-card-cta { background: linear-gradient(135deg, #192d49, #1d3554) !important; border-color: #405a78 !important; }
    html[data-aksel-admin-theme="dark"] body.portal-guardian main .guardian-child-identity { background: linear-gradient(135deg, #1f4b99, #275bb6) !important; border-color: #405a78; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .main-navigation {
        --nav-panel-bg: #17273d;
        --nav-panel-text: #e8eef7;
        --nav-muted: #afbdd0;
        --nav-border: #33465f;
        --nav-soft: #1d3049;
        --nav-active: #28476c;
        --nav-primary: #a8c8ff;
    }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .main-navigation .nav-subgroup { background: #17273d; border-color: #33465f; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .main-navigation .nav-subgroup-trigger,
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .main-navigation .nav-panel .nav-item,
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .main-navigation .nav-panel .nav-logout-button { color: #e8eef7 !important; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .appearance-option { background: #17273d; border-color: #465d79; color: #e8eef7; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .appearance-option__copy strong { color: #f1f5fb; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .appearance-option__copy small { color: #afbdd0; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .appearance-option:hover,
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) .appearance-option[aria-pressed="true"] { background: #223b5b; border-color: #789ac2; }
    html[data-aksel-admin-theme="dark"] body.portal-coach main .schedule-page {
        --sch-ink: #e8eef7;
        --sch-muted: #afbdd0;
        --sch-line: #33465f;
        color: #e8eef7;
    }
    html[data-aksel-admin-theme="dark"] body.portal-coach main .schedule-toolbar,
    html[data-aksel-admin-theme="dark"] body.portal-coach main .schedule-day,
    html[data-aksel-admin-theme="dark"] body.portal-coach main .session-card {
        background: #142238 !important;
        border-color: #33465f !important;
        color: #e8eef7;
    }
    html[data-aksel-admin-theme="dark"] body.portal-coach main .session-count { color: #b7f0d3; background: #173b32; border-color: #36735e; }
    html[data-aksel-admin-theme="dark"] body.portal-coach main .session-kind,
    html[data-aksel-admin-theme="dark"] body.portal-coach main .session-action { color: #a8c8ff; }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
        outline: 3px solid #9bc0ff !important;
        outline-offset: 3px !important;
        box-shadow: 0 0 0 2px #14243d !important;
    }
    html[data-aksel-admin-theme="dark"] body:is(.portal-member, .portal-guardian, .portal-coach) main a:not(.btn) { color: #a8c8ff; }
    body:is(.portal-member, .portal-guardian, .portal-coach) .appearance-option--admin-dark { display: flex; }
}

@media (min-width: 1024px) and (prefers-reduced-motion: reduce) {
    body:is(.portal-member, .portal-guardian, .portal-coach) * {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        transition-duration: .01ms !important;
    }
}
