/* ============================================================
   NAYDIM Rental Product Widget — Frontend CSS v1.2.0
   ============================================================ */

/* ── Layout ─────────────────────────────────────────────────── */
.naydim-rental-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "left right";
    gap: 40px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: #1C1C2E;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 0;
    align-items: flex-start;
}

.naydim-col-left  { grid-area: left; }
.naydim-col-right { grid-area: right; }

/* ── Image Wrap ─────────────────────────────────────────────── */
.naydim-image-wrap {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    background: #F8F8F8;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.naydim-promo-badge {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 10;
    background: #1C1C2E;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 4px;
}

.naydim-image-slider {
    width: 100%;
    height: 100%;
    position: relative;
}

.naydim-slide {
    display: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0; left: 0;
    align-items: center;
    justify-content: center;
}
.naydim-slide.active { display: flex; }

.naydim-slide img {
    max-width: 85%;
    max-height: 85%;
    object-fit: contain;
    user-select: none;
}

.naydim-no-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.naydim-dots {
    position: absolute;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
}

.naydim-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
    transition: background .2s;
}
.naydim-dot.active { background: #1C1C2E; }

/* ── Left-column sections (unter dem Bild) ──────────────────── */
.naydim-left-section {
    margin-top: 20px;
}

/* ── Right-column sections ──────────────────────────────────── */
.naydim-section {
    margin-bottom: 20px;
}

/* ── Sub-titles ─────────────────────────────────────────────── */
.naydim-sub-title {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 10px 0;
    color: #1C1C2E;
}

/* ── Produkttitel ───────────────────────────────────────────── */
.naydim-product-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 18px 0;
    color: #1C1C2E;
}

/* ── Section-Label mit Tooltip ──────────────────────────────── */
.naydim-section-label {
    font-size: 13px;
    font-weight: 600;
    color: #1C1C2E;
    margin-bottom: 9px;
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.naydim-color-selected-name { font-weight: 400; color: #666; }

.naydim-has-tooltip { position: relative; }

.naydim-tooltip-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    color: #888;
    display: flex;
    align-items: center;
}
.naydim-tooltip-btn:hover { color: #1C1C2E; }

.naydim-tooltip-content {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    z-index: 200;
    background: #1C1C2E;
    color: #fff;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.55;
    padding: 12px 16px;
    border-radius: 10px;
    min-width: 240px;
    max-width: 320px;
    box-shadow: 0 8px 24px rgba(0,0,0,.2);
}
.naydim-tooltip-content p { margin: 0; }
.naydim-tooltip-content.active { display: block; }

/* ── Farb-Swatches ──────────────────────────────────────────── */
.naydim-color-swatches {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.naydim-color-swatch {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    border: 2px solid #e0e0e0;
    cursor: pointer;
    transition: border-color .2s, transform .15s;
    padding: 0;
    outline: 3px solid transparent;
    outline-offset: 2px;
    overflow: hidden;
    position: relative;
}
.naydim-color-swatch:hover { transform: scale(1.08); border-color: #aaa; }
.naydim-color-swatch.active {
    border-color: #1C1C2E;
    outline: 3px solid #1C1C2E;
    outline-offset: 2px;
}

.naydim-swatch-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ── Speicherplatz-Variationen ──────────────────────────────── */
.naydim-storage-options {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.naydim-storage-btn {
    padding: 7px 14px;
    border: 2px solid #E0E0E0;
    border-radius: 8px;
    background: #fff;
    font-size: 13px;
    font-weight: 600;
    color: #1C1C2E;
    cursor: pointer;
    transition: border-color .2s, background .2s;
    font-family: inherit;
}
.naydim-storage-btn:hover  { border-color: #aaa; }
.naydim-storage-btn.active { border-color: #1C1C2E; background: #F5F5F5; }

/* ── Mietdauer ──────────────────────────────────────────────── */
.naydim-duration-list {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.naydim-duration-option {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 11px 13px;
    border: 2px solid #E0E0E0;
    border-radius: 10px;
    cursor: pointer;
    transition: border-color .2s, background .2s;
}
.naydim-duration-option:hover  { border-color: #aaa; }
.naydim-duration-option.active { border-color: #1C1C2E; background: #FAFAFA; }

.naydim-dur-label { font-size: 13px; font-weight: 600; min-width: 85px; }

.naydim-dur-prices {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1;
    justify-content: flex-end;
}

.naydim-dur-original { font-size: 12px; color: #aaa; text-decoration: line-through; }
.naydim-dur-current  { font-size: 13px; font-weight: 700; color: #E4003B; }

.naydim-discount-badge {
    background: #E4003B;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 20px;
    white-space: nowrap;
}

/* ── Vorteile — schlank wie Screenshot ──────────────────────── */
.naydim-features-box {
    background: #F7F7F7;
    border-radius: 10px;
    padding: 12px 14px;
}

.naydim-feature-list {
    list-style: none;
    margin: 0 0 6px 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.naydim-feature-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 12.5px;
    color: #333;
    line-height: 1.35;
}

.naydim-feature-check { color: #E4003B; flex-shrink: 0; width: 14px; height: 14px; }

.naydim-feature-link {
    display: block;
    font-size: 12px;
    color: #1C1C2E;
    text-decoration: underline;
    margin-top: 4px;
}
.naydim-feature-link:hover { color: #E4003B; }

/* ── Gerätezustand ──────────────────────────────────────────── */
.naydim-condition-list { display: flex; flex-direction: column; gap: 7px; }

.naydim-condition-option {
    display: flex;
    align-items: center;
    padding: 11px 13px;
    border: 2px solid #E0E0E0;
    border-radius: 10px;
    cursor: pointer;
    transition: border-color .2s;
}
.naydim-condition-option:hover  { border-color: #aaa; }
.naydim-condition-option.active { border-color: #1C1C2E; }

.naydim-cond-name      { font-size: 13px; font-weight: 600; flex: 1; }
.naydim-cond-surcharge { font-size: 12px; color: #666; margin-right: 8px; }
.naydim-cond-check     { display: flex; align-items: center; }

/* ── Kauf-Box ───────────────────────────────────────────────── */
.naydim-buy-section {
    background: #fff;
    border: 2px solid #E0E0E0;
    border-radius: 14px;
    padding: 16px;
}

.naydim-price-wrap { margin-bottom: 12px; }

.naydim-price-current { font-size: 30px; font-weight: 800; color: #E4003B; }
.naydim-price-unit    { font-size: 14px; color: #666; margin-left: 3px; }

.naydim-price-original-wrap { font-size: 12px; color: #999; margin-top: 3px; }
.naydim-price-original { text-decoration: line-through; }
.naydim-orig-info { font-size: 11px; cursor: help; }

.naydim-btn-cart {
    display: block;
    width: 100%;
    padding: 14px;
    background: #E4003B;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    text-align: center;
    transition: opacity .2s, transform .1s;
    margin-bottom: 12px;
    font-family: inherit;
}
.naydim-btn-cart:hover  { opacity: .88; }
.naydim-btn-cart:active { transform: scale(.98); }
.naydim-btn-cart.loading { opacity: .6; pointer-events: none; }

.naydim-cart-notice {
    display: none;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 12px;
    overflow: hidden;
}

/* Fehler — einfache Box */
.naydim-cart-notice.error {
    padding: 10px 14px;
    background: #fde8ec;
    color: #c0143c;
    border: 1px solid #f5a0b0;
}

/* Erfolg — mit klickbarem Pfeil */
.naydim-cart-notice.success {
    padding: 0;
    background: #e6f9ee;
    border: 1.5px solid #52c97a;
    cursor: pointer;
}

.naydim-cart-notice-inner {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    text-decoration: none;
    color: #1a7a3c;
    transition: background .15s;
}
.naydim-cart-notice.success:hover .naydim-cart-notice-inner {
    background: #d4f5e2;
}

.naydim-cart-notice-icon {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    background: #1a7a3c;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.naydim-cart-notice-icon svg { display: block; }

.naydim-cart-notice-text {
    flex: 1;
    line-height: 1.35;
}
.naydim-cart-notice-text strong {
    display: block;
    font-size: 13.5px;
    color: #1a7a3c;
}
.naydim-cart-notice-text span {
    font-size: 12px;
    color: #2d9e56;
    opacity: .85;
}

.naydim-cart-notice-arrow {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    background: #1a7a3c;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .2s, background .15s;
}
.naydim-cart-notice.success:hover .naydim-cart-notice-arrow {
    background: #158434;
    transform: translateX(2px);
}
.naydim-cart-notice-arrow svg { display: block; }

/* Fehler hat kein inner-Layout */
.naydim-cart-notice.error .naydim-cart-notice-inner { display: none; }

.naydim-payment-icons {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.naydim-payment-icons img { height: 20px; width: auto; object-fit: contain; }

/* ══════════════════════════════════════════════════════════════
   LINKE SPALTE — Services, Specs, Lieferumfang, FAQ, Datenschutz
   ══════════════════════════════════════════════════════════════ */

/* ── Service-Leistungen — Kachel-Design wie Bild 3 ─────────── */
.naydim-services-section {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.naydim-service-item {
    background: #F2F2F2;
    border-radius: 12px;
    overflow: hidden;
    border: 1.5px solid transparent;
    transition: border-color .15s;
}
.naydim-service-item.open {
    border-color: #E0E0E0;
}

.naydim-service-row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    width: 100%;
    text-align: left;
    background: transparent;
    border: none;
    cursor: pointer;
    color: #1C1C2E;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    transition: background .12s;
    line-height: 1.3;
    border-radius: 12px;
}
.naydim-service-row:hover { background: rgba(0,0,0,.04); }

.naydim-srv-icon {
    color: #1C1C2E;
    font-size: 18px;
    width: 22px;
    text-align: center;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.naydim-srv-icon i, .naydim-srv-icon svg { font-size: 18px; }

.naydim-srv-title { flex: 1; font-size: 14px; font-weight: 400; }

.naydim-srv-badge {
    background: #EDFAF2;
    color: #1a7a3c;
    border: 1px solid #C3EDD4;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .5px;
    padding: 3px 9px;
    border-radius: 20px;
    text-transform: uppercase;
    margin-right: 4px;
}

.naydim-srv-arrow {
    color: #AAAAAA;
    flex-shrink: 0;
    width: 16px;
    height: 16px;
}

/* Aufklappbarer Inhalt */
.naydim-service-content {
    padding: 0 16px 14px 52px;
    font-size: 13.5px;
    color: #555;
    line-height: 1.6;
    background: transparent;
}
.naydim-service-content p { margin: 4px 0 0 0; }

/* ── Produktdetails ─────────────────────────────────────────── */
.naydim-specs-section {
    border: 1px solid #E0E0E0;
    border-radius: 14px;
    padding: 16px 18px;
}

.naydim-specs-table { width: 100%; border-collapse: collapse; }

.naydim-specs-table tr + tr td,
.naydim-specs-table tr + tr th { border-top: 1px solid #F0F0F0; }

.naydim-specs-table th {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .7px;
    text-transform: uppercase;
    color: #999;
    padding: 9px 0;
    text-align: left;
    white-space: nowrap;
    width: 120px;
    vertical-align: top;
}

.naydim-specs-table td {
    font-size: 13.5px;
    color: #333;
    padding: 9px 0 9px 12px;
    vertical-align: top;
}

.naydim-spec-hidden { display: none; }

.naydim-specs-toggle {
    background: none;
    border: none;
    color: #1C1C2E;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    padding: 7px 0 0 0;
    text-decoration: underline;
    font-family: inherit;
}
.naydim-specs-toggle:hover { color: #E4003B; }

/* ── Lieferumfang ───────────────────────────────────────────── */
.naydim-delivery-section {
    border: 1px solid #E0E0E0;
    border-radius: 14px;
    padding: 16px 18px;
}

.naydim-delivery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 10px;
}

.naydim-del-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 13.5px;
    color: #333;
}

.naydim-del-icon { font-size: 14px; color: #666; }

/* ── FAQ — Kachel-Design wie Bild 3 ────────────────────────── */
.naydim-faq-section {
    background: transparent;
    padding: 0;
    border: none;
}

.naydim-faq-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.naydim-faq-item {
    background: #F2F2F2;
    border-radius: 12px;
    overflow: hidden;
    border: 1.5px solid transparent;
    transition: border-color .15s;
}
.naydim-faq-item.faq-open {
    border-color: #E0E0E0;
    background: #EFEFEF;
}

.naydim-faq-question {
    width: 100%;
    background: transparent;
    border: none;
    text-align: left;
    cursor: pointer;
    font-family: inherit;
    font-size: 13.5px;
    font-weight: 500;
    color: #1C1C2E;
    padding: 14px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    transition: opacity .15s;
    line-height: 1.35;
    border-radius: 12px;
}
.naydim-faq-question:hover { opacity: .8; }

.naydim-faq-icon {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    color: #AAAAAA;
    transition: transform .25s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}
.naydim-faq-icon svg { width: 18px; height: 18px; }

.naydim-faq-question[aria-expanded="true"] .naydim-faq-icon {
    transform: rotate(45deg);
    color: #666;
}

.naydim-faq-answer {
    font-size: 13.5px;
    color: #555;
    line-height: 1.6;
    padding: 0 16px 14px 16px;
}
.naydim-faq-answer p { margin: 0; }

/* ── Datenschutz ────────────────────────────────────────────── */
.naydim-privacy-note {
    background: #F5F5F5;
    border-radius: 10px;
    padding: 11px 14px;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    font-size: 12.5px;
    color: #666;
    line-height: 1.5;
}

.naydim-privacy-note svg { flex-shrink: 0; margin-top: 1px; color: #999; }
.naydim-privacy-note a   { color: #1C1C2E; text-decoration: underline; }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE — Tablet (≤900px) und Mobile (≤680px)
   Reihenfolge: Bild → Konfigurator (Titel…Warenkorb) → Rest
   ══════════════════════════════════════════════════════════════ */

@media (max-width: 900px) {
    .naydim-rental-wrap {
        grid-template-columns: 1fr;
        grid-template-areas:
            "left"
            "right";
        gap: 0;
    }

    /* Bild bleibt oben (left), dann Konfigurator (right) darunter */
    .naydim-col-left  {
        grid-area: left;
        /* Nur das Bild soll zuerst kommen, danach wird right eingebettet */
    }
    .naydim-col-right { grid-area: right; }

    /* Das Image-Wrap bekommt festen max-width auf Tablet */
    .naydim-image-wrap { max-height: 380px; }

    /* Konfigurator-Abschnitte etwas kompakter */
    .naydim-section { margin-bottom: 16px; }

    /* Links-Sektionen folgen nach der rechten Spalte dank grid order */
    .naydim-col-right { order: 2; }
    .naydim-col-left  { order: 1; }

    /* Linke Sub-Sektionen (Services, FAQ…) unter die rechte Spalte */
    .naydim-left-below {
        order: 3;
        grid-column: 1;
    }
}

@media (max-width: 680px) {
    .naydim-product-title { font-size: 19px; }
    .naydim-price-current { font-size: 26px; }
    .naydim-dur-label { min-width: 70px; }
    .naydim-image-wrap { max-height: 300px; }
    .naydim-delivery-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ══════════════════════════════════════════════════════════════
   MOBILE / TABLET LAYOUT OVERRIDE
   Reihenfolge: Bild → Konfigurator (rechte Spalte) → Services/FAQ
   ══════════════════════════════════════════════════════════════ */

@media (max-width: 900px) {
    .naydim-rental-wrap {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    /* 1. Bild oben */
    .naydim-col-left { order: 1; }

    /* 2. Konfigurator direkt nach dem Bild */
    .naydim-col-right {
        order: 2;
        margin-top: 20px;
    }

    /* 3. Unter-Bild-Bereich (Services, FAQ etc.) ganz unten */
    .naydim-below-image {
        order: 3;  /* Kein Effekt hier, da .naydim-below-image child von col-left ist */
    }

    /* Trick: .naydim-below-image via negative margin/display rausnehmen
       und nach col-right einblenden — wir lösen es via CSS order auf dem col-left */
    .naydim-col-left {
        display: flex;
        flex-direction: column;
    }

    .naydim-image-wrap {
        order: 1;
        max-height: 360px;
    }

    /* .naydim-below-image kommt NACH col-right — wir nutzen dafür
       einen Wrapper-Trick: auf Mobile wird below-image durch margin nach unten gedrückt */
    .naydim-below-image {
        order: 99; /* Weit unten in col-left — aber col-right ist außerhalb */
    }
}

/* ── Echter Mobile-Trick: Flex-Reorder über den Wrapper ────── */
/* Wir geben naydim-rental-wrap auf Mobile ein grid mit 3 Areas */
@media (max-width: 900px) {
    .naydim-rental-wrap {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        grid-template-areas:
            "img"
            "right"
            "below";
        gap: 0;
    }

    /* Bild */
    .naydim-col-left .naydim-image-wrap {
        grid-area: img;
    }

    /* Col-left bekommt subgrid-ähnliches Verhalten:
       Das Image-wrap und below-image werden separat positioniert */
    .naydim-col-left {
        display: contents; /* children werden direkt ins grid eingesetzt */
    }

    .naydim-image-wrap {
        grid-area: img;
        max-height: 360px;
        margin-bottom: 0;
    }

    .naydim-col-right {
        grid-area: right;
        margin-top: 20px;
    }

    .naydim-below-image {
        grid-area: below;
        margin-top: 0;
    }

    /* left-section spacing auf Mobile */
    .naydim-left-section {
        margin-top: 16px;
    }
}

@media (max-width: 680px) {
    .naydim-product-title  { font-size: 18px; }
    .naydim-price-current  { font-size: 24px; }
    .naydim-dur-label      { min-width: 68px; font-size: 12px; }
    .naydim-dur-current    { font-size: 12px; }
    .naydim-discount-badge { font-size: 10px; padding: 2px 5px; }
    .naydim-delivery-grid  { grid-template-columns: repeat(2, 1fr); }
    .naydim-image-wrap     { max-height: 280px; }
    .naydim-faq-question   { font-size: 13px; }
}

/* ── WC-Preis nativer Stil ──────────────────────────────────── */
.naydim-wc-price .woocommerce-Price-amount { font-size: 30px; font-weight: 800; color: #E4003B; }
.naydim-wc-price del { color: #999; font-size: 14px; margin-right: 6px; }
.naydim-wc-price ins { text-decoration: none; }

/* Nativer WC Button im Widget */
.naydim-buy-section .single_add_to_cart_button,
.naydim-buy-section .button.alt {
    display: block !important;
    width: 100% !important;
    padding: 14px !important;
    background: #E4003B !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border: none !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    text-align: center !important;
    margin-bottom: 12px !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
}
.naydim-buy-section .quantity { display: none !important; }

/* ── Galerie-Thumbnails ─────────────────────────────────────── */
.naydim-thumbs {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    padding: 12px 10px 6px;
    background: #F8F8F8;
}

.naydim-thumb {
    width: 56px;
    height: 56px;
    border-radius: 8px;
    border: 2px solid transparent;
    padding: 2px;
    cursor: pointer;
    background: #fff;
    overflow: hidden;
    transition: border-color .2s;
    flex-shrink: 0;
}
.naydim-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
    display: block;
}
.naydim-thumb.active {
    border-color: #1C1C2E;
}
.naydim-thumb:hover { border-color: #aaa; }

/* Image-wrap bei Galerie etwas höher */
.naydim-image-wrap:has(.naydim-thumbs) {
    aspect-ratio: unset;
}
.naydim-image-wrap .naydim-image-slider {
    aspect-ratio: 1 / 1;
    position: relative;
}

/* ── WooCommerce nativer Preis im Widget ────────────────────── */
.naydim-wc-price-wrap { margin-bottom: 14px; }
.naydim-wc-price-wrap .price { font-size: 28px; font-weight: 800; color: #E4003B; line-height: 1.2; display: block; margin-bottom: 4px; }
.naydim-wc-price-wrap .price del { color: #999; font-size: 16px; font-weight: 400; }
.naydim-wc-price-wrap .price ins { text-decoration: none; }
.naydim-wc-price-wrap .woocommerce-Price-amount { color: inherit; }

/* Nativer WC Button überschreiben */
.naydim-buy-section form.cart { margin: 0; }
.naydim-buy-section .single_add_to_cart_button,
.naydim-buy-section button[type="submit"].button {
    display: block !important;
    width: 100% !important;
    padding: 14px 20px !important;
    background: #E4003B !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border: none !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    text-align: center !important;
    margin: 0 0 12px 0 !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    transition: opacity .2s !important;
    box-shadow: none !important;
}
.naydim-buy-section .single_add_to_cart_button:hover { opacity: .88 !important; }
.naydim-buy-section .quantity { display: none !important; }
.naydim-buy-section .variations { display: none !important; }
.naydim-buy-section .woocommerce-variation-price { display: none !important; }

/* ── FIX: Storage active-Status extra gehärtet (ChatGPT Fix) ── */
.naydim-rental-wrap .naydim-storage-options > button.naydim-storage-btn {
    border: 2px solid #E0E0E0 !important;
    background: #fff !important;
    color: #1C1C2E !important;
}
.naydim-rental-wrap .naydim-storage-options > button.naydim-storage-btn.active,
.naydim-rental-wrap .naydim-storage-options > button.naydim-storage-btn[aria-pressed="true"] {
    border-color: #1C1C2E !important;
    background: #F5F5F5 !important;
    color: #1C1C2E !important;
    box-shadow: inset 0 0 0 1px #1C1C2E !important;
}

/* CSS-Variablen Support */
.naydim-rental-wrap .naydim-btn-cart       { background-color: var(--naydim-accent, #E4003B); }
.naydim-rental-wrap .naydim-price-current  { color: var(--naydim-accent, #E4003B); }
.naydim-rental-wrap .naydim-feature-check  { color: var(--naydim-accent, #E4003B); }
.naydim-rental-wrap .naydim-discount-badge { background-color: var(--naydim-accent, #E4003B); }
.naydim-rental-wrap .naydim-dur-current    { color: var(--naydim-accent, #E4003B); }
.naydim-rental-wrap .naydim-promo-badge    { background-color: var(--naydim-badge-bg, #1C1C2E); }
.naydim-rental-wrap .naydim-duration-option.active,
.naydim-rental-wrap .naydim-condition-option.active  { border-color: var(--naydim-sel, #1C1C2E); }
.naydim-rental-wrap .naydim-color-swatch.active      { outline-color: var(--naydim-sel, #1C1C2E); border-color: var(--naydim-sel, #1C1C2E); }
.naydim-rental-wrap .naydim-storage-btn.active,
.naydim-rental-wrap .naydim-storage-btn[aria-pressed="true"] { border-color: var(--naydim-sel, #1C1C2E) !important; background: #F5F5F5 !important; }
