/* Original product.php inline rules preserved intact. */
/* Luxury Trust Badges Grid Styling */
.luxury-trust-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    background: #fcfbfa;
    border: 1px solid #e8dfd3;
    padding: 16px;
    border-radius: 12px;
}

.trust-card {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #ffffff;
    padding: 10px 14px;
    border-radius: 8px;
    border: 1px solid #f0e9df;
    box-shadow: 0 2px 6px rgba(0,0,0,0.02);
    transition: all 0.3s ease;
}

.trust-card:hover {
    border-color: #dfab00;
    transform: translateY(-2px);
}

.trust-icon {
    width: 38px;
    height: 38px;
    background: #fdf8eb;
    color: #b8860b;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.trust-icon.wa-icon {
    background: #eafaf1;
    color: #25d366;
}

.trust-info {
    display: flex;
    flex-direction: column;
}

.trust-info strong {
    font-size: 13px;
    color: #222222;
    font-weight: 600;
    line-height: 1.2;
}

.trust-info small {
    font-size: 11px;
    color: #777777;
    margin-top: 2px;
}

/* Mobile Responsive */
@media (max-width: 576px) {
    .luxury-trust-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 8px;
        padding: 12px;
    }
}
/* Urgency Elements Custom Styling */
.urgency-timer-card {
    background: #fff8f8;
    border: 1px dashed #dc3545;
    border-radius: 8px;
}
.timer-badge {
    background: #111;
    color: #dfab00;
    padding: 6px 10px;
    border-radius: 6px;
    min-width: 42px;
    display: inline-block;
}
.pulse-icon {
    width: 10px;
    height: 10px;
    background-color: #28a745;
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.7);
    animation: pulse 1.5s infinite;
}
@keyframes pulse {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.7); }
    70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(40, 167, 69, 0); }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(40, 167, 69, 0); }
}
.mobile-sticky-order-bar {
    z-index: 1050;
}

/* Estimated Delivery Timeline */
.delivery-timeline {
    background: #fcfbfa;
    border: 1px solid #e8dfd3;
    border-radius: 12px;
    padding: 18px 14px;
    margin-top: 20px;
}

.delivery-timeline-title {
    font-size: 14px;
    font-weight: 700;
    color: #222;
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.delivery-timeline-title i {
    color: #b8860b;
}

.delivery-steps {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
}

.delivery-step {
    flex: 1;
    text-align: center;
    position: relative;
    z-index: 2;
}

.delivery-step-icon {
    width: 38px;
    height: 38px;
    margin: 0 auto 8px;
    border-radius: 50%;
    background: #fdf8eb;
    border: 1px solid #dfab00;
    color: #b8860b;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

.delivery-step strong {
    display: block;
    font-size: 11px;
    color: #222;
    font-weight: 700;
    line-height: 1.3;
}

.delivery-step small {
    display: block;
    font-size: 10px;
    color: #777;
    margin-top: 3px;
    line-height: 1.3;
}

.delivery-line {
    position: absolute;
    top: 19px;
    left: 12%;
    right: 12%;
    height: 1px;
    background: #dfab00;
    z-index: 1;
}

.delivery-note {
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid #eee7dd;
    text-align: center;
    font-size: 11px;
    color: #666;
}

.delivery-note strong {
    color: #222;
}

@media (max-width: 576px) {
    .delivery-timeline {
        padding: 15px 8px;
    }

    .delivery-step-icon {
        width: 34px;
        height: 34px;
        font-size: 12px;
    }

    .delivery-step strong {
        font-size: 10px;
    }

    .delivery-step small {
        font-size: 9px;
    }

    .delivery-line {
        top: 17px;
        left: 13%;
        right: 13%;
    }
}


/* SANASHA AJAX SIDE CART */
.sanasha-cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:1090;opacity:0;visibility:hidden;transition:.28s ease}
.sanasha-cart-overlay.is-open{opacity:1;visibility:visible}
.sanasha-cart-drawer{position:fixed;top:0;right:0;width:min(430px,100vw);height:100vh;background:#050505;color:#fff;z-index:1100;transform:translateX(100%);transition:transform .32s ease;display:flex;flex-direction:column;box-shadow:-10px 0 35px rgba(0,0,0,.25)}
.sanasha-cart-drawer.is-open{transform:translateX(0)}
.sanasha-cart-header{padding:25px 28px 18px;border-bottom:1px solid #3b3b3b;display:flex;justify-content:space-between;align-items:flex-start}
.sanasha-cart-header h2{margin:0;font-size:25px;font-weight:400;letter-spacing:3px}
.sanasha-cart-header small{color:#a9a9a9;letter-spacing:.6px}
.sanasha-cart-close{border:0;background:transparent;color:#fff;font-size:36px;line-height:1;font-weight:200;cursor:pointer;padding:0}
.sanasha-cart-body{flex:1;overflow-y:auto;padding:20px 28px}
.sanasha-cart-loading,.sanasha-cart-empty{min-height:240px;display:flex;align-items:center;justify-content:center;text-align:center;color:#aaa}
.sanasha-cart-item{display:grid;grid-template-columns:78px 1fr auto;gap:14px;padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #303030}
.sanasha-cart-item img{width:78px;height:96px;object-fit:cover;background:#eee}
.sanasha-cart-item-name{color:#fff;font-size:14px;line-height:1.45;margin-bottom:6px}
.sanasha-cart-item-price{color:#ddd;font-size:13px}
.sanasha-cart-line-total{color:#fff;font-size:14px;font-weight:600;white-space:nowrap}
.sanasha-cart-qty{display:flex;align-items:center;width:max-content;border:1px solid #555;margin-top:12px}
.sanasha-cart-qty button{width:28px;height:28px;border:0;background:#111;color:#fff;font-size:16px;cursor:pointer}
.sanasha-cart-qty span{min-width:30px;text-align:center;font-size:13px}
.sanasha-cart-remove{background:none;border:0;color:#999;padding:0;margin-top:8px;font-size:11px;text-decoration:underline;cursor:pointer}
.sanasha-cart-footer{padding:20px 28px 24px;border-top:1px solid #3b3b3b;background:#050505}
.sanasha-cart-subtotal{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;letter-spacing:2px;font-size:13px}
.sanasha-cart-subtotal strong{font-size:18px;letter-spacing:0}
.sanasha-cart-note{color:#aaa;font-size:12px;line-height:1.5;text-align:center;margin:0 0 18px}
.sanasha-checkout-btn{display:flex;justify-content:center;align-items:center;min-height:48px;background:#fff;color:#111!important;text-decoration:none!important;letter-spacing:3px;font-size:13px;font-weight:700;transition:.2s}
.sanasha-checkout-btn:hover{background:#eee}.sanasha-checkout-btn.is-disabled{opacity:.4;pointer-events:none}
.sanasha-view-cart{display:block;color:#aaa;text-align:center;margin-top:13px;font-size:12px;text-decoration:underline}
.sanasha-coupon-box{margin:0 0 16px;padding:13px 14px;border:1px solid #3b3b3b;background:#0b0b0b}
.sanasha-coupon-title{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:9px;color:#ddd}
.sanasha-coupon-form{display:flex;gap:7px}
.sanasha-coupon-form input{flex:1;min-width:0;height:39px;border:1px solid #555;background:#fff;color:#111;padding:0 11px;font-size:12px;outline:none}
.sanasha-coupon-form button{height:39px;border:1px solid #fff;background:#fff;color:#111;padding:0 13px;font-size:11px;font-weight:700;letter-spacing:1px;cursor:pointer}
.sanasha-coupon-form button:disabled{opacity:.55;cursor:wait}
.sanasha-coupon-message{font-size:11px;margin-top:8px;min-height:15px;line-height:1.35}
.sanasha-coupon-message.success{color:#86d39b}.sanasha-coupon-message.error{color:#ff9b9b}
.sanasha-cart-discount{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;color:#8bd39a;font-size:13px}
.sanasha-cart-discount button{border:0;background:none;color:#aaa;text-decoration:underline;font-size:10px;cursor:pointer;padding:0}
.sanasha-cart-total{display:flex;justify-content:space-between;align-items:center;margin:10px 0 12px;padding-top:11px;border-top:1px solid #303030;letter-spacing:1.4px;font-size:13px}
.sanasha-cart-total strong{font-size:19px;letter-spacing:0}
body.sanasha-cart-open{overflow:hidden}
@media(max-width:576px){.sanasha-cart-header{padding:20px 20px 15px}.sanasha-cart-body{padding:18px 20px}.sanasha-cart-footer{padding:16px 20px 20px}.sanasha-cart-item{grid-template-columns:68px 1fr auto;gap:11px}.sanasha-cart-item img{width:68px;height:86px}}
.product-size-btn{min-width:54px;border:1px solid #cfc6ba;background:#fff;padding:9px 14px;border-radius:7px;font-weight:600;cursor:pointer;transition:.2s}.product-size-btn:hover,.product-size-btn.active{background:#111;color:#fff;border-color:#111}.product-size-btn.out-of-stock{opacity:.45;text-decoration:line-through;cursor:not-allowed}.size-guide-link{border:0;background:none;padding:0;color:#8a6500;text-decoration:underline;font-size:13px}.size-guide-box{display:none;background:#fcfbfa;border:1px solid #e8dfd3;border-radius:10px;padding:14px;margin-top:12px}.size-guide-box.is-open{display:block}.size-guide-table th,.size-guide-table td{font-size:12px;white-space:nowrap}.product-meta-line{font-size:13px;color:#555}.size-help{font-size:12px;color:#666}.order-note-input{max-width:100%;}

/* Customer review images + progressive review list */
.review-item-extra{display:none;}
.review-images{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;}
.review-image-thumb{width:78px;height:78px;object-fit:cover;border-radius:8px;border:1px solid #e7e0d7;cursor:pointer;transition:.2s ease;background:#fff;}
.review-image-thumb:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.12);}
.review-see-more{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:#8a6500;font-weight:700;padding:4px 0;text-decoration:underline;cursor:pointer;}
.review-upload-help{font-size:11px;color:#777;margin-top:6px;}
@media(max-width:576px){.review-image-thumb{width:68px;height:68px;}}



/* SANASHA INLINE COMPACT PURCHASE GUARANTEE V4 */

/* Product specs: clean compact strip */
.product-detail-page .product-spec-strip{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:stretch !important;
    gap:8px !important;
    margin:12px 0 16px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    overflow:visible !important;
}
.product-detail-page .product-spec-item{
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
    width:auto !important;
    min-width:125px !important;
    padding:8px 10px !important;
    background:#fff !important;
    border:1px solid #e3e3e3 !important;
    border-radius:7px !important;
    box-shadow:none !important;
}
.product-detail-page .product-spec-icon{
    width:27px !important;
    height:27px !important;
    min-width:27px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#eefafa !important;
    color:#01949a !important;
    font-size:11px !important;
}
.product-detail-page .product-spec-text{
    display:flex !important;
    flex-direction:column !important;
    min-width:0 !important;
    line-height:1.15 !important;
}
.product-detail-page .product-spec-text small{
    display:block !important;
    font-size:8px !important;
    color:#888 !important;
    text-transform:uppercase !important;
    letter-spacing:.5px !important;
    margin-bottom:2px !important;
}
.product-detail-page .product-spec-text strong{
    display:block !important;
    font-size:11px !important;
    line-height:1.2 !important;
    color:#111 !important;
    font-weight:700 !important;
}

/* Form labels and spacing */
.product-detail-page .product-purchase-form .mb-3{
    margin-bottom:13px !important;
}
.product-detail-page .product-size-heading{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:10px !important;
    margin-bottom:7px !important;
}
.product-detail-page .product-purchase-form label{
    font-size:13px !important;
    margin-bottom:5px !important;
}

/* Size buttons */
.product-detail-page .product-size-btn{
    min-width:44px !important;
    width:auto !important;
    height:38px !important;
    padding:0 12px !important;
    border-radius:6px !important;
    font-size:12px !important;
}

/* Note stays full-width but not tall */
.product-detail-page .order-note-input{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:39px !important;
    min-height:39px !important;
    padding:7px 10px !important;
    border-radius:6px !important;
    font-size:12px !important;
    box-sizing:border-box !important;
}

/* IMPORTANT: quantity must remain small */
.product-detail-page input.product-qty-input,
.product-detail-page .product-purchase-form input[name="quantity"]{
    display:block !important;
    width:90px !important;
    max-width:90px !important;
    min-width:90px !important;
    height:39px !important;
    min-height:39px !important;
    padding:6px 10px !important;
    margin:0 !important;
    border-radius:6px !important;
    font-size:12px !important;
    box-sizing:border-box !important;
    flex:none !important;
}

/* Buttons: compact, no overlap */
.product-detail-page .product-action-row{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:100% !important;
    margin:14px 0 0 !important;
    padding:0 !important;
    clear:both !important;
}
.product-detail-page .product-action-row .product-btn,
.product-detail-page .product-action-row button.product-btn,
.product-detail-page .product-action-row a.product-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 auto !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    height:42px !important;
    min-height:42px !important;
    padding:0 17px !important;
    margin:0 !important;
    border-radius:22px !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:.2px !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
    transform:none !important;
    box-shadow:none !important;
}
.product-detail-page #addToCartButton{
    width:auto !important;
    min-width:148px !important;
}
.product-detail-page #buyNowButton{
    width:auto !important;
    min-width:125px !important;
}
.product-detail-page .product-wishlist-btn{
    width:auto !important;
    min-width:145px !important;
    grid-column:auto !important;
}

/* Delivery always starts on its own row */
.product-detail-page .product-delivery-wrap{
    display:block !important;
    width:100% !important;
    clear:both !important;
    margin-top:15px !important;
}

/* Desktop: keep all purchase buttons in a neat row where space allows */
@media (min-width:768px){
    .product-detail-page .product-action-row{
        flex-wrap:wrap !important;
    }
}

/* Mobile */
@media (max-width:767.98px){
    .product-detail-page .product-spec-strip{
        gap:6px !important;
    }
    .product-detail-page .product-spec-item{
        min-width:calc(50% - 3px) !important;
        flex:1 1 calc(50% - 3px) !important;
        padding:7px 8px !important;
    }
    .product-detail-page .product-spec-model{
        flex-basis:100% !important;
        min-width:100% !important;
    }

    .product-detail-page input.product-qty-input,
    .product-detail-page .product-purchase-form input[name="quantity"]{
        width:82px !important;
        max-width:82px !important;
        min-width:82px !important;
        height:38px !important;
    }

    .product-detail-page .product-action-row{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:8px !important;
        width:100% !important;
    }
    .product-detail-page .product-action-row .product-btn,
    .product-detail-page .product-action-row button.product-btn,
    .product-detail-page .product-action-row a.product-btn{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        height:41px !important;
        min-height:41px !important;
        padding:0 8px !important;
        font-size:10.5px !important;
    }
    .product-detail-page .product-wishlist-btn{
        grid-column:1 / -1 !important;
        width:100% !important;
    }
}

/* Very narrow phones: avoid any collision */
@media (max-width:360px){
    .product-detail-page .product-action-row{
        grid-template-columns:1fr !important;
    }
    .product-detail-page .product-wishlist-btn{
        grid-column:1 !important;
    }
}
/* END SANASHA INLINE COMPACT PURCHASE GUARANTEE V4 */

/* ==========================================
   SANASHA MOBILE + DESKTOP ALIGNMENT PATCH
   Product page only
========================================== */

.product-detail-page .row.g-5 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
}

.product-detail-page .row.g-5 > .col-md-6 {
    min-width: 0 !important;
}

.product-detail-page .product-gallery-box {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    transform: none !important;
}

.product-detail-page #mainProductImage {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 600px !important;
    object-fit: contain !important;
    transform: none !important;
}

.product-detail-page .thumbnail-row {
    display: flex !important;
    flex-wrap: nowrap !important;
    max-width: 100% !important;
    overflow-x: auto !important;
}

.product-detail-page .product-info-column {
    min-width: 0 !important;
    overflow-wrap: break-word;
}

/* MOBILE DEVICES */

@media (max-width: 767.98px) {

    .product-detail-page {
        padding-top: 16px !important;
        padding-bottom: 85px !important;
    }

    .product-detail-page > .container {
        width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .product-detail-page .row.g-5 {
        --bs-gutter-x: 20px;
        --bs-gutter-y: 18px;
    }

    .product-detail-page .row.g-5 > .col-md-6 {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .product-detail-page #mainProductImage {
        max-height: 450px !important;
    }

    .product-detail-page .product-info-column {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    .product-detail-page .product-info-column h1 {
        font-size: clamp(23px, 6vw, 30px) !important;
        line-height: 1.25 !important;
    }

    .product-detail-page .product-action-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .product-detail-page .product-action-row .product-btn {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        white-space: normal !important;
        text-align: center !important;
        line-height: 1.2 !important;
        padding: 8px !important;
        height: auto !important;
        min-height: 44px !important;
    }

    .product-detail-page .product-wishlist-btn {
        grid-column: 1 / -1 !important;
    }

    .product-detail-page .delivery-timeline {
        max-width: 100% !important;
        overflow: hidden;
    }

    .product-detail-page .delivery-steps {
        width: 100%;
        min-width: 0;
    }

    .product-detail-page .delivery-step {
        min-width: 0;
    }

    .sanasha-cart-drawer {
        width: 100vw !important;
        max-width: 100vw !important;
    }
}

@media (max-width: 360px) {

    .product-detail-page .product-action-row {
        grid-template-columns: 1fr !important;
    }

    .product-detail-page .product-wishlist-btn {
        grid-column: 1 !important;
    }
}
