/*
 * Aixone Theme – Sandstone-Stil
 * Lädt nach Bootstrap + style.css → überschreibt nur was nötig ist.
 * Keine externen Fonts, keine CDN-Abhängigkeiten.
 *
 * Farbpalette (Sandstone):
 *   Primary   #93c54b  Frisches Grün
 *   Secondary #8e8c84  Warmes Grau
 *   Success   #93c54b  = Primary
 *   Info      #29abe0  Helles Blau
 *   Warning   #f47c3c  Warmes Orange
 *   Danger    #d9534f  Gedämpftes Rot
 *   Dark      #3e3f3a  Fast-Schwarz mit Grünstich
 *   Body-BG   #f8f5f0  Warmes Off-White
 */

/* ══════════════════════════════════════════════════════════════
   1. Bootstrap CSS Custom Properties überschreiben
   ══════════════════════════════════════════════════════════════ */
:root {
    /* Primärfarbe – Sandstone-Grün */
    --bs-primary:           #93c54b;
    --bs-primary-rgb:       147, 197, 75;
    --bs-primary-bg-subtle: #e9f5d5;
    --bs-primary-border-subtle: #c8e49a;
    --bs-primary-text-emphasis: #4a6225;

    /* Sekundär – warmes Grau */
    --bs-secondary:           #8e8c84;
    --bs-secondary-rgb:       142, 140, 132;
    --bs-secondary-bg-subtle: #eeeedd;
    --bs-secondary-border-subtle: #c8c8b8;

    /* Success = Primary */
    --bs-success:           #93c54b;
    --bs-success-rgb:       147, 197, 75;
    --bs-success-bg-subtle: #e9f5d5;

    /* Info – helles Blau */
    --bs-info:           #29abe0;
    --bs-info-rgb:       41, 171, 224;
    --bs-info-bg-subtle: #d0eef9;

    /* Warning – warmes Orange */
    --bs-warning:           #f47c3c;
    --bs-warning-rgb:       244, 124, 60;
    --bs-warning-bg-subtle: #fde8d8;

    /* Danger – gedämpftes Rot */
    --bs-danger:           #d9534f;
    --bs-danger-rgb:       217, 83, 79;
    --bs-danger-bg-subtle: #f7dedd;

    /* Dark – fast Schwarz mit Grünstich */
    --bs-dark:     #3e3f3a;
    --bs-dark-rgb: 62, 63, 58;

    /* Light */
    --bs-light:     #f8f5f0;
    --bs-light-rgb: 248, 245, 240;

    /* Seitenfarben */
    --bs-body-bg:    #f8f5f0;
    --bs-body-color: #3e3f3a;

    /* Links */
    --bs-link-color:       #93c54b;
    --bs-link-hover-color: #6a9033;

    /* Border */
    --bs-border-color: #ddd8cf;

    /* Border-Radius – leicht reduziert für klares Sandstone-Feeling */
    --bs-border-radius:    0.25rem;
    --bs-border-radius-sm: 0.15rem;
    --bs-border-radius-lg: 0.35rem;

    /* Schatten */
    --bs-box-shadow:    0 2px 8px rgba(62, 63, 58, 0.10);
    --bs-box-shadow-sm: 0 1px 4px rgba(62, 63, 58, 0.08);
}

/* ══════════════════════════════════════════════════════════════
   2. Body & Basis-Typografie
   ══════════════════════════════════════════════════════════════ */
body {
    background-color: #f8f5f0;
    color: #3e3f3a;
}

/* Überschriften – etwas kompakter */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    color: #3e3f3a;
    font-weight: 500;
    letter-spacing: -0.01em;
}

/* Code-Elemente */
code {
    color: #93c54b;
    background-color: #eef7dc;
    padding: 0.1em 0.35em;
    border-radius: 0.2rem;
    font-size: 0.875em;
}

pre {
    background-color: #f0ece4;
    border: 1px solid #ddd8cf;
    border-radius: 0.25rem;
}

/* ══════════════════════════════════════════════════════════════
   3. Navbar
   ══════════════════════════════════════════════════════════════ */
.navbar.navbar-dark.bg-dark {
    background-color: #3e3f3a !important;
    border-bottom: 3px solid #93c54b;
}

.navbar-dark .navbar-brand {
    color: #f8f5f0;
    font-weight: 600;
    letter-spacing: 0.01em;
}

.navbar-dark .navbar-brand:hover {
    color: #93c54b;
}

.navbar-dark .nav-link {
    color: rgba(248, 245, 240, 0.80);
    transition: color 0.15s;
}

.navbar-dark .nav-link:hover,
.navbar-dark .nav-link:focus {
    color: #93c54b;
}

.navbar-dark .nav-link.active {
    color: #93c54b !important;
    font-weight: 500;
}

/* Dropdown-Menü */
.navbar-dark .dropdown-menu {
    background-color: #46473f;
    border: 1px solid #5a5b52;
    border-top: 2px solid #93c54b;
    border-radius: 0 0 0.25rem 0.25rem;
}

.navbar-dark .dropdown-item {
    color: #d4d0c8;
    font-size: 0.875rem;
    padding: 0.45rem 1rem;
    transition: background-color 0.12s, color 0.12s;
}

.navbar-dark .dropdown-item:hover,
.navbar-dark .dropdown-item:focus {
    background-color: #93c54b;
    color: #fff;
}

.navbar-dark .dropdown-item.active {
    background-color: #93c54b;
    color: #fff;
}

.navbar-dark .dropdown-divider {
    border-color: #5a5b52;
    margin: 0.25rem 0;
}

/* ══════════════════════════════════════════════════════════════
   4. Buttons
   ══════════════════════════════════════════════════════════════ */
.btn-primary {
    --bs-btn-bg:           #93c54b;
    --bs-btn-border-color: #93c54b;
    --bs-btn-color:        #fff;
    --bs-btn-hover-bg:           #7aaa36;
    --bs-btn-hover-border-color: #70a030;
    --bs-btn-active-bg:          #6a9030;
    --bs-btn-disabled-bg:        #93c54b;
    --bs-btn-disabled-border-color: #93c54b;
}

.btn-outline-primary {
    --bs-btn-color:              #93c54b;
    --bs-btn-border-color:       #93c54b;
    --bs-btn-hover-bg:           #93c54b;
    --bs-btn-hover-border-color: #93c54b;
    --bs-btn-hover-color:        #fff;
    --bs-btn-active-bg:          #7aaa36;
    --bs-btn-active-border-color:#7aaa36;
}

.btn-secondary {
    --bs-btn-bg:           #8e8c84;
    --bs-btn-border-color: #8e8c84;
    --bs-btn-color:        #fff;
    --bs-btn-hover-bg:     #76746d;
    --bs-btn-hover-border-color: #706e67;
}

.btn-outline-secondary {
    --bs-btn-color:              #8e8c84;
    --bs-btn-border-color:       #ccc8c0;
    --bs-btn-hover-bg:           #8e8c84;
    --bs-btn-hover-color:        #fff;
    --bs-btn-hover-border-color: #8e8c84;
}

.btn-warning {
    --bs-btn-bg:           #f47c3c;
    --bs-btn-border-color: #f47c3c;
    --bs-btn-color:        #fff;
    --bs-btn-hover-bg:     #d96425;
    --bs-btn-hover-border-color: #cc5e20;
}

.btn-danger {
    --bs-btn-bg:           #d9534f;
    --bs-btn-border-color: #d9534f;
    --bs-btn-color:        #fff;
    --bs-btn-hover-bg:     #c0302c;
}

.btn-dark {
    --bs-btn-bg:           #3e3f3a;
    --bs-btn-border-color: #3e3f3a;
    --bs-btn-color:        #f8f5f0;
    --bs-btn-hover-bg:     #2a2b27;
}

/* ══════════════════════════════════════════════════════════════
   5. Cards
   ══════════════════════════════════════════════════════════════ */
.card {
    background-color: #fff;
    border: 1px solid #e4dfd7;
    border-radius: 0.3rem;
}

.card-header {
    background-color: #f5f2ec;
    border-bottom: 1px solid #e4dfd7;
}

.card-footer {
    background-color: #f5f2ec;
    border-top: 1px solid #e4dfd7;
}

/* Farbige Card-Border oben (wie im Admin bereits genutzt) */
.card-border-top-3 {
    border-top-width: 3px !important;
}

/* ══════════════════════════════════════════════════════════════
   6. Tabellen
   ══════════════════════════════════════════════════════════════ */
.table {
    --bs-table-bg: transparent;
    --bs-table-striped-bg: #f5f2ec;
    --bs-table-hover-bg:   #eee9df;
    --bs-table-border-color: #e4dfd7;
}

.table-dark {
    --bs-table-bg:           #3e3f3a;
    --bs-table-border-color: #56574f;
    --bs-table-color:        #f0ece4;
}

.table-success {
    --bs-table-bg:           #e9f5d5;
    --bs-table-border-color: #c8e49a;
    --bs-table-color:        #3a5020;
}

.table-light {
    --bs-table-bg: #f5f2ec;
}

/* ══════════════════════════════════════════════════════════════
   7. Badges
   ══════════════════════════════════════════════════════════════ */
.badge.bg-primary   { background-color: #93c54b !important; color: #fff; }
.badge.bg-secondary { background-color: #8e8c84 !important; color: #fff; }
.badge.bg-success   { background-color: #93c54b !important; color: #fff; }
.badge.bg-info      { background-color: #29abe0 !important; color: #fff; }
.badge.bg-warning   { background-color: #f47c3c !important; color: #fff; }
.badge.bg-danger    { background-color: #d9534f !important; color: #fff; }
.badge.bg-dark      { background-color: #3e3f3a !important; color: #f8f5f0; }
.badge.bg-light     { background-color: #f5f2ec !important; color: #3e3f3a; border: 1px solid #ddd8cf; }

/* ══════════════════════════════════════════════════════════════
   8. Forms
   ══════════════════════════════════════════════════════════════ */
.form-control,
.form-select {
    background-color: #fff;
    border-color: #ccc8c0;
    color: #3e3f3a;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.form-control:focus,
.form-select:focus {
    border-color: #93c54b;
    box-shadow: 0 0 0 0.2rem rgba(147, 197, 75, 0.25);
    background-color: #fff;
}

.form-check-input:checked {
    background-color: #93c54b;
    border-color: #93c54b;
}

.form-check-input:focus {
    box-shadow: 0 0 0 0.2rem rgba(147, 197, 75, 0.25);
}

/* ══════════════════════════════════════════════════════════════
   9. Alerts
   ══════════════════════════════════════════════════════════════ */
.alert-primary {
    background-color: #e9f5d5;
    border-color: #c8e49a;
    color: #4a6225;
}

.alert-success {
    background-color: #e9f5d5;
    border-color: #c8e49a;
    color: #4a6225;
}

.alert-warning {
    background-color: #fde8d8;
    border-color: #f8c4a0;
    color: #8a3e10;
}

.alert-danger {
    background-color: #f7dedd;
    border-color: #e8b4b3;
    color: #7a2220;
}

.alert-info {
    background-color: #d0eef9;
    border-color: #9dd8f0;
    color: #145c7a;
}

/* ══════════════════════════════════════════════════════════════
   10. Pagination
   ══════════════════════════════════════════════════════════════ */
.page-link {
    color: #3e3f3a;
    border-color: #ddd8cf;
    background-color: #fff;
}

.page-link:hover {
    color: #3e3f3a;
    background-color: #f0ece4;
    border-color: #ccc8c0;
}

.page-item.active .page-link {
    background-color: #93c54b;
    border-color: #93c54b;
    color: #fff;
}

.page-item.disabled .page-link {
    background-color: #f5f2ec;
    border-color: #e4dfd7;
    color: #aaa69e;
}

/* ══════════════════════════════════════════════════════════════
   11. Modals
   ══════════════════════════════════════════════════════════════ */
.modal-content {
    background-color: #fff;
    border: 1px solid #ddd8cf;
}

.modal-header {
    background-color: #f5f2ec;
    border-bottom: 1px solid #e4dfd7;
}

.modal-footer {
    background-color: #f5f2ec;
    border-top: 1px solid #e4dfd7;
}

/* ══════════════════════════════════════════════════════════════
   12. Footer
   ══════════════════════════════════════════════════════════════ */
.footer {
    background-color: #3e3f3a !important;
    border-top: 3px solid #93c54b;
    color: #aaa69e !important;
}

/* ══════════════════════════════════════════════════════════════
   13. Input Groups
   ══════════════════════════════════════════════════════════════ */
.input-group-text {
    background-color: #f0ece4;
    border-color: #ccc8c0;
    color: #8e8c84;
}

/* ══════════════════════════════════════════════════════════════
   14. Dropdowns (allgemein)
   ══════════════════════════════════════════════════════════════ */
.dropdown-menu {
    border-color: #ddd8cf;
    box-shadow: 0 4px 12px rgba(62, 63, 58, 0.12);
}

.dropdown-item:hover,
.dropdown-item:focus {
    background-color: #f0ece4;
    color: #3e3f3a;
}

.dropdown-item.active,
.dropdown-item:active {
    background-color: #93c54b;
    color: #fff;
}

.dropdown-divider {
    border-color: #e4dfd7;
}

/* ══════════════════════════════════════════════════════════════
   15. Progress
   ══════════════════════════════════════════════════════════════ */
.progress {
    background-color: #e4dfd7;
}

.progress-bar {
    background-color: #93c54b;
}

/* ══════════════════════════════════════════════════════════════
   16. List Groups
   ══════════════════════════════════════════════════════════════ */
.list-group-item {
    background-color: #fff;
    border-color: #e4dfd7;
    color: #3e3f3a;
}

.list-group-item:hover {
    background-color: #f5f2ec;
}

.list-group-item.active {
    background-color: #93c54b;
    border-color: #93c54b;
    color: #fff;
}

/* ══════════════════════════════════════════════════════════════
   17. Scrollbar (subtil, passend zum Theme)
   ══════════════════════════════════════════════════════════════ */
::-webkit-scrollbar { width: 7px; height: 7px; }
::-webkit-scrollbar-track { background: #f0ece4; }
::-webkit-scrollbar-thumb { background: #c0bdb5; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #93c54b; }

/* ══════════════════════════════════════════════════════════════
   18. Utility: Stat-Tiles (Admin-Dashboard)
   ══════════════════════════════════════════════════════════════ */
.stat-tile {
    background-color: #fff;
    border: 1px solid #e4dfd7;
    border-radius: 0.3rem;
}

/* ══════════════════════════════════════════════════════════════
   19. bg-light Override
   ══════════════════════════════════════════════════════════════ */
.bg-light {
    background-color: #f5f2ec !important;
}

.bg-body-tertiary {
    background-color: #f0ece4 !important;
}

/* ══════════════════════════════════════════════════════════════
   20. Fieldset / Legend
   ══════════════════════════════════════════════════════════════ */
fieldset legend {
    color: #3e3f3a;
}

fieldset.border-bottom legend,
legend.border-bottom {
    border-bottom: 2px solid #93c54b !important;
    padding-bottom: 0.35rem;
}
