/* ==============================================
   TM24 NOVAChild – Cards & Boxes
   Modul: modules/shared/cards/cards.css
   Scope: .card, .box-normal, .checkout-step,
          .account-card, .cart-items, .sidebox
   Quelle: custom.css (Legacy)
   UTF-8 ohne BOM
   ============================================== */

/* ---- Globale Card ---- */
.card {
    border: 1px solid var(--brd-l) !important;
    border-radius: var(--r) !important;
    box-shadow: var(--s1) !important;
    overflow: hidden !important;
    background: var(--card) !important;
}

.card-header {
    background: var(--card) !important;
    border-bottom: 1px solid var(--brd) !important;
    font-family: var(--f) !important;
    font-weight: 700 !important;
}

/* ---- Box-Normal (Sidebar) ---- */
.box-normal {
    background: var(--card) !important;
    border: 1px solid var(--brd-l) !important;
    border-radius: var(--r) !important;
    box-shadow: var(--s1) !important;
    margin-bottom: 20px !important;
    overflow: hidden !important;
}

.box-normal .box-title {
    font-family: var(--f) !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    padding: 14px 16px !important;
    border-bottom: 1px solid var(--brd) !important;
    margin: 0 !important;
    color: var(--txt) !important;
    text-transform: uppercase !important;
    letter-spacing: .3px !important;
}

/* ---- Sidebar List-Group ---- */
.sidebox .list-group-item {
    border-color: var(--brd) !important;
    font-size: 14px !important;
    padding: 10px 16px !important;
    transition: background var(--speed) !important;
}

.sidebox .list-group-item:hover {
    background: var(--pl) !important;
    color: var(--p) !important;
}

.sidebox .list-group-item.active {
    background: var(--p) !important;
    color: #fff !important;
    border-color: var(--p) !important;
}

/* ---- Cart ---- */
.cart-items {
    background: var(--card) !important;
    border-radius: var(--r) !important;
    box-shadow: var(--s1) !important;
    border: 1px solid var(--brd-l) !important;
}

.cart-dropdown .card {
    border-radius: var(--r) !important;
    box-shadow: var(--s3) !important;
}

/* ---- Checkout ---- */
.checkout-step {
    background: var(--card) !important;
    border-radius: var(--r) !important;
    box-shadow: var(--s1) !important;
    padding: 24px !important;
    margin-bottom: 20px !important;
    border: 1px solid var(--brd-l) !important;
}

.checkout-step-title {
    font-weight: 700 !important;
    font-size: 18px !important;
    color: var(--txt) !important;
}

.checkout-register-or-login .card {
    border-radius: var(--r) !important;
    box-shadow: var(--s1) !important;
}

/* ---- Account ---- */
.account-card {
    background: var(--card) !important;
    border-radius: var(--r) !important;
    box-shadow: var(--s1) !important;
    padding: 32px !important;
    border: 1px solid var(--brd-l) !important;
}

.account-section .card {
    border-radius: var(--r) !important;
    box-shadow: var(--s1) !important;
    border: 1px solid var(--brd-l) !important;
}

.order-detail-item {
    border-bottom: 1px solid var(--brd) !important;
    padding: 16px 0 !important;
}

/* ---- Filter ---- */
.filter-item .badge {
    border-radius: var(--rp) !important;
    font-weight: 600 !important;
}

.active-filter .badge {
    background: var(--p) !important;
    color: #fff !important;
}

.price-slider .noUi-connect {
    background: var(--p) !important;
}

.price-slider .noUi-handle {
    border-color: var(--p) !important;
    box-shadow: var(--s1) !important;
}

.layout-options {
    font-family: var(--f) !important;
}

.layout-options .btn.active {
    color: var(--p) !important;
    border-color: var(--p) !important;
}
