html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* Dropdown auf Hover öffnen (nur für Bildschirme ab 992px Breite) */
@media all and (min-width: 992px) {
    .dropdown-hover:hover .dropdown-menu {
        display: block;
        margin-top: 0;
    }
}

/* Weicher Schatten und etwas abgerundete Ecken für das Menü */
.dropdown-menu.shadow {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    border-radius: 0.5rem;
}

:root {
    /* CeFiSystems / ZVT13 Corporate Colors */
    --zvt-blue: #092241;
    --zvt-orange: #f25922;
    --zvt-lightblue: #006cb5;
    /* Globale Bootstrap Overrides */
    --bs-primary: var(--zvt-blue);
    --bs-primary-rgb: 9, 34, 65;
    --bs-secondary: var(--zvt-orange);
    --bs-secondary-rgb: 242, 89, 34;
    --bs-info: var(--zvt-lightblue);
    --bs-info-rgb: 0, 108, 181;
}

/* =========================================
   ZVT13 Spezifische Komponenten-Anpassungen
   ========================================= */

/* Navbar im ZVT-Blau mit orangem Akzent-Strich */
.navbar.bg-dark {
    background-color: var(--zvt-blue) !important;
    border-bottom: 4px solid var(--zvt-orange);
}

/* Primäre Buttons (Blau) */
.btn-primary {
    background-color: var(--zvt-blue);
    border-color: var(--zvt-blue);
    color: #fff;
}

    .btn-primary:hover, .btn-primary:focus, .btn-primary:active {
        background-color: #0d315e;
        border-color: #0d315e;
        color: #fff;
    }

.btn-outline-primary {
    color: var(--zvt-blue);
    border-color: var(--zvt-blue);
}

    .btn-outline-primary:hover {
        background-color: var(--zvt-blue);
        color: #fff;
    }

/* Sekundäre Buttons (Orange für Call-to-Action) */
.btn-secondary {
    background-color: var(--zvt-orange);
    border-color: var(--zvt-orange);
    color: #fff;
}

    .btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
        background-color: #d94e1d;
        border-color: #d94e1d;
        color: #fff;
    }

/* Hintergrundfarben für Badges & Cards */
.bg-primary {
    background-color: var(--zvt-blue) !important;
}

.bg-secondary {
    background-color: var(--zvt-orange) !important;
}

.text-primary {
    color: var(--zvt-blue) !important;
}

/* Allgemeine Text-Links */
a {
    color: var(--zvt-lightblue);
    text-decoration: none;
}

    a:hover {
        color: var(--zvt-blue);
        text-decoration: underline;
    }

/* Die Rahmen der Info-Karten auf dem Dashboard */
.card {
    border-color: rgba(9, 34, 65, 0.1);
}

.zvt-watermark {
    position: fixed;
    inset: 0;
    z-index: 0; /* hinter dem Inhalt */
    pointer-events: none; /* blockiert keine Klicks */
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='420'%20height='260'%3E%3Ctext%20x='210'%20y='130'%20font-family='Arial%2C%20Helvetica%2C%20sans-serif'%20font-size='22'%20font-weight='700'%20fill='%23dc3545'%20fill-opacity='0.07'%20text-anchor='middle'%20transform='rotate%28-30%20210%20130%29'%3ENICHT%20PRODUKTIVE%20UMGEBUNG%3C/text%3E%3C/svg%3E");
    background-repeat: repeat;
}

.zvt-watermark::before {
    content: "NICHT PRODUKTIVE UMGEBUNG";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-30deg);
    white-space: nowrap;
    font-size: 3rem;
    font-weight: 800;
    letter-spacing: 6px;
    color: rgba(220, 53, 69, 0.08);
    text-transform: uppercase;
}