/* Mitgliederbereich – einheitliches UI */

body.member-layout .member-page {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem 5.5rem;
}

body.member-layout .member-page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid color-mix(in srgb, var(--hm-brand) 25%, transparent);
}

body.member-layout .member-page-header h1,
body.member-layout .member-page-header h2 {
    margin: 0;
    font-size: 1.5rem;
    color: var(--hm-brand-dark, #3d5a45);
}

body.member-layout .member-breadcrumb {
    font-size: 0.85rem;
    color: #6b7280;
    margin-bottom: 0.25rem;
}

body.member-layout .hm-info-panel,
body.member-layout .calendar-wrapper .alert-info {
    background: var(--hm-brand-light, #eef3ef);
    border: 1px solid color-mix(in srgb, var(--hm-brand) 30%, transparent);
    border-left: 4px solid var(--hm-brand, #4a6f52);
    border-radius: 0.75rem;
    color: #2c3328;
}

body.member-layout .calendar-wrapper {
    background: #fff;
    border-radius: 1rem;
    padding: 1.25rem;
    box-shadow: 0 4px 20px rgba(44, 51, 40, 0.08);
    border: 1px solid rgba(74, 111, 82, 0.12);
}

body.member-layout .fc {
    --fc-border-color: #e5ebe6;
    --fc-button-bg-color: var(--hm-brand, #4a6f52);
    --fc-button-border-color: var(--hm-brand, #4a6f52);
    --fc-button-hover-bg-color: var(--hm-brand-dark, #3d5a45);
    --fc-button-hover-border-color: var(--hm-brand-dark, #3d5a45);
    --fc-button-active-bg-color: var(--hm-brand-dark, #3d5a45);
    --fc-today-bg-color: var(--hm-brand-light, #eef3ef);
}

body.member-layout .fc .fc-button-primary:not(:disabled).fc-button-active,
body.member-layout .fc .fc-button-primary:not(:disabled):active {
    background-color: var(--hm-brand-dark, #3d5a45);
    border-color: var(--hm-brand-dark, #3d5a45);
}

body.member-layout .modal-header {
    background: var(--hm-brand-light, #eef3ef);
    border-bottom-color: color-mix(in srgb, var(--hm-brand) 20%, transparent);
}

body.member-layout .modal-title {
    color: var(--hm-brand-dark, #3d5a45);
    font-weight: 600;
}

/* Navigation: neutrale Schrift auf heller Leiste, Grün nur als Akzent */
body.member-layout .member-nav__bar {
    background: #fff;
    border-color: color-mix(in srgb, var(--hm-brand) 14%, #d8ddd9);
    box-shadow: 0 6px 28px rgba(44, 51, 40, 0.14);
}

body.member-layout .member-nav__link {
    color: #3a4038;
}

body.member-layout .member-nav__link .label {
    color: #5a635c;
    opacity: 1;
}

body.member-layout .member-nav__link:where(:hover, :focus-visible) {
    color: var(--hm-brand-dark, #3d5a45);
    background: var(--hm-brand-light, #eef3ef);
}

body.member-layout .member-nav__link[aria-current="page"] {
    color: #fff;
    background: var(--hm-brand, #4a6f52);
    outline: none;
    font-weight: 600;
}

body.member-layout .member-nav__link[aria-current="page"] .label,
body.member-layout .member-nav__link[aria-current="page"] .icon {
    color: #fff;
}

body.member-layout .member-drawer {
    background: #fff;
    border-right-color: color-mix(in srgb, var(--hm-brand) 12%, #e0e4e1);
}

body.member-layout .drawer__title {
    color: var(--hm-brand-dark, #3d5a45);
}

body.member-layout .drawer__list a {
    color: #3a4038;
}

body.member-layout .drawer__list a:where(:hover, :focus-visible) {
    color: var(--hm-brand-dark, #3d5a45);
    background: var(--hm-brand-light, #eef3ef);
}

body.member-layout .drawer__list a[aria-current="page"] {
    background: var(--hm-brand, #4a6f52);
    color: #fff;
    font-weight: 600;
}

body.member-layout .member-topbar .member-nav__toggle {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.28);
    color: #fff;
}

body.member-layout .member-topbar .member-nav__toggle:where(:hover, :focus-visible) {
    background: rgba(255, 255, 255, 0.28);
}

@media (prefers-color-scheme: dark) {
    body.member-layout .member-nav__bar {
        background: #2c3328;
        border-color: rgba(255, 255, 255, 0.1);
        box-shadow: 0 6px 28px rgba(0, 0, 0, 0.35);
    }

    body.member-layout .member-nav__link {
        color: #e8ede9;
    }

    body.member-layout .member-nav__link .label {
        color: #c5cdc7;
    }

    body.member-layout .member-nav__link:where(:hover, :focus-visible) {
        color: #fff;
        background: rgba(255, 255, 255, 0.08);
    }

    body.member-layout .member-drawer {
        background: #2c3328;
        border-right-color: rgba(255, 255, 255, 0.1);
    }

    body.member-layout .drawer__title {
        color: #e8ede9;
    }

    body.member-layout .drawer__list a {
        color: #e8ede9;
    }

    body.member-layout .drawer__list a:where(:hover, :focus-visible) {
        color: #fff;
        background: rgba(255, 255, 255, 0.08);
    }
}

body.member-layout .fab-action {
    font-weight: 500;
}

body.member-layout .auth-card-page {
    min-height: calc(100vh - 56px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    background: var(--hm-brand-light, #eef3ef);
}

body.member-layout .auth-card-page .card {
    border: none;
    border-radius: 1rem;
    box-shadow: 0 8px 32px rgba(44, 51, 40, 0.12);
    max-width: 420px;
    width: 100%;
}

body.member-layout .auth-card-page .card-header {
    background: var(--hm-brand-dark, #3d5a45);
    color: #fff;
    border-radius: 1rem 1rem 0 0 !important;
}
