/* ------------------------------------------------------------------
 * Marken-CSS Klienten-Portal — Olivtöne (bibu-berger.at) zur Wiedererkennung.
 * Wird nach tabler.min.css eingebunden (überschreibt gezielt).
 * ------------------------------------------------------------------ */

:root {
    --olive:       #536851;   /* Dunkel-Oliv (Primär) */
    --olive-dark:  #334433;   /* noch dunkler (Hover/Active) */
    --olive-light: #9fad94;   /* Hell-Oliv (Akzent, --accent-color) */
}

body { background-color: #ffffff; }

.brand-title,
.brand-subtitle { color: var(--olive); }

/* Modul-Card-Header (Dashboard): dunkles Oliv + weiße Schrift */
.card-header-olive { background-color: var(--olive); }
.card-header-olive, .card-header-olive .card-title { color: #ffffff; }

/* Initialen-Badge (Navbar): warmer Sand/Khaki-Ton, passt zu Oliv (nicht blau).
   NICHT .avatar-brand nennen — das ist eine Tabler-Klasse (Mini-Overlay)! */
.avatar-sand { background-color: #d7d1bd; color: #4b4630; }

/* Tageslosung (TL-Modul): konfigurierbare Beträge-Farben.
   Hier zentral anpassbar — positive Beträge grün, negative rot. */
:root {
    --tl-pos: #0a7f1d;   /* positiver Betrag (> 0) */
    --tl-neg: #d63939;   /* negativer Betrag (< 0) */
}
.tl-pos { color: var(--tl-pos) !important; }
.tl-neg { color: var(--tl-neg) !important; }

/* Tageslosung: Sonntage in der Monatstabelle leicht hervorheben (Oliv-Tint). */
.table > tbody > tr.tl-sunday > td { background-color: rgba(159, 173, 148, .16); }

/* Tageslosung: geschlossene Tage (Sperrtag) dezent grau hinterlegen. */
.table > tbody > tr.tl-closed > td { background-color: rgba(0, 0, 0, .05); }

/* Tageslosung: lesbarer Badge (dunkelgrau, weiße Schrift) — Tabler bg-secondary
   hat hier zu wenig Kontrast. */
.badge.tl-badge { background-color: #5b6472; color: #fff; }

/* Report/Druck: nur Titel + Tabelle, Bedienelemente ausblenden. */
@media print {
    .navbar, .footer, footer, .btn, .btn-group, .modal, .modal-backdrop { display: none !important; }
    .card { border: 0 !important; box-shadow: none !important; }
    .page-body { margin: 0 !important; }
    .table { font-size: 11px; }
    .tl-pos { color: #0a7f1d !important; }
    .tl-neg { color: #d63939 !important; }
    a[href]::after { content: none !important; }
}

/* Tageslosung-Dashboard: dependency-freies Balkendiagramm (12 Monate, 2 Balken). */
.tl-chart { display: flex; align-items: flex-end; gap: .75rem; height: 220px; }
.tl-chart-col { position: relative; flex: 1 1 0; display: flex; flex-direction: column; align-items: center; height: 100%; }
.tl-col-tip {
    position: absolute; bottom: 100%; left: 50%; transform: translateX(-50%);
    margin-bottom: 6px; padding: .4rem .6rem; background: #24302a; color: #fff;
    border-radius: .3rem; font-size: .78rem; line-height: 1.35; white-space: nowrap;
    text-align: left; display: none; z-index: 20; box-shadow: 0 3px 10px rgba(0, 0, 0, .25);
}
.tl-chart-col:hover .tl-col-tip { display: block; }
.tl-chart-col:hover .tl-bar { filter: brightness(1.12); }
.tl-chart-bars { display: flex; align-items: flex-end; justify-content: center; gap: 3px; width: 100%; flex: 1 1 auto; min-height: 0; }
.tl-chart-bars .tl-bar { width: 42%; max-width: 18px; border-radius: 3px 3px 0 0; transition: height .2s; }
.tl-legend { display: inline-block; width: .75rem; height: .75rem; border-radius: 2px; margin-right: .35rem; vertical-align: middle; }

/* Fokus-Felder in Modalen: blauer Rahmen/Ring (wie bibu-one Transaktionszuweisung). */
.modal .form-control:focus,
.modal .form-select:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}

.btn-primary {
    background-color: var(--olive-light);
    border-color: var(--olive-light);
    color: #26331f;                                  /* dunkle Schrift auf hellem Oliv (Kontrast) */
    --tblr-btn-bg: var(--olive-light);
    --tblr-btn-border-color: var(--olive-light);
    --tblr-btn-color: #26331f;
    --tblr-btn-hover-bg: var(--olive);
    --tblr-btn-hover-border-color: var(--olive);
    --tblr-btn-hover-color: #ffffff;
    --tblr-btn-active-bg: var(--olive);
    --tblr-btn-active-border-color: var(--olive);
    --tblr-btn-active-color: #ffffff;
}
