/* SiMorgh WooCommerce commerce layer. */
.woocommerce .site-main, .woocommerce-page .site-main { padding-top: clamp(1.5rem, 4vw, 3rem); }
.simorgh-shop-intro { display: flex; gap: 1.5rem; align-items: end; justify-content: space-between; margin-bottom: 2rem; padding: 1.25rem 0; border-bottom: 1px solid var(--simorgh-color-border, #e5e7eb); }
.simorgh-shop-intro__copy { max-width: 44rem; color: var(--sm-color-muted, #667065); }
.simorgh-archive-header { margin-bottom: 1rem; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 0 0 2rem; padding: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { width: auto !important; float: none !important; margin: 0 !important; padding: 1rem; border: 1px solid rgba(29,33,28,.09); border-radius: 1rem; background: #fff; box-shadow: 0 10px 30px rgba(25,30,23,.05); }
.woocommerce ul.products li.product a img { border-radius: .8rem; }
.simorgh-product-badges { min-height: 1.7rem; display: flex; gap: .4rem; flex-wrap: wrap; margin-bottom: .35rem; }
.simorgh-badge { display: inline-flex; align-items: center; padding: .25rem .55rem; border-radius: 999px; background: #e9eedf; color: #3e5735; font-size: .72rem; font-weight: 800; }
.simorgh-badge--sale { background: #f4e6c1; color: #604b16; }
.simorgh-product-actions { display: flex; gap: .35rem; margin-top: .65rem; }
.simorgh-product-action { width: 2.35rem; height: 2.35rem; border: 1px solid #dfe3dc; border-radius: .7rem; background: #fff; cursor: pointer; }
.simorgh-product-action.is-active { background: #e9eedf; border-color: #a8bd88; color: #30472a; }
.simorgh-quick-view { margin-inline-start: auto; }
.simorgh-modal { position: fixed; inset: 0; z-index: 1000; display: none; }
.simorgh-modal.is-open { display: block; }
.simorgh-modal__backdrop { position: absolute; inset: 0; background: rgba(17,20,16,.62); backdrop-filter: blur(4px); }
.simorgh-modal__dialog { position: relative; width: min(920px, calc(100% - 2rem)); max-height: calc(100vh - 2rem); overflow: auto; margin: 1rem auto; padding: 2rem; border-radius: 1.25rem; background: #fff; }
.simorgh-modal__close { position: absolute; inset-block-start: .75rem; inset-inline-end: .75rem; width: 2.5rem; height: 2.5rem; border: 0; border-radius: 50%; background: #f1f3ef; font-size: 1.5rem; cursor: pointer; }
.simorgh-modal__loading, .simorgh-modal__error { padding: 3rem; text-align: center; }
.simorgh-quick-view-card { display: grid; gap: 1.5rem; grid-template-columns: 1fr; }
.simorgh-quick-view-card__media img { width: 100%; border-radius: 1rem; }
.simorgh-quick-view-card__content h2 { margin-top: .3rem; font-size: clamp(1.7rem, 4vw, 2.5rem); }
.simorgh-quick-view-card__price { margin: 1rem 0; font-size: 1.35rem; font-weight: 900; }
.simorgh-quick-view-card__actions { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
@media (min-width: 640px) { .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 960px) { .woocommerce ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; } .simorgh-quick-view-card { grid-template-columns: .9fr 1.1fr; align-items: center; } }
@media (prefers-reduced-motion: reduce) { .simorgh-modal__backdrop { backdrop-filter: none; } }

/* 1.2 Product experience: AJAX add-to-cart states. */
.simorgh-ajax-add-to-cart.is-loading { pointer-events:none; opacity:.65; }
.simorgh-ajax-add-to-cart.is-added { transform:translateY(-1px); }

/* 1.2.2 stability: real quantity controls and visible cart action. */
.simorgh-product-actions { align-items: center; flex-wrap: wrap; }
.simorgh-quantity { display: inline-flex; align-items: center; border: 1px solid #dfe3dc; border-radius: .7rem; overflow: hidden; background: #fff; }
.simorgh-qty-button { width: 2rem; height: 2.25rem; border: 0; background: #f5f7f3; cursor: pointer; font-size: 1.05rem; line-height: 1; }
.simorgh-qty-button:hover, .simorgh-qty-button:focus-visible { background: #e9eedf; }
.simorgh-qty-input { width: 2.5rem; height: 2.25rem; border: 0; border-inline: 1px solid #e1e5de; text-align: center; background: #fff; font-weight: 800; -moz-appearance: textfield; }
.simorgh-qty-input::-webkit-outer-spin-button, .simorgh-qty-input::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
.simorgh-ajax-add-to-cart { width: 100%; margin-top: .65rem !important; text-align: center; }
.site-header__actions { display: flex; align-items: center; margin-inline-start: auto; }
.site-header__cart { display: inline-flex; align-items: center; gap: .45rem; padding: .5rem .7rem; border: 1px solid var(--simorgh-color-border, #e5e7eb); border-radius: .75rem; text-decoration: none; font-weight: 800; }
.site-header__cart b { min-width: 1.4rem; padding: .12rem .35rem; border-radius: 999px; background: #e9eedf; text-align: center; font-size: .75rem; }
@media (max-width: 639px) {
 .site-header__cart span:not([aria-hidden]) { display: none; }
 .site-header__cart { padding: .45rem .55rem; }
}

/* 1.6.2 product purchase clarity. */
.simorgh-price-missing { margin: .55rem 0; font-size: .9rem; font-weight: 800; color: #8a3f35; }
.woocommerce ul.products li.product .price { display: block; margin: .45rem 0 .65rem; font-size: 1.05rem; font-weight: 900; color: #263d28; }
.woocommerce ul.products li.product .price del { opacity: .6; font-weight: 600; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.simorgh-product-actions { min-height: 2.4rem; }
