/* RoomVibe Pre-Order Deposit — Phase 03 frontend */

.rvpd-single-card,
.rvpd-single-card * {
    box-sizing: border-box;
}

.rvpd-single-card {
    width: 100%;
    margin: 0 0 20px;
    padding: 18px;
    border: 1px solid #e8e8e8;
    border-radius: 16px;
    background: #fff;
    color: #111;
    box-shadow: 0 10px 30px rgba(0,0,0,.035);
}

.rvpd-single-topline {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 13px;
}

.rvpd-single-badge {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 11px;
    border-radius: 999px;
    background: #111;
    color: #fff;
    font-size: 11px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: .06em;
}

.rvpd-expected-date {
    color: #737373;
    font-size: 12px;
    font-weight: 500;
}

.rvpd-expected-date strong {
    color: #111;
    font-weight: 700;
}

.rvpd-single-heading h4 {
    margin: 0 0 5px;
    color: #111;
    font-size: 19px;
    line-height: 1.25;
    font-weight: 700;
}

.rvpd-single-heading p {
    margin: 0;
    color: #777;
    font-size: 13px;
    line-height: 1.55;
    font-weight: 500;
}

.rvpd-price-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px;
    margin-top: 15px;
}

.rvpd-price-box {
    min-width: 0;
    padding: 12px;
    border: 1px solid #ececec;
    border-radius: 12px;
    background: #fafafa;
}

.rvpd-price-box.is-primary {
    background: #111;
    border-color: #111;
    color: #fff;
}

.rvpd-price-box > span {
    display: block;
    margin-bottom: 5px;
    color: #8a8a8a;
    font-size: 10.5px;
    line-height: 1.35;
    font-weight: 600;
}

.rvpd-price-box.is-primary > span {
    color: rgba(255,255,255,.66);
}

.rvpd-price-box strong {
    display: block;
    overflow-wrap: anywhere;
    color: #111;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 700;
}

.rvpd-price-box.is-primary strong {
    color: #fff;
}

.rvpd-price-box .woocommerce-Price-amount,
.rvpd-price-box .woocommerce-Price-currencySymbol {
    color: inherit;
}

.rvpd-variation-hint {
    margin: 11px 0 0;
    color: #777;
    font-size: 11px;
    line-height: 1.45;
    font-weight: 500;
}

.rvpd-customer-note {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 13px;
    padding: 10px 11px;
    border-radius: 10px;
    background: #f5f5f5;
}

.rvpd-customer-note > span {
    display: inline-flex;
    flex: 0 0 21px;
    width: 21px;
    height: 21px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-family: Georgia, serif;
    font-size: 12px;
    font-weight: 700;
}

.rvpd-customer-note p {
    margin: 1px 0 0;
    color: #606060;
    font-size: 11.5px;
    line-height: 1.5;
    font-weight: 500;
}

/* Make the WooCommerce purchase button clearly read as the pre-order CTA. */
.rvpd-preorder-product form.cart .single_add_to_cart_button,
.rvpd-loop-preorder-button {
    transition: transform .18s ease, opacity .18s ease;
}

.rvpd-preorder-product form.cart .single_add_to_cart_button:hover,
.rvpd-loop-preorder-button:hover {
    transform: translateY(-1px);
}

/* Archive / brand / category cards */
.woocommerce ul.products li.product {
    position: relative;
}

.rvpd-loop-badge {
    position: absolute;
    z-index: 6;
    top: 10px;
    left: 10px;
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 6px 9px;
    border-radius: 999px;
    background: #111;
    color: #fff;
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: .05em;
    pointer-events: none;
}

.rvpd-loop-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 8px;
    margin: 5px 0 8px;
    font-size: 11px;
    line-height: 1.4;
}

.rvpd-loop-meta strong {
    color: #111;
    font-weight: 700;
}

.rvpd-loop-meta span {
    color: #777;
    font-weight: 500;
}

.rvpd-loop-preorder-button {
    white-space: nowrap;
}

@media (max-width: 767px) {
    .rvpd-single-card {
        padding: 14px;
        border-radius: 13px;
        margin-bottom: 15px;
    }

    .rvpd-single-topline {
        align-items: flex-start;
        flex-direction: column;
    }

    .rvpd-single-heading h4 {
        font-size: 17px;
    }

    .rvpd-price-grid {
        grid-template-columns: 1fr 1fr;
    }

    .rvpd-price-box:first-child {
        grid-column: 1 / -1;
    }

    .rvpd-price-box {
        padding: 10px;
    }

    .rvpd-price-box strong {
        font-size: 13px;
    }

    .rvpd-loop-badge {
        top: 7px;
        left: 7px;
        min-height: 25px;
        padding: 5px 8px;
        font-size: 9px;
    }
}

@media (max-width: 420px) {
    .rvpd-price-grid {
        grid-template-columns: 1fr;
    }

    .rvpd-price-box:first-child {
        grid-column: auto;
    }
}

/* Phase 03 — cart / checkout deposit presentation */
.rvpd-cart-price,
.rvpd-cart-subtotal {
    display: flex;
    flex-direction: column;
    gap: 3px;
    line-height: 1.35;
}

.rvpd-cart-price small,
.rvpd-cart-subtotal small {
    color: #7a7a7a;
    font-size: 10.5px;
    font-weight: 500;
}

.rvpd-cart-price strong,
.rvpd-cart-subtotal strong {
    color: #111;
    font-size: 12px;
    font-weight: 700;
}

.rvpd-cart-notice {
    border-radius: 10px;
}

.rvpd-summary-row th,
.rvpd-summary-row td {
    font-size: 12px;
}

.rvpd-summary-balance th,
.rvpd-summary-balance td {
    color: #6f6f6f;
}

.woocommerce td.product-name dl.variation dt,
.woocommerce td.product-name dl.variation dd {
    margin-bottom: 3px;
}

@media (max-width: 767px) {
    .rvpd-cart-price small,
    .rvpd-cart-subtotal small {
        font-size: 10px;
    }

    .rvpd-cart-price strong,
    .rvpd-cart-subtotal strong,
    .rvpd-summary-row th,
    .rvpd-summary-row td {
        font-size: 11px;
    }
}

/* Phase 05 — customer pre-order communication */
.rvpd-customer-order-card {
    margin: 24px 0;
    padding: 20px;
    border: 1px solid #e5e5e5;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(0,0,0,.05);
}

.rvpd-customer-order-head h3 {
    margin: 10px 0 5px;
    font-size: 20px;
    line-height: 1.25;
    color: #111;
}

.rvpd-customer-order-head p {
    margin: 0;
    color: #666;
    font-size: 12px;
    line-height: 1.6;
    font-weight: 500;
}

.rvpd-customer-order-values {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    margin: 16px 0;
}

.rvpd-customer-order-values > div {
    padding: 12px;
    border: 1px solid #ededed;
    border-radius: 11px;
    background: #fafafa;
}

.rvpd-customer-order-values span,
.rvpd-customer-order-values strong {
    display: block;
}

.rvpd-customer-order-values span {
    margin-bottom: 5px;
    color: #777;
    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.rvpd-customer-order-values strong {
    color: #111;
    font-size: 14px;
    line-height: 1.35;
}

.rvpd-whatsapp-button.button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 12px 18px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #25D366 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.rvpd-whatsapp-unconfigured {
    margin: 10px 0 0;
    color: #8a5a00;
    font-size: 11px;
    font-weight: 600;
}

@media (max-width: 767px) {
    .rvpd-customer-order-card {
        padding: 15px;
        border-radius: 13px;
    }
    .rvpd-customer-order-values {
        grid-template-columns: 1fr;
    }
    .rvpd-whatsapp-button.button {
        width: 100%;
    }
}

/* ============================================================
 * Phase 06 — checkout confirmation + final mobile polish
 * ============================================================ */
.rvpd-checkout-confirmation {
    box-sizing: border-box;
    margin: 18px 0 16px;
    padding: 16px;
    border: 1px solid #dedede;
    border-radius: 14px;
    background: #fff;
    color: #111;
}

.rvpd-checkout-confirmation-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px 12px;
    margin-bottom: 12px;
}

.rvpd-checkout-confirmation-head > strong {
    font-size: 14px;
    line-height: 1.35;
}

.rvpd-checkout-confirmation-values {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 13px;
}

.rvpd-checkout-confirmation-values > div {
    min-width: 0;
    padding: 10px;
    border: 1px solid #ededed;
    border-radius: 10px;
    background: #fafafa;
}

.rvpd-checkout-confirmation-values > div.is-primary {
    border-color: #111;
    background: #111;
    color: #fff;
}

.rvpd-checkout-confirmation-values span,
.rvpd-checkout-confirmation-values strong {
    display: block;
}

.rvpd-checkout-confirmation-values span {
    margin-bottom: 4px;
    color: #777;
    font-size: 10px;
    line-height: 1.35;
    font-weight: 600;
}

.rvpd-checkout-confirmation-values .is-primary span {
    color: rgba(255,255,255,.68);
}

.rvpd-checkout-confirmation-values strong {
    overflow-wrap: anywhere;
    font-size: 13px;
    line-height: 1.35;
    color: inherit;
}

.rvpd-checkout-agreement-label {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    margin: 0 !important;
    padding: 12px;
    border-radius: 10px;
    background: #f5f5f5;
    color: #222;
    cursor: pointer;
    font-size: 11.5px;
    line-height: 1.55;
    font-weight: 600;
}

.rvpd-checkout-agreement-label input[type="checkbox"] {
    flex: 0 0 auto;
    width: 18px !important;
    height: 18px !important;
    margin: 1px 0 0 !important;
}

.rvpd-checkout-confirmation-note {
    margin: 9px 0 0;
    color: #777;
    font-size: 10.5px;
    line-height: 1.5;
    font-weight: 500;
}

@media (max-width: 767px) {
    .rvpd-checkout-confirmation {
        padding: 13px;
        border-radius: 12px;
    }

    .rvpd-checkout-confirmation-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .rvpd-checkout-confirmation-values {
        grid-template-columns: 1fr;
    }

    .rvpd-checkout-agreement-label {
        font-size: 11px;
    }

    .woocommerce-checkout-review-order-table .rvpd-summary-row th,
    .woocommerce-checkout-review-order-table .rvpd-summary-row td {
        padding-top: 7px;
        padding-bottom: 7px;
    }
}

/* ============================================================
 * v1.5.1 — RoomVibe pre-order UI refresh
 * Compact pricing, theme-safe typography, responsive cards,
 * cleaner cart/checkout metadata and mobile-first layout.
 * ============================================================ */

/* ---------- Archive / brand cards ---------- */
.rvpd-loop-badge {
    top: 14px;
    left: 14px;
    min-height: 34px;
    padding: 8px 14px;
    border-radius: 999px;
    box-shadow: 0 5px 18px rgba(0,0,0,.12);
    font-size: 10px;
    letter-spacing: .065em;
}

.rvpd-loop-meta {
    align-items: center;
    gap: 7px;
    margin: 8px 0 10px;
    font-size: 10.5px;
}

.rvpd-loop-meta strong,
.rvpd-loop-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 5px 9px;
    border-radius: 999px;
    line-height: 1.25;
}

.rvpd-loop-meta strong {
    background: #111;
    color: #fff;
}

.rvpd-loop-meta span {
    background: #f3f3f3;
    color: #6c6c6c;
}

/* ---------- Single product pre-order card ---------- */
.rvpd-single-card {
    container-type: inline-size;
    margin: 12px 0 20px;
    padding: 18px;
    border: 1px solid #e6e6e6;
    border-radius: 18px;
    box-shadow: 0 8px 28px rgba(0,0,0,.045);
}

.rvpd-single-topline {
    margin-bottom: 14px;
}

.rvpd-single-badge {
    min-height: 32px;
    padding: 7px 12px;
    font-size: 9.5px;
    letter-spacing: .065em;
}

.rvpd-expected-date {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 30px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #f5f5f5;
    color: #757575;
    font-size: 10.5px;
    line-height: 1.25;
}

.rvpd-single-heading {
    margin-bottom: 2px;
}

.rvpd-single-heading h4 {
    margin: 0 0 6px !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    letter-spacing: -.015em;
}

.rvpd-single-heading p {
    max-width: 760px;
    font-size: 12px !important;
    line-height: 1.55 !important;
}

.rvpd-price-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    margin-top: 15px;
}

.rvpd-price-box {
    display: flex;
    min-height: 92px;
    flex-direction: column;
    justify-content: center;
    padding: 12px 10px;
    border-radius: 13px;
    text-align: center;
}

.rvpd-price-box > span {
    margin-bottom: 6px;
    font-size: 9.5px !important;
    line-height: 1.35 !important;
    letter-spacing: .01em;
}

/* Theme-safe price sizing. Several WooCommerce themes aggressively style
   .woocommerce-Price-amount; these selectors intentionally win. */
.rvpd-single-card .rvpd-price-box strong,
.rvpd-single-card .rvpd-price-box strong .woocommerce-Price-amount,
.rvpd-single-card .rvpd-price-box strong .woocommerce-Price-currencySymbol,
.rvpd-single-card .rvpd-price-box .woocommerce-Price-amount,
.rvpd-single-card .rvpd-price-box .woocommerce-Price-currencySymbol {
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: -.01em !important;
}

.rvpd-single-card .rvpd-price-box .woocommerce-Price-amount {
    display: inline-block;
    white-space: nowrap;
}

.rvpd-variation-hint {
    margin-top: 10px;
    padding: 8px 10px;
    border-radius: 9px;
    background: #f8f8f8;
    text-align: center;
    font-size: 10.5px !important;
}

/* Container queries react to the actual product-summary width, not just the
   browser viewport. This fixes narrow Elementor/WooCommerce product columns. */
@container (max-width: 560px) {
    .rvpd-price-grid {
        grid-template-columns: 1fr 1fr;
    }

    .rvpd-price-box:first-child {
        grid-column: 1 / -1;
        min-height: 78px;
    }
}

@container (max-width: 380px) {
    .rvpd-price-grid {
        grid-template-columns: 1fr;
    }

    .rvpd-price-box:first-child {
        grid-column: auto;
    }
}

/* ---------- Cart presentation ---------- */
.rvpd-has-preorder-cart .rvpd-cart-notice {
    margin-bottom: 18px;
    padding: 12px 14px;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    background: #fafafa;
    color: #333;
    font-size: 11px;
    line-height: 1.5;
}

.rvpd-has-preorder-cart .rvpd-cart-price,
.rvpd-has-preorder-cart .rvpd-cart-subtotal {
    gap: 2px;
}

.rvpd-has-preorder-cart .rvpd-cart-price small,
.rvpd-has-preorder-cart .rvpd-cart-subtotal small {
    font-size: 9.5px !important;
    line-height: 1.35 !important;
}

.rvpd-has-preorder-cart .rvpd-cart-price strong,
.rvpd-has-preorder-cart .rvpd-cart-subtotal strong,
.rvpd-has-preorder-cart .rvpd-cart-price .woocommerce-Price-amount,
.rvpd-has-preorder-cart .rvpd-cart-subtotal .woocommerce-Price-amount {
    font-size: 11.5px !important;
    line-height: 1.4 !important;
}

.rvpd-has-preorder-cart .woocommerce-cart-form dl.variation,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: 3px 6px;
    margin: 7px 0 0 !important;
    font-size: 9.5px !important;
    line-height: 1.35 !important;
}

.rvpd-has-preorder-cart .woocommerce-cart-form dl.variation dt,
.rvpd-has-preorder-cart .woocommerce-cart-form dl.variation dd,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation dt,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation dd {
    float: none !important;
    clear: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
}

.rvpd-has-preorder-cart .woocommerce-cart-form dl.variation dt,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation dt {
    color: #777;
    font-weight: 600;
}

.rvpd-has-preorder-cart .woocommerce-cart-form dl.variation dd,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation dd {
    color: #222;
    font-weight: 500;
}

.rvpd-has-preorder-cart .woocommerce-cart-form dl.variation p,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation p {
    margin: 0 !important;
}

/* Summary rows */
.rvpd-has-preorder-cart .rvpd-summary-row th,
.rvpd-has-preorder-cart .rvpd-summary-row td,
.rvpd-has-preorder-cart .rvpd-summary-row .woocommerce-Price-amount,
.rvpd-has-preorder-cart .rvpd-summary-row .woocommerce-Price-currencySymbol {
    font-size: 11px !important;
    line-height: 1.4 !important;
}

.rvpd-has-preorder-cart .rvpd-summary-advance th,
.rvpd-has-preorder-cart .rvpd-summary-advance td {
    font-weight: 700;
    color: #111;
}

/* ---------- Checkout confirmation ---------- */
.rvpd-checkout-confirmation {
    container-type: inline-size;
    margin: 18px 0 16px;
    padding: 15px;
    border: 1px solid #e3e3e3;
    border-radius: 15px;
    box-shadow: 0 7px 24px rgba(0,0,0,.035);
}

.rvpd-checkout-confirmation-head {
    gap: 8px;
    margin-bottom: 11px;
}

.rvpd-checkout-confirmation-head > strong {
    font-size: 12.5px !important;
    line-height: 1.4 !important;
}

.rvpd-checkout-confirmation-values {
    gap: 7px;
    margin-bottom: 11px;
}

.rvpd-checkout-confirmation-values > div {
    display: flex;
    min-height: 76px;
    flex-direction: column;
    justify-content: center;
    padding: 9px;
    border-radius: 10px;
}

.rvpd-checkout-confirmation-values span {
    margin-bottom: 4px;
    font-size: 8.5px !important;
    line-height: 1.3 !important;
}

.rvpd-checkout-confirmation-values strong,
.rvpd-checkout-confirmation-values strong .woocommerce-Price-amount,
.rvpd-checkout-confirmation-values strong .woocommerce-Price-currencySymbol,
.rvpd-checkout-confirmation-values .woocommerce-Price-amount,
.rvpd-checkout-confirmation-values .woocommerce-Price-currencySymbol {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: -.01em !important;
}

.rvpd-checkout-confirmation-values .woocommerce-Price-amount {
    display: inline-block;
    white-space: nowrap;
}

.rvpd-checkout-agreement-label {
    gap: 9px;
    padding: 10px 11px;
    border: 1px solid #ececec;
    background: #f8f8f8;
    font-size: 9.5px !important;
    line-height: 1.5 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.rvpd-checkout-agreement-label input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
}

.rvpd-checkout-confirmation-note {
    margin-top: 8px;
    font-size: 9px !important;
    line-height: 1.45 !important;
}

@container (max-width: 430px) {
    .rvpd-checkout-confirmation-values {
        grid-template-columns: 1fr;
    }

    .rvpd-checkout-confirmation-values > div {
        min-height: 62px;
        text-align: left;
    }
}

/* Checkout item column: prevent character-by-character wrapping from narrow
   theme table columns. */
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table .product-name,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table .product-name * {
    word-break: normal !important;
    overflow-wrap: break-word !important;
}

.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table .product-name {
    font-size: 10px !important;
    line-height: 1.4 !important;
}

.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table .product-total,
.rvpd-has-preorder-cart .woocommerce-checkout-review-order-table .product-total .woocommerce-Price-amount {
    font-size: 11px !important;
    line-height: 1.4 !important;
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
    .rvpd-loop-badge {
        top: 9px;
        left: 9px;
        min-height: 28px;
        padding: 6px 10px;
        font-size: 8.5px;
    }

    .rvpd-loop-meta {
        gap: 5px;
        margin-top: 6px;
        font-size: 9px;
    }

    .rvpd-loop-meta strong,
    .rvpd-loop-meta span {
        min-height: 23px;
        padding: 4px 7px;
    }

    .rvpd-single-card {
        margin: 10px 0 15px;
        padding: 13px;
        border-radius: 14px;
    }

    .rvpd-single-topline {
        gap: 7px;
        margin-bottom: 11px;
    }

    .rvpd-single-heading h4 {
        font-size: 17px !important;
    }

    .rvpd-single-heading p {
        font-size: 11px !important;
    }

    .rvpd-price-box {
        min-height: 76px;
        padding: 10px 8px;
    }

    .rvpd-single-card .rvpd-price-box strong,
    .rvpd-single-card .rvpd-price-box strong .woocommerce-Price-amount,
    .rvpd-single-card .rvpd-price-box .woocommerce-Price-amount {
        font-size: 12.5px !important;
    }

    .rvpd-has-preorder-cart .woocommerce-cart-form dl.variation,
    .rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation {
        grid-template-columns: 1fr;
        gap: 1px;
        font-size: 9px !important;
    }

    .rvpd-has-preorder-cart .woocommerce-cart-form dl.variation dt,
    .rvpd-has-preorder-cart .woocommerce-checkout-review-order-table dl.variation dt {
        margin-top: 4px !important;
    }

    .rvpd-checkout-confirmation {
        padding: 12px;
        border-radius: 12px;
    }

    .rvpd-checkout-confirmation-head > strong {
        font-size: 11.5px !important;
    }

    .rvpd-checkout-confirmation-values strong,
    .rvpd-checkout-confirmation-values .woocommerce-Price-amount {
        font-size: 11.5px !important;
    }

    .rvpd-checkout-agreement-label {
        font-size: 9px !important;
    }
}

@media (max-width: 420px) {
    .rvpd-single-card .rvpd-price-grid {
        grid-template-columns: 1fr !important;
    }

    .rvpd-single-card .rvpd-price-box:first-child {
        grid-column: auto !important;
    }

    .rvpd-single-card .rvpd-price-box {
        min-height: 66px;
        text-align: left;
    }

    .rvpd-single-card .rvpd-price-box > span {
        margin-bottom: 3px;
    }

    .rvpd-checkout-confirmation-values {
        grid-template-columns: 1fr !important;
    }
}

/* ============================================================
 * v1.5.2 — Archive centering + refined mobile single-product UI
 * ============================================================ */

/* Keep the pre-order metadata aligned with RoomVibe's centered product cards. */
.woocommerce ul.products li.product .rvpd-loop-meta,
.woocommerce-page ul.products li.product .rvpd-loop-meta {
    justify-content: center;
    text-align: center;
}

.woocommerce ul.products li.product .rvpd-loop-meta strong,
.woocommerce ul.products li.product .rvpd-loop-meta span,
.woocommerce-page ul.products li.product .rvpd-loop-meta strong,
.woocommerce-page ul.products li.product .rvpd-loop-meta span {
    justify-content: center;
    text-align: center;
}

.woocommerce ul.products li.product .rvpd-loop-preorder-button,
.woocommerce-page ul.products li.product .rvpd-loop-preorder-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}

/* Mobile single-product card: compact, balanced and easier to scan above the
   fixed RoomVibe buy bar. */
@media (max-width: 600px) {
    .rvpd-single-card {
        margin: 8px 0 16px;
        padding: 14px;
        border-radius: 18px;
        border-color: #e3e3e3;
        box-shadow: 0 10px 28px rgba(0,0,0,.045);
    }

    .rvpd-single-topline {
        align-items: center !important;
        justify-content: center;
        flex-direction: column;
        gap: 8px;
        margin-bottom: 14px;
        text-align: center;
    }

    .rvpd-single-badge {
        min-height: 30px;
        padding: 7px 12px;
        font-size: 9px;
        letter-spacing: .07em;
    }

    .rvpd-expected-date {
        min-height: 28px;
        padding: 6px 10px;
        justify-content: center;
        font-size: 9.5px;
        line-height: 1.2;
    }

    .rvpd-single-heading {
        text-align: center;
        margin-bottom: 12px;
    }

    .rvpd-single-heading h4 {
        margin-bottom: 6px !important;
        font-size: 18px !important;
        line-height: 1.2 !important;
    }

    .rvpd-single-heading p {
        max-width: 330px;
        margin-left: auto;
        margin-right: auto;
        font-size: 10.5px !important;
        line-height: 1.5 !important;
    }

    /* Always use compact horizontal rows on phones instead of tall price cards. */
    .rvpd-single-card .rvpd-price-grid {
        display: grid;
        grid-template-columns: 1fr !important;
        gap: 8px;
        margin-top: 0;
    }

    .rvpd-single-card .rvpd-price-box,
    .rvpd-single-card .rvpd-price-box:first-child {
        grid-column: auto !important;
        display: grid;
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.35fr);
        align-items: center;
        min-height: 58px;
        padding: 10px 12px;
        border-radius: 13px;
        text-align: left;
    }

    .rvpd-single-card .rvpd-price-box > span {
        margin: 0;
        padding-right: 9px;
        font-size: 9px !important;
        line-height: 1.3 !important;
    }

    .rvpd-single-card .rvpd-price-box strong,
    .rvpd-single-card .rvpd-price-box strong .woocommerce-Price-amount,
    .rvpd-single-card .rvpd-price-box strong .woocommerce-Price-currencySymbol,
    .rvpd-single-card .rvpd-price-box .woocommerce-Price-amount,
    .rvpd-single-card .rvpd-price-box .woocommerce-Price-currencySymbol {
        margin: 0;
        text-align: right;
        font-size: 12px !important;
        line-height: 1.3 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .rvpd-single-card .rvpd-price-box .woocommerce-Price-amount {
        white-space: nowrap;
    }

    .rvpd-single-card .rvpd-price-box.is-primary {
        box-shadow: 0 7px 18px rgba(0,0,0,.09);
    }

    .rvpd-variation-hint {
        margin: 9px 0 0;
        padding: 8px 9px;
        border-radius: 10px;
        font-size: 9px !important;
        line-height: 1.4 !important;
    }

    .rvpd-customer-note {
        margin-top: 9px;
        padding: 9px 10px;
    }

    .rvpd-customer-note p {
        font-size: 9.5px;
        line-height: 1.45;
    }

    /* Give the page enough scroll clearance for RoomVibe's fixed mobile buy bar
       so the final balance row can still be fully viewed. */
    body.rvpd-preorder-product.single-product {
        padding-bottom: 155px;
    }
}

@media (max-width: 380px) {
    .rvpd-single-card {
        padding: 12px;
    }

    .rvpd-single-card .rvpd-price-box,
    .rvpd-single-card .rvpd-price-box:first-child {
        grid-template-columns: minmax(0, .82fr) minmax(0, 1.45fr);
        min-height: 54px;
        padding: 9px 10px;
    }

    .rvpd-single-card .rvpd-price-box strong,
    .rvpd-single-card .rvpd-price-box .woocommerce-Price-amount {
        font-size: 11px !important;
    }
}


/* v1.5.3 — Payment-price integration for pre-order products.
 * The updated UC Payment Method Prices plugin does not render Cash/Bank tiles on
 * pre-orders. These rules also cover a temporarily cached copy of the older markup. */
.rvpd-preorder-product .ucpm-grid:not(.ucpm-grid-preorder) > .ucpm-tile:nth-child(1),
.rvpd-preorder-product .ucpm-grid:not(.ucpm-grid-preorder) > .ucpm-tile:nth-child(2),
.rvpd-preorder-product .ucpm-wrap:not(.ucpm-wrap-preorder) > .ucpm-note {
    display: none !important;
}

/* ============================================================
 * v1.5.4 — Clean pre-order single-product presentation
 * ============================================================ */

/* Client requirement: payment-method price cards are not shown at all on
   single pre-order products. This intentionally hides the complete UC Payment
   Method Prices widget (Card + KOKO/Mintpay as well as any cached Cash/Bank
   markup), while leaving normal product pages untouched. */
body.single-product.rvpd-preorder-product .ucpm-wrap,
body.single-product.rvpd-preorder-product #ucpm-wrap {
    display: none !important;
}

/* Keep PRE-ORDER AVAILABLE geometrically centered even when the expected-date
   pill is present on the right side. */
.rvpd-single-card .rvpd-single-topline {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    width: 100%;
}

.rvpd-single-card .rvpd-single-badge {
    grid-column: 2;
    justify-self: center;
    margin: 0;
    text-align: center;
}

.rvpd-single-card .rvpd-expected-date {
    grid-column: 3;
    justify-self: end;
    text-align: center;
}

@media (max-width: 600px) {
    .rvpd-single-card .rvpd-single-topline {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 8px;
    }

    .rvpd-single-card .rvpd-single-badge,
    .rvpd-single-card .rvpd-expected-date {
        grid-column: 1;
        justify-self: center;
    }
}

/* ============================================================
 * v1.6.0 — Premium RoomVibe pre-order experience
 * Visual-only refresh. Keeps all deposit/payment logic unchanged.
 * ============================================================ */

/* Design tokens scoped to pre-order UI only */
.rvpd-single-card,
.rvpd-checkout-confirmation,
.rvpd-customer-order-card {
    --rvpd-ink: #111111;
    --rvpd-muted: #777b82;
    --rvpd-line: #e7e8ea;
    --rvpd-soft: #f7f7f8;
    --rvpd-soft-2: #fbfbfc;
    --rvpd-success: #22c55e;
    --rvpd-shadow: 0 18px 55px rgba(17,17,17,.075);
}

/* ---------- Product archive / brand card treatment ---------- */
.woocommerce ul.products li.product .rvpd-loop-badge,
.woocommerce-page ul.products li.product .rvpd-loop-badge {
    top: 13px;
    left: 13px;
    min-height: 33px;
    padding: 8px 13px 8px 12px;
    border: 1px solid rgba(255,255,255,.18);
    background: linear-gradient(135deg,#0d0d0d 0%,#202020 100%);
    box-shadow: 0 9px 26px rgba(0,0,0,.16);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .075em;
}

.woocommerce ul.products li.product .rvpd-loop-badge::before,
.woocommerce-page ul.products li.product .rvpd-loop-badge::before {
    content: "";
    width: 6px;
    height: 6px;
    margin-right: 7px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 0 4px rgba(34,197,94,.12);
}

.woocommerce ul.products li.product .rvpd-loop-meta,
.woocommerce-page ul.products li.product .rvpd-loop-meta {
    width: 100%;
    justify-content: center;
    gap: 6px;
    margin: 8px auto 10px;
}

.woocommerce ul.products li.product .rvpd-loop-meta strong,
.woocommerce ul.products li.product .rvpd-loop-meta span,
.woocommerce-page ul.products li.product .rvpd-loop-meta strong,
.woocommerce-page ul.products li.product .rvpd-loop-meta span {
    min-height: 27px;
    padding: 5px 10px;
    border: 1px solid #e9e9e9;
    box-shadow: 0 4px 12px rgba(0,0,0,.025);
    font-size: 9px;
    font-weight: 700;
}

.woocommerce ul.products li.product .rvpd-loop-meta strong,
.woocommerce-page ul.products li.product .rvpd-loop-meta strong {
    border-color: #111;
    background: #111;
    color: #fff;
}

.woocommerce ul.products li.product .rvpd-loop-meta span,
.woocommerce-page ul.products li.product .rvpd-loop-meta span {
    background: #fff;
    color: #777;
}

/* ---------- Premium single-product pre-order card ---------- */
.rvpd-single-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 14px 0 22px;
    padding: 21px;
    border: 1px solid var(--rvpd-line);
    border-radius: 22px;
    background:
        radial-gradient(circle at 8% 0%, rgba(34,197,94,.045), transparent 28%),
        linear-gradient(180deg,#ffffff 0%,#fbfbfc 100%);
    box-shadow: var(--rvpd-shadow);
}

.rvpd-single-card::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 18px;
    right: 18px;
    height: 3px;
    border-radius: 0 0 999px 999px;
    background: linear-gradient(90deg,transparent,#111 24%,#111 76%,transparent);
    opacity: .95;
}

.rvpd-single-card::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 150px;
    height: 150px;
    right: -80px;
    top: -80px;
    border-radius: 50%;
    background: rgba(17,17,17,.025);
}

.rvpd-single-card .rvpd-single-topline {
    margin-bottom: 15px;
}

.rvpd-single-card .rvpd-single-badge,
.rvpd-checkout-confirmation .rvpd-single-badge,
.rvpd-customer-order-card .rvpd-single-badge {
    min-height: 32px;
    padding: 8px 13px;
    border: 1px solid #111;
    background: linear-gradient(135deg,#0d0d0d,#202020);
    box-shadow: 0 7px 18px rgba(0,0,0,.10);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .075em;
}

.rvpd-single-card .rvpd-single-badge::before,
.rvpd-checkout-confirmation .rvpd-single-badge::before,
.rvpd-customer-order-card .rvpd-single-badge::before {
    content: "";
    width: 6px;
    height: 6px;
    margin-right: 7px;
    border-radius: 50%;
    background: var(--rvpd-success, #22c55e);
    box-shadow: 0 0 0 4px rgba(34,197,94,.13);
}

.rvpd-single-card .rvpd-expected-date {
    min-height: 32px;
    padding: 7px 11px;
    border: 1px solid #ededee;
    background: rgba(255,255,255,.88);
    box-shadow: 0 5px 14px rgba(0,0,0,.035);
    color: #8a8d92;
    font-size: 9.5px;
}

.rvpd-single-card .rvpd-single-heading {
    max-width: 650px;
    margin: 0 auto 14px;
    text-align: center;
}

.rvpd-single-card .rvpd-single-heading h4 {
    margin: 0 0 7px !important;
    color: var(--rvpd-ink);
    font-size: clamp(18px,2vw,22px) !important;
    font-weight: 800 !important;
    letter-spacing: -.025em !important;
}

.rvpd-single-card .rvpd-single-heading p {
    max-width: 570px;
    margin: 0 auto;
    color: var(--rvpd-muted);
    font-size: 11.5px !important;
    line-height: 1.6 !important;
}

/* New compact three-step process */
.rvpd-process-strip {
    display: grid;
    grid-template-columns: minmax(0,1fr) 26px minmax(0,1fr) 26px minmax(0,1fr);
    align-items: center;
    gap: 5px;
    margin: 0 0 15px;
    padding: 10px 12px;
    border: 1px solid #ececee;
    border-radius: 15px;
    background: rgba(255,255,255,.72);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.rvpd-process-step {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 8px;
}

.rvpd-process-number {
    display: inline-flex;
    flex: 0 0 27px;
    width: 27px;
    height: 27px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 9px;
    font-weight: 800;
    box-shadow: 0 5px 12px rgba(0,0,0,.10);
}

.rvpd-process-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.rvpd-process-copy strong {
    overflow: hidden;
    color: #171717;
    font-size: 9.5px;
    line-height: 1.2;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rvpd-process-copy small {
    color: #92959a;
    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

.rvpd-process-line {
    position: relative;
    height: 1px;
    background: #dedfe1;
}

.rvpd-process-line::after {
    content: "";
    position: absolute;
    right: -1px;
    top: 50%;
    width: 5px;
    height: 5px;
    border-top: 1px solid #bfc1c5;
    border-right: 1px solid #bfc1c5;
    transform: translateY(-50%) rotate(45deg);
}

.rvpd-single-card .rvpd-price-grid {
    gap: 9px;
    margin-top: 0;
}

.rvpd-single-card .rvpd-price-box {
    min-height: 84px;
    padding: 12px;
    border-color: #e9e9eb;
    border-radius: 14px;
    background: rgba(255,255,255,.90);
    box-shadow: 0 6px 18px rgba(0,0,0,.025);
}

.rvpd-single-card .rvpd-price-box.is-primary {
    position: relative;
    overflow: hidden;
    border-color: #111;
    background: linear-gradient(145deg,#0d0d0d,#1c1c1c);
    box-shadow: 0 11px 26px rgba(0,0,0,.13);
}

.rvpd-single-card .rvpd-price-box.is-primary::after {
    content: "";
    position: absolute;
    width: 70px;
    height: 70px;
    top: -44px;
    right: -32px;
    border-radius: 50%;
    background: rgba(255,255,255,.07);
}

.rvpd-single-card .rvpd-price-box > span {
    color: #8b8e94;
    font-size: 9px !important;
    font-weight: 650;
}

.rvpd-single-card .rvpd-price-box.is-primary > span {
    color: rgba(255,255,255,.63);
}

.rvpd-single-card .rvpd-variation-hint {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    margin-top: 10px;
    padding: 8px 12px;
    border: 1px dashed #dedfe1;
    border-radius: 11px;
    background: transparent;
    color: #777b80;
}

.rvpd-single-card .rvpd-variation-hint::before {
    content: "i";
    display: inline-flex;
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-family: Georgia,serif;
    font-size: 9px;
    font-weight: 700;
}

.rvpd-single-card .rvpd-customer-note {
    border: 1px solid #ececee;
    background: #fff;
    box-shadow: 0 5px 14px rgba(0,0,0,.025);
}

/* ---------- Cart / checkout clarity ---------- */
.rvpd-has-preorder-cart .rvpd-cart-notice {
    position: relative;
    overflow: hidden;
    padding: 14px 15px 14px 45px;
    border: 1px solid #e5e6e8 !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg,#fff,#f8f8f9) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
    color: #5f6267 !important;
}

.rvpd-has-preorder-cart .rvpd-cart-notice::before {
    content: "50%";
    position: absolute;
    left: 12px;
    top: 50%;
    display: inline-flex;
    width: 25px;
    height: 25px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 7px;
    font-weight: 800;
    transform: translateY(-50%);
}

.rvpd-checkout-confirmation {
    position: relative;
    overflow: hidden;
    padding: 17px;
    border: 1px solid var(--rvpd-line);
    border-radius: 18px;
    background:
        radial-gradient(circle at 100% 0%,rgba(34,197,94,.045),transparent 30%),
        #fff;
    box-shadow: var(--rvpd-shadow);
}

.rvpd-checkout-confirmation::before {
    content: "";
    position: absolute;
    left: 15px;
    right: 15px;
    top: 0;
    height: 3px;
    border-radius: 0 0 999px 999px;
    background: #111;
}

.rvpd-checkout-confirmation-head {
    justify-content: center;
    margin: 1px 0 14px;
    text-align: center;
}

.rvpd-checkout-confirmation-head > strong {
    color: #171717;
    font-size: 13px !important;
    font-weight: 800;
    letter-spacing: -.01em;
}

.rvpd-checkout-confirmation-values {
    gap: 8px;
    margin-bottom: 13px;
}

.rvpd-checkout-confirmation-values > div {
    min-height: 72px;
    border-color: #e9e9eb;
    border-radius: 12px;
    background: #fafafa;
    text-align: center;
}

.rvpd-checkout-confirmation-values > div.is-primary {
    border-color: #111;
    background: linear-gradient(145deg,#0d0d0d,#1b1b1b);
    box-shadow: 0 9px 22px rgba(0,0,0,.12);
}

.rvpd-checkout-confirmation-values span {
    color: #8a8d92;
    font-size: 8px !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.rvpd-checkout-confirmation-values strong,
.rvpd-checkout-confirmation-values .woocommerce-Price-amount,
.rvpd-checkout-confirmation-values .woocommerce-Price-currencySymbol {
    font-size: 11.5px !important;
    font-weight: 800 !important;
}

.rvpd-checkout-agreement-label {
    position: relative;
    padding: 12px 12px 12px 42px !important;
    border: 1px solid #e5e6e8;
    border-radius: 12px;
    background: #f7f7f8;
    color: #4f5257;
    font-size: 9.5px !important;
    line-height: 1.55 !important;
}

.rvpd-checkout-agreement-label input[type="checkbox"] {
    position: absolute;
    left: 13px;
    top: 13px;
    width: 17px !important;
    height: 17px !important;
    accent-color: #111;
}

.rvpd-checkout-confirmation-note {
    text-align: center;
    color: #93969a;
}

/* ---------- Thank-you / My Account pre-order card ---------- */
.rvpd-customer-order-card {
    position: relative;
    overflow: hidden;
    padding: 22px;
    border: 1px solid var(--rvpd-line);
    border-radius: 20px;
    background:
        radial-gradient(circle at 100% 0%,rgba(34,197,94,.05),transparent 32%),
        linear-gradient(180deg,#fff,#fbfbfc);
    box-shadow: var(--rvpd-shadow);
}

.rvpd-customer-order-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 18px;
    right: 18px;
    height: 3px;
    border-radius: 0 0 999px 999px;
    background: #111;
}

.rvpd-customer-order-head {
    text-align: center;
}

.rvpd-customer-order-head .rvpd-single-badge {
    margin: 0 auto;
}

.rvpd-customer-order-head h3 {
    margin: 12px 0 6px;
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -.025em;
}

.rvpd-customer-order-head p {
    max-width: 600px;
    margin: 0 auto;
    color: #777b80;
}

.rvpd-customer-order-values {
    gap: 8px;
    margin: 17px 0;
}

.rvpd-customer-order-values > div {
    border: 1px solid #e9e9eb;
    border-radius: 13px;
    background: #fff;
    text-align: center;
    box-shadow: 0 6px 16px rgba(0,0,0,.025);
}

.rvpd-customer-order-values strong {
    font-size: 13px;
    font-weight: 800;
}

.rvpd-whatsapp-button.button {
    min-height: 48px;
    border-radius: 12px !important;
    box-shadow: 0 10px 22px rgba(37,211,102,.18);
    transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.rvpd-whatsapp-button.button:hover {
    transform: translateY(-1px);
    box-shadow: 0 13px 27px rgba(37,211,102,.24);
}

/* ---------- Mobile polish ---------- */
@media (max-width: 600px) {
    .rvpd-single-card {
        margin: 8px 0 17px;
        padding: 15px 13px;
        border-radius: 19px;
        box-shadow: 0 13px 34px rgba(0,0,0,.065);
    }

    .rvpd-single-card::before {
        left: 14px;
        right: 14px;
    }

    .rvpd-single-card .rvpd-single-topline {
        margin-bottom: 13px;
    }

    .rvpd-single-card .rvpd-single-heading {
        margin-bottom: 12px;
    }

    .rvpd-single-card .rvpd-single-heading h4 {
        font-size: 18px !important;
    }

    .rvpd-single-card .rvpd-single-heading p {
        max-width: 310px;
        font-size: 10.5px !important;
    }

    .rvpd-process-strip {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 9px;
        border-radius: 13px;
    }

    .rvpd-process-step {
        min-height: 40px;
        padding: 5px 7px;
        border-radius: 10px;
        background: #fafafa;
    }

    .rvpd-process-number {
        flex-basis: 26px;
        width: 26px;
        height: 26px;
    }

    .rvpd-process-copy strong {
        white-space: normal;
        font-size: 9.5px;
    }

    .rvpd-process-copy small {
        font-size: 8px;
    }

    .rvpd-process-line {
        display: none;
    }

    .rvpd-single-card .rvpd-price-box,
    .rvpd-single-card .rvpd-price-box:first-child {
        min-height: 55px;
        border-radius: 12px;
        box-shadow: none;
    }

    .rvpd-single-card .rvpd-price-box.is-primary {
        box-shadow: 0 8px 18px rgba(0,0,0,.11);
    }

    .rvpd-checkout-confirmation {
        padding: 14px 12px;
        border-radius: 16px;
    }

    .rvpd-checkout-confirmation-head {
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 7px;
    }

    .rvpd-checkout-confirmation-values {
        grid-template-columns: 1fr !important;
    }

    .rvpd-checkout-confirmation-values > div {
        display: grid;
        grid-template-columns: 1fr auto;
        align-items: center;
        min-height: 50px;
        padding: 9px 10px;
        text-align: left;
    }

    .rvpd-checkout-confirmation-values span {
        margin: 0;
    }

    .rvpd-checkout-confirmation-values strong {
        text-align: right;
    }

    .rvpd-checkout-agreement-label {
        padding: 11px 11px 11px 40px !important;
        font-size: 9px !important;
    }

    .rvpd-customer-order-card {
        padding: 16px 13px;
        border-radius: 17px;
    }

    .rvpd-customer-order-head h3 {
        font-size: 18px;
    }

    .rvpd-customer-order-values {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 380px) {
    .rvpd-single-card {
        padding-left: 11px;
        padding-right: 11px;
    }

    .rvpd-single-card .rvpd-single-badge {
        padding-left: 11px;
        padding-right: 11px;
        font-size: 8.5px;
    }

    .rvpd-single-card .rvpd-expected-date {
        font-size: 9px;
    }
}

/* ============================================================
 * v1.6.1 — Archive 24% OFF campaign badge
 * ============================================================ */
.woocommerce ul.products li.product .rvpd-loop-discount-badge,
.woocommerce-page ul.products li.product .rvpd-loop-discount-badge {
    position: absolute;
    z-index: 7;
    top: 13px;
    right: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 33px;
    padding: 8px 13px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 999px;
    background: linear-gradient(135deg,#22c55e 0%,#16a34a 100%);
    color: #fff;
    box-shadow: 0 9px 26px rgba(22,163,74,.22);
    font-size: 9px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .055em;
    white-space: nowrap;
    pointer-events: none;
}

@media (max-width: 767px) {
    .woocommerce ul.products li.product .rvpd-loop-discount-badge,
    .woocommerce-page ul.products li.product .rvpd-loop-discount-badge {
        top: 9px;
        right: 9px;
        min-height: 28px;
        padding: 6px 10px;
        font-size: 8.5px;
    }
}
