/* =============================
   Basisfarben & Variablen
============================= */

.table:not(.table-borderless) .thead .tr,
.table:not(.table-borderless) thead th {
  border-bottom: 1px solid #dee2e6;
  border-top: none;
}


:root {
    --danger: #FF7343 !important;
    --gray: #A1A7B4 !important;
    --gray-dark: #A1A7B4 !important;
    --primary: #262523 !important;
    --secondary: #D4EEF9 !important;
    --success: #6BD377 !important;
    --info: #D4EEF9 !important;
    --warning: #97D4F0 !important;
}

/* =============================
   Grundstruktur & Layout
============================= */

body {
    background-color: #F1F3F5 !important;
}

header,
footer {
    background-color: #405753 !important;
}

.s-header {
    min-height: 100px !important;
}

.s-panel-header {
    background-color: #DEEED4 !important;
    border-color: #DEEED4 !important;
    border-radius: 8px !important;
    color: #262523 !important;
}

@media (min-width: 992px) {
  .s-header-logo.logo-wide img {
    max-height: 120px !important;
    height: auto !important;
    width: auto !important;
  }
}

select {
    background-color: #E7EBEF !important;
}

.card {
    background-color: #FFFFFF !important;
    border: 0px solid #141419 !important;
    border-radius: 8px !important;
    box-shadow: 0 0px 0px 0 !important;
}

.page-title {
    padding: 2rem 0;
}

/* Eckenabrundung für Produktbilder im Hintergrund-Div */
.embed-responsive-item.image {
    border-radius: 8px !important;
    overflow: hidden;
}

/* SVG-Hintergrundbild für den Body */
body {
    background-image: url('https://schneebergerhof-agrarvision.de/wp-content/uploads/2025/04/3er.svg') !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-color: #F1F3F5 !important; /* optional, falls SVG transparent ist */
    background-attachment: fixed !important;
}

/* =============================
   Schrift & Farben
============================= */

a {
    color: #141419 !important;
}

h1 {
    font-size: 2rem !important;
}

header a {
    color: #ffffff !important;
}

body {
  font-size: 16px !important;
  line-height: 1.8 !important; /* 28.8px bei 16px Basisgröße */
  letter-spacing: 0px !important;
}

.dropdown-item,
.modal-title,
.btn-cancel,
.btn-outline-primary,
.btn-outline-secondary,
.set-shipping-presets,
.price-tag,
h5 {
    color: #262523 !important;
}

/* Hover-Zustand: Icon + Text */
.navbar-nav .nav-link:hover i,
.navbar-nav .nav-link:hover span {
  color: #A5D28A !important;
}

/* Aktiver Link (wenn .active-Klasse gesetzt ist) */
.navbar-nav .nav-link.active i,
.navbar-nav .nav-link.active span {
  color: #A5D28A !important;
}

.navbar-nav .nav-link {
  transition: background-color 0.2s ease, color 0.2s ease;
}

.navbar-nav .nav-link i {
  margin-right: 0.5rem !important;
  font-size: 0.95em; /* Optional: etwas feiner */
}

/* =============================
   Logo
============================= */

.logo-small img,
.logo-wide img {
    max-height: 32px !important;
    max-width: 140px;
}

/* =============================
   Formular & Label
============================= */

.form-row {
    padding-bottom: 0.5rem;
}

.label {
    margin-bottom: 1rem;
}

/* =============================
   Buttons
============================= */

.btn {
  font-family: 'Roboto Serif', serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* Abstand nur, wenn nach dem Icon noch etwas kommt */
button i:not(:only-child),
.btn i:not(:only-child),
a.btn i:not(:only-child) {
  margin-right: 0.5rem !important;
}

.btn-primary {
    background-color: #557777 !important;
    color: #ffffff !important;
    border-color: #557777 !important;
    border-radius: 4px !important;
}

.btn-primary:hover {
    background-color: #405753 !important;
    border-color: #405753 !important;
    border-radius: 4px !important;
}

.btn-light {
    background-color: #53B01D !important;
    border-color: #53B01D !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}

.btn-outline-danger {
    color: #ffffff !important;
    border-color: #A1A7B4 !important;
    background-color: #A1A7B4 !important;
    border-radius: 4px !important;
}

.btn-outline-danger:hover {
    color: #ffffff !important;
    border-color: #898E99 !important;
    background-color: #898E99 !important;
    border-radius: 4px !important;
}

.btn-outline-secondary {
    color: #557777 !important;
    border-color: #557777 !important;
    border-radius: 4px !important;
}

.btn-outline-secondary:hover {
    color: #ffffff !important;
    border-color: #405753 !important;
    background-color: #405753 !important;
    border-radius: 4px !important;
}

.btn-outline-primary {
    color: #ffffff !important;
    border-color: #53B01D !important;
    background-color: #53B01D !important;
    border-radius: 4px !important;
}

.btn-outline-primary:hover {
    color: #ffffff !important;
    border-color: #67C82F !important;
    background-color: #67C82F !important;
    border-radius: 4px !important;
}

.btn-warning {
    background-color: #FF8000 !important;
    border-color: #FF8000 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}

.btn-warning:hover  {
    background-color: #FF9328 !important;
    border-color: #FF9328 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}

.btn .badge {
    margin-left: 8px;
}

.btn-danger {
    background-color: #0AADF6 !important;
    border-color: #0AADF6 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}

.btn-danger:hover {
    background-color: #32BFFF !important;
    border-color: #32BFFF !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}


/* =============================
   Produktkarten
============================= */


.card {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
}

.card-title {
    padding: 1.25rem 0;
}

.form-row .align-items-start .justify-content-between {
    justify-content: left !important;
}

.price-tag {
    display: block !important;
    padding-bottom: 0.5rem;
}

.price-tag .decimals {
    font-size: 100% !important;
}

.s-unit-price {
    display: none !important;
}

/* =============================
   Warenkorb & Versand-Presets
============================= */

.card-header {
        min-height: 62px !important;
    background-color: #DEEED4 !important;
    border-color: #DEEED4 !important;
    border-top-left-radius: 8px !important;
    border-top-right-radius: 8px !important;
    color: #262523 !important;
}

.card-footer {
    background-color: #F7F8F9 !important;
    border-color: #F7F8F9 !important;
    border-bottom-left-radius: 8px !important;
    border-bottom-right-radius: 8px !important;
    color: #262523 !important;
}


/* Button "Kasse" in Orange */

a.btn[href="/shopping-cart/checkout-single"] {
  background-color: #FF8000 !important;
  border-color: #FF8000 !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

a.btn[href="/shopping-cart/checkout-single"]:hover {
  background-color: #FF9328 !important;
  border-color: #FF9328 !important;
  color: #ffffff !important;
}

/* Button "Nächster Schritt" in Orange */

button.btn.btn-primary[type="submit"] {
  background-color: #FF8000 !important;
  border-color: #FF8000 !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

button.btn.btn-primary[type="submit"]:hover {
  background-color: #FF9328 !important;
  border-color: #FF9328 !important;
  color: #ffffff !important;
}

/* Button "Schritt zurück" nicht in Orange */

a.btn.shopping-cart-back {
  background-color: transparent !important;
  border-color: #405753 !important;
  color: #405753 !important;
  border-radius: 4px !important;
  font-weight: 500;
  transition: all 0.2s ease;
}

a.btn.shopping-cart-back:hover {
  background-color: #405753 !important;
  border-color: #405753 !important;
  color: #ffffff !important;
}

.d-none .s-shipping-presets,
.d-block .s-shipping-presets {
    background-color: #DEEED4 !important;
    border-color: #DEEED4 !important;
    border-radius: 8px !important;
    color: #262523 !important;
}

/* =============================
   Checkout
============================= */

.form-row .d-none .d-md-flex .s-items-header {
    padding-bottom: 0.5rem !important;
}

.checkout-process > .step .step-mark.step-active:after {
    background: #405753;
}


/* Grüne Filterleiste z. B. in Dauerbestellungen auf weiß setzen */
.ilx-filter-container .s-panel-header {
  background-color: #ffffff !important;
}

/* =============================
   Kalender (Konto)
============================= */

.calendar {
    border-radius: 8px !important;
}

.calendar .day .date {
    font-size: 100% !important;
    letter-spacing: 0 !important;
}

.calendar .day.holiday,
.calendar .day.company-vacation {
    background-color: #97D4F0 !important;
    color: #262523;
    border-radius: 4px !important;
}

.calendar .header {
    background-color: #D4EEF9 !important;
    font-size: 110% !important;
   
}

.table .thead .tr,
.table .s-panel-body,
.table .s-panel-body .tr,
.table .s-panel-body .td {
  background-color: #ffffff !important;
}


/* =============================
   Footer & Icons
============================= */

footer a {
    color: #ffffff !important;
}

.fa-phone {
    color: #ffffff !important;
    font-size: 1.25rem !important;        /* kleiner als Standard */
    font-weight: 100 !important;          /* dünner – 100 bis 400 wirkt feiner */
    line-height: 1 !important;            /* kompakter */
}



.fa-envelope {
    color: #ffffff !important;
    font-size: 1.5rem !important;        /* kleiner als Standard */
    font-weight: 300 !important;          /* dünner – 100 bis 400 wirkt feiner */
    padding: 0 12px !important;           /* engerer Abstand */
    line-height: 1 !important;            /* kompakter */
}

.fa {
    font-weight: 400 !important;
}

.fa-edit {
  color: #ffffff !important;
}

/* =============================
   Alerts & Feedback
============================= */

.alert {
    border-radius: 0px !important;
}

.alert-warning {
    color: #262523 !important;
    background-color: #D4EEF9 !important;
    border-color: #D4EEF9 !important;
    border-radius: 8px !important;
}

.alert-info {
    color: #262523 !important;
    background-color: #D4EEF9 !important;
    border-color: #D4EEF9 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

.alert-danger {
    color: #262523 !important;
    background-color: #F8E3CD !important;
    border-color: #F8E3CD !important;
    border-radius: 8px !important;
}

.badge-danger {
    color: #ffffff !important;
    background-color: #FF8000 !important;
}

.invalid-feedback {
    color: #FF7343 !important;
}

.form-check-input.is-invalid ~ .form-check-label {
    color: #262523 !important;
}

/* =============================
   Datumsauswahl / Versandtage
============================= */

.shipping-weekday {
    background-color: #D9CBEA !important;
}

.daterangepicker td.shipping-day {
    background-color: #6BD377 !important;
}

/* =============================
   Filterleiste ausblenden
============================= */

.navbar.navbar-expand-sm.p-0 {
    display: none !important;
}

/* =============================
   Optionenauswahl beschränken
============================= */

.custom-select.form-control option:nth-child(n+3) {
    display: none;
}