/**
 * Interlude Booking System - Frontend Styles
 * Prevents text breaking and ensures proper display of booking information
 */

/* ===== PREVENT BREAKING WORDS AND NUMBERS IN ORDER SUMMARY ===== */
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table dd,
.woocommerce-mini-cart-item dd,
.cart-item-data {
    /* Prevent breaking words in middle */
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
}

/* Keep numbers together */
.woocommerce-Price-amount,
.amount,
.price {
    white-space: nowrap !important;
}

/* Keep date and time together */
.woocommerce-checkout-review-order-table .booking-date,
.woocommerce-checkout-review-order-table .booking-time {
    white-space: nowrap !important;
}

/* ===== SPECIFIC FIX FOR TICKET BREAKDOWN ===== */
.woocommerce-checkout-review-order-table .booking-tickets dd {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.woocommerce-checkout-review-order-table .booking-tickets dd>* {
    white-space: nowrap;
}

/* ===== CART PAGE FIXES ===== */
.woocommerce-cart-form .cart_item dd {
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
}

/* ===== MINI CART FIXES ===== */
/* Prevent awkward breaks in mini cart items */
.woocommerce-mini-cart-item .product-name {
    word-break: keep-all !important;
}

.woocommerce-mini-cart-item dl.variation dt {
    white-space: nowrap !important;
}

/* ===== MOBILE RESPONSIVE ADJUSTMENTS ===== */
@media screen and (max-width: 480px) {

    /* Smaller font sizes for very small screens */
    .woocommerce-mini-cart-item dl.variation {
        font-size: 12px !important;
    }

    .woocommerce-checkout-review-order-table td,
    .woocommerce-checkout-review-order-table dd {
        font-size: 13px !important;
    }
}

@media screen and (max-width: 768px) and (min-width: 481px) {

    /* Medium adjustments for tablets */
    .woocommerce-mini-cart-item dl.variation,
    .woocommerce-checkout-review-order-table {
        font-size: 13px !important;
    }
}

/* ===== ENSURE PROPER LINE HEIGHT ===== */
.woocommerce-checkout-review-order-table dd,
.woocommerce-mini-cart-item dd,
.cart-item-data {
    line-height: 1.6 !important;
}

/* ===== PREVENT ORPHANED CURRENCY SYMBOLS ===== */
/* Keep currency symbol with amount */
.woocommerce-Price-amount bdi {
    white-space: nowrap !important;
}

/* ===== ORDER CONFIRMATION PAGE ===== */
.woocommerce-order-details .woocommerce-table__product-name dd,
.woocommerce-order-details dl.variation dd {
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
}

/* ===== ORDER RECEIVED PAGE FIXES ===== */
/* Force thank you page order total to match gray color */
.woocommerce-order-overview__total .woocommerce-Price-amount,
.woocommerce-order-overview__total .woocommerce-Price-amount bdi,
.woocommerce-order-overview__total strong,
.woocommerce-order-overview__total strong .amount {
    color: #65636D !important;
    font-weight: 600 !important;
}

/* Remove any bold styling */
.woocommerce-order-overview__total strong {
    font-weight: normal !important;
}

/* Make payment method label same size as other labels */
body .woocommerce-table--order-details tfoot th {
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #65636D !important;
    line-height: 22px !important;
}

/* Style payment method text to match price format */
body .woocommerce-table--order-details tfoot td {
    color: rgb(33, 31, 38) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 22px !important;
}

/* Remove transaction ID from payment method display */
body .woocommerce-table--order-details .method {
    font-weight: 600 !important;
    color: rgb(33, 31, 38) !important;
    font-size: 18px !important;
    line-height: 22px !important;
}