/* Hofgut Haubenmühle – Salbeigrün (global) */

:root {
    --hm-brand: #4a6f52;
    --hm-brand-dark: #3d5a45;
    --hm-brand-light: #eef3ef;
    --hm-brand-rgb: 74, 111, 82;
    --accent-color: #4a6f52;
    --nav-hover-color: #4a6f52;
    --nav-dropdown-hover-color: #4a6f52;
    --heading-color: #2c3328;
    --default-color: #3a4038;
    --bs-primary: #4a6f52;
    --bs-primary-rgb: 74, 111, 82;
    --bs-link-color: #4a6f52;
    --bs-link-hover-color: #3d5a45;
}

.btn-primary {
    --bs-btn-bg: var(--hm-brand);
    --bs-btn-border-color: var(--hm-brand);
    --bs-btn-hover-bg: var(--hm-brand-dark);
    --bs-btn-hover-border-color: var(--hm-brand-dark);
    --bs-btn-active-bg: var(--hm-brand-dark);
    --bs-btn-active-border-color: var(--hm-brand-dark);
    --bs-btn-disabled-bg: var(--hm-brand);
    --bs-btn-disabled-border-color: var(--hm-brand);
    background-color: var(--hm-brand);
    border-color: var(--hm-brand);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: var(--hm-brand-dark);
    border-color: var(--hm-brand-dark);
}

.btn-outline-primary {
    --bs-btn-color: var(--hm-brand);
    --bs-btn-border-color: var(--hm-brand);
    --bs-btn-hover-bg: var(--hm-brand);
    --bs-btn-hover-border-color: var(--hm-brand);
    --bs-btn-active-bg: var(--hm-brand-dark);
    --bs-btn-active-border-color: var(--hm-brand-dark);
}

.form-control:focus,
.form-check-input:focus {
    border-color: color-mix(in srgb, var(--hm-brand) 55%, transparent);
    box-shadow: 0 0 0 0.2rem rgba(var(--hm-brand-rgb), 0.22);
}

a {
    color: var(--hm-brand);
}

a:hover {
    color: var(--hm-brand-dark);
}

/* Mitgliederbereich */
body.member-layout {
    --accent: var(--hm-brand);
    --fab: var(--hm-brand);
}

body.member-layout .member-topbar {
    background-color: var(--hm-brand-dark);
    color: #fff;
    border-bottom-color: rgba(255, 255, 255, 0.12);
}

@media (prefers-color-scheme: light) {
    body.member-layout .member-topbar {
        background-color: var(--hm-brand-dark);
        color: #fff;
        border-bottom-color: rgba(255, 255, 255, 0.12);
    }
}

body.member-layout .member-fab {
    background: radial-gradient(120% 120% at 30% 30%, #fff8, transparent 60%), var(--hm-brand);
}

body.member-layout .scroll-top {
    background-color: var(--hm-brand);
}

body.member-layout .scroll-top:hover {
    background-color: var(--hm-brand-dark);
}

/* Login / Registrierung */
body.public-layout #main .btn-primary {
    width: 100%;
    margin-top: 0.5rem;
    font-weight: 600;
}

body.public-layout #main #info a {
    color: #d4e8d8;
}

body.public-layout #main #info a:hover {
    color: #fff;
}

body.public-layout #main #info {
    border: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
}

:focus-visible {
    outline: 2px solid var(--hm-brand, #4a6f52);
    outline-offset: 2px;
}

.hm-info-panel {
    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;
}

/* Dienstplan & Admin */
.dienstplan-calendar .btn-primary,
.users-page .btn-primary {
    background: var(--hm-brand) !important;
    color: #fff !important;
}

.dienstplan-calendar .btn-primary:hover {
    background: var(--hm-brand-dark) !important;
}
