/* =================================================================
   TajShahi × WooCommerce — WooCommerce ki apni markup ko design jaisa banana.
   (WooCommerce ki default CSS band hai; sab yahan aur style.css mein.)
   ================================================================= */

/* ---------- Basics ---------- */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.logo-img img { height: 36px; width: auto; }
.woocommerce-Price-currencySymbol { margin-right: .1em; }
del { color: var(--muted); font-weight: 400; margin-right: 6px; }
ins { text-decoration: none; }
.clear { clear: both; }
.required { color: #b3261e; text-decoration: none; border: 0; }
.optional { color: var(--muted); font-size: 11px; }
.btn.loading, .button.loading { pointer-events: none; opacity: .7; }
.btn.loading::after, .card-add.loading::after { content: ""; position: relative; width: 14px; height: 14px; margin-left: 8px; border-radius: 50%; border: 2px solid currentColor; border-right-color: transparent; animation: spin .7s linear infinite; }
.btn.disabled, .button.disabled, .btn:disabled { opacity: .45; cursor: not-allowed; }
.u { cursor: pointer; }
.shell > .woocommerce { min-width: 0; }
.single-product > .woocommerce-notices-wrapper:not(:empty) { padding: 100px var(--gutter) 0; }
.single-product > .woocommerce-notices-wrapper:not(:empty) + .pdp { padding-top: 24px; }

/* ---------- Notices ---------- */
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews, .wc-block-components-notice-banner {
  list-style: none; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px;
  padding: 16px 20px; margin: 0 0 20px; border-radius: 16px; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line);
  font-size: 14px; animation: rise-in .5s var(--ease);
}
.woocommerce-message { box-shadow: inset 4px 0 0 #2e7d4a, inset 0 0 0 1px var(--line); }
.woocommerce-info { box-shadow: inset 4px 0 0 var(--gold), inset 0 0 0 1px var(--line); }
.woocommerce-error { box-shadow: inset 4px 0 0 #b3261e, inset 0 0 0 1px var(--line); flex-direction: column; align-items: flex-start; }
.woocommerce-error li { list-style: none; }
.woocommerce-message .button, .woocommerce-info .button, .woocommerce-message a.wc-forward {
  order: 2; display: inline-flex; align-items: center; height: 38px; padding: 0 16px; border-radius: 99px; background: var(--ink); color: var(--bg); font-size: 12px;
}
.woocommerce-info a:not(.button), .woocommerce-message a:not(.button), .woocommerce-error a { text-decoration: underline; text-underline-offset: 3px; }

/* ---------- Toast (AJAX errors) ---------- */
.ts-toast { position: fixed; left: 50%; bottom: 24px; z-index: 400; transform: translate(-50%, 140%); padding: 14px 22px; border-radius: 99px; background: var(--ink); color: var(--bg); font-size: 14px; box-shadow: 0 20px 40px -20px rgba(0, 0, 0, .5); transition: transform .5s var(--ease); max-width: calc(100% - 32px); }
.ts-toast.show { transform: translate(-50%, 0); }
.ts-toast.bad { background: #b3261e; }

/* ---------- Form rows (woocommerce_form_field) ---------- */
.form-row { display: grid; gap: 6px; margin: 0; align-content: start; }
.form-row label { font-size: 12px; font-weight: 500; }
.form-row label.checkbox, .woocommerce-form__label-for-checkbox { display: flex; align-items: center; gap: 10px; font-size: 13px; cursor: pointer; }
.woocommerce-input-wrapper { display: block; }
.fields .form-row-wide, .fields .notes, .fields #billing_address_1_field, .fields #billing_address_2_field, .fields #order_comments_field, .fields #billing_country_field { grid-column: 1 / -1; }
.form-row.woocommerce-invalid input.input-text, .form-row.woocommerce-invalid select, .form-row.woocommerce-invalid .select2-selection { border-color: #b3261e; }
.form-row.woocommerce-validated input.input-text { border-color: #b9d3bf; }
.form-row .description { font-size: 12px; color: var(--muted); }
input[type=checkbox], input[type=radio] { width: 18px; height: 18px; min-height: 0; padding: 0; flex: none; accent-color: var(--ink); appearance: auto; -webkit-appearance: auto; }
textarea.input-text { min-height: 90px; }
.woocommerce-form__input-checkbox { margin: 0; }
#billing_country_field .woocommerce-input-wrapper strong { font-weight: 600; }

/* select2 / selectWoo (province / country dropdown) */
.select2-container { width: 100% !important; }
.select2-container .select2-selection--single { height: 48px; border: 1px solid var(--line); border-radius: 14px; background: var(--bg); display: flex; align-items: center; }
.co-block .select2-container .select2-selection--single { background: var(--bg); }
.select2-container .select2-selection__rendered { padding: 0 14px !important; line-height: 48px !important; color: var(--ink) !important; }
.select2-container .select2-selection__arrow { height: 46px !important; right: 10px !important; }
.select2-dropdown { border: 1px solid var(--line) !important; border-radius: 14px !important; overflow: hidden; box-shadow: 0 20px 40px -20px rgba(0, 0, 0, .25); }
.select2-results__option--highlighted { background: var(--ink) !important; color: var(--bg) !important; }
.select2-search__field { border-radius: 10px !important; min-height: 38px; }

/* ---------- Product cards (shop) ---------- */
.card-tag--out { left: auto; right: 14px; background: var(--ink); color: var(--bg); }
.card .card-meta .price, .card-meta p .amount { color: var(--muted); }
span.card-add { pointer-events: none; }
.shop .shop-head { margin-bottom: clamp(24px, 4vw, 48px); }
.shop .shop-head h1 { font: 700 clamp(40px, 6vw, 88px)/.9 var(--display); letter-spacing: -.04em; }
.shop .shop-head p { max-width: 340px; color: var(--muted); }
.shop-grid { grid-template-columns: repeat(4, 1fr); }
.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 36px; }
.chips a { padding: 10px 18px; border-radius: 99px; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); font-size: 13px; transition: .3s var(--ease); }
.chips a small { color: var(--muted); margin-left: 4px; }
.chips a:hover { box-shadow: inset 0 0 0 1px var(--ink); }
.chips a.on { background: var(--ink); color: var(--bg); box-shadow: none; }
.chips a.on small { color: #a9a39a; }
.pager { margin-top: 48px; }
.pager ul, .woocommerce-pagination ul { list-style: none; display: flex; gap: 6px; justify-content: center; flex-wrap: wrap; }
.pager .page-numbers, .nav-links .page-numbers { display: grid; place-items: center; min-width: 42px; height: 42px; padding: 0 12px; border-radius: 99px; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); }
.pager .page-numbers.current { background: var(--ink); color: var(--bg); }
.related .grid.grid-4, .grid.grid-4 { grid-template-columns: repeat(4, 1fr); }
ul.products { list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }

/* ---------- Product page ---------- */
.pdp-price .amount, .pdp-price { font: 700 28px var(--display); }
.pdp-price del .amount { font-size: 18px; }
.pdp-desc p { margin-bottom: 10px; }
.pdp-more { margin-top: 24px; border-top: 1px solid var(--line); }
.pdp-more summary { font-size: 15px; padding: 16px 0; }
.pdp-more div { color: #4a4640; padding-bottom: 12px; }
.pdp-buy .swatches { justify-content: flex-start; margin: 0 0 24px; }
.pdp-buy .swatch[aria-current] { pointer-events: none; }
.pdp-buy .variations { display: grid; gap: 4px; }
.pdp-buy .single_variation_wrap .woocommerce-variation-price { display: none; }
.pdp-buy .woocommerce-variation-availability, .pdp-buy .stock { font-size: 13px; margin: -10px 0 14px; }
.pdp-buy .stock.out-of-stock { color: #b3261e; font-weight: 600; }
.pdp-buy .stock.in-stock { color: #2e7d4a; }
.pdp-buy .woocommerce-variation-description { font-size: 13px; color: var(--muted); }
.qty-row { grid-template-columns: 120px 1fr; }
.qty-row .single_add_to_cart_button { width: 100%; }
.quantity.qty input { width: 40px; min-height: 0; padding: 0; border: 0; background: transparent; text-align: center; font: 600 15px var(--body); -moz-appearance: textfield; box-shadow: none; }
.quantity.qty input::-webkit-outer-spin-button, .quantity.qty input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.quantity.qty input:focus { box-shadow: none; }
.qty .qty-btn { width: 32px; height: 32px; font-size: 18px; border-radius: 50%; }
.qty .qty-btn:hover { background: var(--bg); }
.quantity.hidden { display: none; }
.qty-row:has(.quantity.hidden) { grid-template-columns: 1fr; }
.ts-buy-now { margin-top: 10px; }
.ts-buy-now.btn-ghost::before { background: var(--ink); }
.ts-buy-now.btn-ghost:hover { color: var(--bg); }
.stage::before { z-index: 0; }

/* ---------- Cart drawer ---------- */
.ts-drawer-body { flex: 1; display: flex; flex-direction: column; min-height: 0; }
.ts-drawer-body #cartItems { flex: 1; overflow: auto; }
.cart-item.busy { opacity: .4; pointer-events: none; transition: opacity .2s; }
.cart-item img { width: 72px; height: 72px; object-fit: cover; }
.cart-item h4 a:hover { color: var(--gold-text); }
.cart-foot[hidden] { display: none; }
.cart-foot .row .amount { font: inherit; }

/* ---------- Cart page ---------- */
.page-cart .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 400px); gap: clamp(24px, 4vw, 64px); align-items: start; }
.page-cart .woocommerce > .woocommerce-notices-wrapper, .page-cart .woocommerce > .cart-empty, .page-cart .woocommerce > .empty-state, .page-cart .woocommerce > .woocommerce-info { grid-column: 1 / -1; }
.page-cart .woocommerce > .woocommerce-notices-wrapper:empty { display: none; }
.cart-lines .cart-item { grid-template-columns: 110px 1fr auto; padding: 22px 0; align-items: start; }
.cart-lines .product-thumbnail img { width: 110px; height: 110px; border-radius: 16px; }
.cart-lines h4 { font: 700 18px var(--display); margin-bottom: 2px; }
.cart-lines .product-name > p { color: var(--muted); font-size: 13px; margin-bottom: 10px; }
.cart-lines .quantity.qty { display: inline-flex; width: auto; height: 40px; }
.cart-item-end { text-align: right; }
.cart-item-end strong .amount { font-weight: 600; }
.cart-actions { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding-top: 22px; }
.cart-actions .coupon { flex: 1; max-width: 420px; margin: 0; }
.cart-actions .btn-update { opacity: .8; }
.cart-collaterals { position: sticky; top: 100px; }
.cart-collaterals .summary { position: static; }
.sum-table, .woocommerce-checkout-review-order-table { width: 100%; border-collapse: collapse; }
.sum-table th, .sum-table td, .woocommerce-checkout-review-order-table tfoot th, .woocommerce-checkout-review-order-table tfoot td { padding: 9px 0; font-size: 14px; font-weight: 400; text-align: left; vertical-align: top; }
.sum-table td, .woocommerce-checkout-review-order-table tfoot td { text-align: right; }
.sum-table .order-total th, .sum-table .order-total td, .woocommerce-checkout-review-order-table .order-total th, .woocommerce-checkout-review-order-table .order-total td { border-top: 1px solid var(--line); padding-top: 16px; font: 700 20px var(--display); }
.order-total td small, .includes_tax { display: block; font: 400 11px var(--body); color: var(--muted); }
.cart-discount td, .cart-discount th { color: #2e7d4a; }
.woocommerce-remove-coupon { font-size: 11px; color: var(--muted); margin-left: 6px; }
.wc-proceed-to-checkout { margin-top: 10px; }
.wc-proceed-to-checkout .btn { width: 100%; }

/* Shipping methods (cart totals + checkout summary) */
.woocommerce-shipping-totals th { padding-top: 14px !important; }
.woocommerce-shipping-totals td { text-align: left !important; }
.woocommerce-shipping-totals td::before { content: none; }
tr.woocommerce-shipping-totals { display: grid; grid-template-columns: 1fr; }
tr.woocommerce-shipping-totals th, tr.woocommerce-shipping-totals td { display: block; width: 100%; }
#shipping_method { list-style: none; display: grid; gap: 8px; margin-top: 6px; }
#shipping_method li { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--line); background: var(--paper); font-size: 13px; transition: .3s var(--ease); }
#shipping_method li:has(input:checked) { border-color: var(--ink); box-shadow: inset 0 0 0 1px var(--ink); }
#shipping_method li label { flex: 1; display: flex; justify-content: space-between; gap: 10px; cursor: pointer; }
#shipping_method li .amount { font-weight: 600; }
.woocommerce-shipping-destination, .woocommerce-shipping-calculator { font-size: 12px; color: var(--muted); margin-top: 8px; }

/* ---------- Checkout ---------- */
.page-checkout .woocommerce > .woocommerce-notices-wrapper, .page-checkout .woocommerce-form-coupon-toggle, .page-checkout .woocommerce-form-login-toggle { max-width: none; }
.woocommerce-form-coupon-toggle .woocommerce-info, .woocommerce-form-login-toggle .woocommerce-info { justify-content: flex-start; }
form.checkout_coupon, form.woocommerce-form-login.login:not(.auth-card form) { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: end; padding: 20px; margin-bottom: 20px; border-radius: 20px; background: var(--paper); }
form.checkout_coupon p:first-child { grid-column: 1 / -1; color: var(--muted); font-size: 13px; }
form.checkout_coupon .button, .page-checkout form.login .button { height: 48px; padding: 0 22px; border-radius: 99px; background: var(--ink); color: var(--bg); }
.page-checkout form.login { grid-template-columns: 1fr 1fr; }
.page-checkout form.login > p:first-child, .page-checkout form.login .form-row:not(.form-row-first):not(.form-row-last), .page-checkout form.login .lost_password { grid-column: 1 / -1; }
.checkout.woocommerce-checkout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 420px); gap: clamp(24px, 4vw, 64px); align-items: start; }
.checkout .col2-set { display: grid; gap: 18px; }
.checkout .co-block .fields { margin-top: 2px; }
.co-account { padding: 18px 22px; }
.co-account .create-account { display: grid; gap: 12px; }
.co-side { position: sticky; top: 100px; }
.co-side h2 { margin-bottom: 14px; }
.woocommerce-checkout-review-order-table .co-items td { padding: 0 0 14px; }
.woocommerce-checkout-review-order-table .co-item strong .amount { font-weight: 600; }
.woocommerce-checkout-review-order-table tfoot tr:first-child th, .woocommerce-checkout-review-order-table tfoot tr:first-child td { border-top: 1px solid var(--line); padding-top: 16px; }
.blockUI.blockOverlay { background: rgba(244, 242, 238, .6) !important; border-radius: 24px; }

/* Payment methods */
#payment { background: none; }
#payment ul.payment_methods { list-style: none; display: grid; gap: 10px; }
#payment li.wc_payment_method { border: 1px solid var(--line); border-radius: 16px; padding: 16px; transition: .3s var(--ease); }
#payment li.wc_payment_method:has(> input:checked) { border-color: var(--ink); box-shadow: inset 0 0 0 1px var(--ink); background: #fbfaf8; }
#payment li.wc_payment_method > input { float: left; margin: 2px 12px 0 0; }
#payment li.wc_payment_method > label { display: block; font-weight: 600; cursor: pointer; }
#payment li.wc_payment_method > label img { display: inline; max-height: 22px; margin-left: 8px; vertical-align: middle; }
#payment .payment_box { margin: 12px 0 0 30px; padding: 12px 14px; border-radius: 12px; background: #f8f3ea; color: #5a4a2f; font-size: 13px; }
#payment .payment_box p { margin: 0; }
#payment .place-order { margin-top: 18px; display: grid; gap: 14px; }
#payment .woocommerce-privacy-policy-text, #payment .woocommerce-terms-and-conditions-wrapper { font-size: 12px; color: var(--muted); }
#payment .woocommerce-privacy-policy-text a, .woocommerce-terms-and-conditions-wrapper a { text-decoration: underline; }
#payment .woocommerce-terms-and-conditions { max-height: 200px; overflow: auto; padding: 12px; border-radius: 12px; background: var(--bg); margin-bottom: 10px; }
#place_order { position: relative; width: 100%; height: 58px; border-radius: 99px; background: var(--ink); color: var(--bg); font: 600 15px var(--body); letter-spacing: .02em; overflow: hidden; transition: background .4s var(--ease), transform .3s var(--ease); }
#place_order:hover { background: var(--gold); color: var(--ink); }
#place_order:active { transform: scale(.98); }
.woocommerce-NoticeGroup-checkout { grid-column: 1 / -1; }

/* ---------- Thank you ---------- */
.page-thanks .woocommerce { display: block; }
.thanks .thanks-grid { margin: 8px auto 24px; }
.thanks .summary h2 { font-size: 20px; }
.thanks .sum-rows { margin-top: 10px; border-top: 1px solid var(--line); padding-top: 8px; }
.thanks .sum-row.total .amount { font: inherit; }
.thanks .order-info p { margin-top: 2px; }
.thanks .pay-info, .thanks .woocommerce-bacs-bank-details { margin-top: 18px; text-align: left; }
.woocommerce-bacs-bank-details { padding: 16px; border-radius: 16px; background: #f8f3ea; }
.woocommerce-bacs-bank-details h2, .wc-bacs-bank-details-heading { font: 700 16px var(--display); margin-bottom: 8px; }
.wc-bacs-bank-details { list-style: none; display: grid; gap: 6px; font-size: 13px; }
.wc-bacs-bank-details-account-name { font-weight: 600; }
.thanks-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 10px; }

/* ---------- Timeline (thank-you, track order, view order) ---------- */
.timeline { list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; width: 100%; max-width: 820px; margin: 26px auto 30px; counter-reset: t; text-align: left; }
.timeline li { position: relative; padding: 34px 12px 0 0; counter-increment: t; display: grid; gap: 2px; }
.timeline li::before { content: counter(t); position: absolute; top: 0; left: 0; z-index: 1; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); font: 600 11px var(--body); color: var(--muted); }
.timeline li::after { content: ""; position: absolute; top: 11px; left: 24px; right: 0; height: 2px; background: var(--line); }
.timeline li:last-child::after { display: none; }
.timeline li b { font: 700 15px var(--display); color: var(--muted); }
.timeline li span { font-size: 12px; color: var(--muted); }
.timeline li.done::before { content: "✓"; background: var(--gold); color: #fff; box-shadow: none; }
.timeline li.done::after { background: var(--gold); }
.timeline li.done b { color: var(--ink); }
.timeline li.current::before { background: var(--ink); color: var(--bg); box-shadow: 0 0 0 5px rgba(176, 141, 87, .25); }
.timeline li.current b { color: var(--ink); }
.track-status--bad { color: #b3261e; font-weight: 600; }

/* ---------- Order details tables (view order / tracking) ---------- */
.woocommerce-order-details, .woocommerce-customer-details { margin-top: 22px; padding: clamp(20px, 3vw, 30px); border-radius: 24px; background: var(--paper); }
.woocommerce-order-details__title, .woocommerce-column__title { font: 700 20px var(--display); margin-bottom: 14px; }
table.shop_table.order_details, .woocommerce-table--order-details { width: 100%; border-collapse: collapse; font-size: 14px; }
.woocommerce-table--order-details th, .woocommerce-table--order-details td { padding: 12px 0; border-bottom: 1px solid var(--line); text-align: left; font-weight: 400; vertical-align: top; }
.woocommerce-table--order-details td:last-child, .woocommerce-table--order-details th:last-child { text-align: right; }
.woocommerce-table--order-details thead th { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.woocommerce-table--order-details tfoot tr:last-child th, .woocommerce-table--order-details tfoot tr:last-child td { font: 700 18px var(--display); border-bottom: 0; }
.woocommerce-table--order-details .wc-item-meta { list-style: none; font-size: 12px; color: var(--muted); }
.woocommerce-table--order-details .wc-item-meta p { display: inline; }
.woocommerce-table--order-details .product-name a { font-weight: 600; }
.woocommerce-customer-details address { font-style: normal; line-height: 1.7; }
.woocommerce-customer-details .woocommerce-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.woocommerce-customer-details--phone, .woocommerce-customer-details--email { margin-top: 4px; }
.order-again .button { display: inline-flex; align-items: center; height: 44px; margin-top: 16px; padding: 0 20px; border-radius: 99px; background: var(--ink); color: var(--bg); }
ol.notes { list-style: none; display: grid; gap: 10px; }
ol.notes li { padding: 12px 14px; border-radius: 12px; background: var(--bg); font-size: 14px; }

/* ---------- Track order ---------- */
.page-track .woocommerce { max-width: 760px; }
.track-card { position: static; max-width: 560px; display: grid; gap: 16px; }
.track-card .fields { margin: 0; }
.track-card input.input-text { background: var(--bg); }
.track-result { display: grid; gap: 0; }
.track-result > .summary { position: static; }
.track-result > .summary h2 { font: 700 clamp(28px, 4vw, 40px) var(--display); letter-spacing: -.02em; margin: 4px 0 0; }
.track-result > p { margin-top: 20px; }

/* ---------- My account ---------- */
.page-account .woocommerce { display: block; }
.account-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: clamp(24px, 4vw, 56px); align-items: start; }
.account-nav { position: sticky; top: 100px; padding: 18px; border-radius: 24px; background: var(--paper); }
.account-user { display: flex; gap: 12px; align-items: center; padding: 6px 6px 16px; margin-bottom: 8px; border-bottom: 1px solid var(--line); }
.account-user .avatar { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--ink); color: var(--gold); font: 700 18px var(--display); flex: none; }
.account-user b { display: block; font-weight: 600; }
.account-user small { color: var(--muted); font-size: 12px; word-break: break-all; }
.account-nav ul { list-style: none; display: grid; gap: 2px; }
.account-nav a { display: block; padding: 11px 14px; border-radius: 12px; font-size: 14px; transition: background .3s, color .3s; }
.account-nav a:hover { background: var(--bg); }
.account-nav .is-active a { background: var(--ink); color: var(--bg); }
.account-nav .woocommerce-MyAccount-navigation-link--customer-logout a { color: #b3261e; }
.account-content { min-width: 0; }
.acc-hello h2, .acc-title { font: 700 clamp(26px, 3vw, 36px) var(--display); letter-spacing: -.02em; margin-bottom: 6px; }
.acc-hello a { text-decoration: underline; }
.acc-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 26px 0 34px; }
.acc-cards .c-card { min-height: 130px; }
.acc-sub { font: 700 18px var(--display); margin: 22px 0 12px; }
.order-cards { display: grid; gap: 10px; }
.order-card { display: grid; grid-template-columns: 1fr auto auto; gap: 16px; align-items: center; padding: 18px 20px; border-radius: 18px; background: var(--paper); transition: transform .4s var(--ease), box-shadow .4s var(--ease); }
a.order-card:hover { transform: translateY(-3px); box-shadow: 0 20px 40px -28px rgba(0, 0, 0, .3); }
.order-card b { font: 700 17px var(--display); }
.order-card small { display: block; color: var(--muted); font-size: 12px; }
.order-card strong .amount { font-weight: 600; }
.order-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px; }
.order-actions .btn { height: 38px; padding: 0 16px; font-size: 12px; }
.status { padding: 5px 12px; border-radius: 99px; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; background: var(--bg); color: var(--muted); white-space: nowrap; }
.status-processing { background: #fdf3e1; color: #8a5a00; }
.status-dispatched { background: #e6effc; color: #1d4f91; }
.status-completed { background: #e4f3e8; color: #2e7d4a; }
.status-on-hold, .status-pending { background: #f3efe8; color: #6f6a62; }
.status-cancelled, .status-failed, .status-refunded { background: #fbe9e7; color: #b3261e; }
.acc-empty { padding: 30px; border-radius: 20px; background: var(--paper); display: grid; justify-items: start; gap: 14px; }
.pager-btns { display: flex; gap: 10px; margin-top: 18px; }
.view-order-head { position: static; }
.view-order-head h2 { font: 700 clamp(26px, 3vw, 36px) var(--display); }
/* Addresses / account details forms */
.account-content .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }
.account-content .woocommerce-Address { padding: 22px; border-radius: 20px; background: var(--paper); }
.account-content .woocommerce-Address-title { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; }
.account-content .woocommerce-Address-title h2, .account-content form h2, .account-content > h2, .account-content form > h3 { font: 700 20px var(--display); margin-bottom: 12px; }
.account-content .woocommerce-Address-title .edit { font-size: 12px; text-decoration: underline; }
.account-content address { font-style: normal; line-height: 1.7; color: #4a4640; }
.account-content > p:first-child { color: var(--muted); }
.account-content form.edit-account, .account-content .woocommerce-address-fields, .account-content form.woocommerce-EditAccountForm { padding: clamp(20px, 3vw, 30px); border-radius: 24px; background: var(--paper); }
.account-content .woocommerce-address-fields__field-wrapper, .account-content form.edit-account { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.account-content .form-row-wide, .account-content fieldset, .account-content form.edit-account > p:not(.form-row-first):not(.form-row-last), .account-content form.edit-account > .clear { grid-column: 1 / -1; }
.account-content fieldset { border: 0; display: grid; gap: 12px; margin-top: 10px; padding: 18px; border-radius: 16px; background: var(--bg); }
.account-content fieldset legend { font: 700 16px var(--display); padding: 0; float: left; width: 100%; margin-bottom: 4px; }
.account-content input.input-text { background: var(--bg); }
.account-content fieldset input.input-text { background: var(--paper); }
.account-content button[type=submit], .woocommerce-ResetPassword button[type=submit] { height: 50px; padding: 0 28px; border-radius: 99px; background: var(--ink); color: var(--bg); font-weight: 500; margin-top: 8px; transition: background .4s var(--ease); }
.account-content button[type=submit]:hover, .woocommerce-ResetPassword button[type=submit]:hover { background: var(--gold); color: var(--ink); }
.account-content em { font-size: 12px; color: var(--muted); font-style: normal; }
.password-input { position: relative; display: block; }
.show-password-input { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; opacity: .5; }
.show-password-input::after { content: "👁"; }
.woocommerce-password-strength { font-size: 12px; padding: 6px 10px; border-radius: 8px; margin-top: 6px; }
.woocommerce-password-strength.bad, .woocommerce-password-strength.short { background: #fbe9e7; color: #b3261e; }
.woocommerce-password-strength.good { background: #fdf3e1; color: #8a5a00; }
.woocommerce-password-strength.strong { background: #e4f3e8; color: #2e7d4a; }
.woocommerce-password-hint { font-size: 12px; color: var(--muted); }

/* Login / register */
.auth-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(16px, 3vw, 32px); max-width: 980px; }
.auth-grid.auth-single { grid-template-columns: minmax(0, 480px); }
.auth-card { position: static; display: grid; gap: 4px; align-content: start; }
.auth-card h2 { font: 700 28px var(--display); margin-bottom: 0; }
.auth-card form { display: grid; gap: 14px; margin-top: 14px; }
.auth-card input.input-text { background: var(--bg); }
.auth-card--dark { background: var(--ink); color: var(--bg); }
.auth-card--dark .muted { color: #a9a39a; }
.auth-card--dark input.input-text { background: rgba(244, 242, 238, .06); border-color: rgba(244, 242, 238, .16); color: var(--bg); }
.auth-card--dark .btn { background: var(--bg); color: var(--ink); }
.auth-card--dark .woocommerce-privacy-policy-text { font-size: 12px; color: #a9a39a; }
.auth-card--dark .woocommerce-privacy-policy-text a { color: var(--bg); text-decoration: underline; }
.auth-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 13px; }
.woocommerce-ResetPassword { max-width: 520px; padding: clamp(22px, 3vw, 32px); border-radius: 24px; background: var(--paper); display: grid; gap: 14px; }
.woocommerce-ResetPassword input.input-text { background: var(--bg); }

/* ---------- Legal single column ---------- */
.legal-single { max-width: 760px; }
.post-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.post-card { display: grid; gap: 10px; padding: 18px; border-radius: 22px; background: var(--paper); }
.post-card img { border-radius: 14px; aspect-ratio: 4 / 3; object-fit: cover; }
.post-card h2 { font: 700 20px var(--display); }
.post-card p { color: var(--muted); font-size: 14px; }

/* ---------- Responsive ---------- */
@media (max-width: 1000px) {
  .page-cart .woocommerce, .checkout.woocommerce-checkout { grid-template-columns: 1fr; }
  .cart-collaterals, .co-side { position: static; }
  .account-layout { grid-template-columns: 1fr; }
  .account-nav { position: static; }
  .account-nav ul { display: flex; flex-wrap: wrap; gap: 6px; }
  .account-nav a { padding: 8px 14px; box-shadow: inset 0 0 0 1px var(--line); border-radius: 99px; font-size: 13px; }
  .shop-grid, ul.products, .grid.grid-4, .related .grid.grid-4 { grid-template-columns: repeat(2, 1fr); }
  .post-list { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .cart-lines .cart-item { grid-template-columns: 80px 1fr; }
  .cart-lines .product-thumbnail img { width: 80px; height: 80px; }
  .cart-item-end { grid-column: 2; display: flex; justify-content: space-between; align-items: center; text-align: left; }
  .cart-actions .coupon { max-width: none; flex-basis: 100%; }
  .acc-cards, .auth-grid, .account-content .woocommerce-Addresses, .woocommerce-customer-details .woocommerce-columns, .account-content .woocommerce-address-fields__field-wrapper, .account-content form.edit-account, .page-checkout form.login { grid-template-columns: 1fr; }
  .order-card { grid-template-columns: 1fr auto; }
  .order-card strong { grid-column: 2; grid-row: 1; }
  .order-card .status { grid-row: 2; justify-self: start; }
  .timeline { grid-template-columns: 1fr; gap: 14px; }
  .timeline li { padding: 0 0 0 38px; }
  .timeline li::after { top: 26px; left: 11px; right: auto; bottom: -14px; width: 2px; height: auto; }
  .fields .form-row-first, .fields .form-row-last { grid-column: 1 / -1; }
  .post-list { grid-template-columns: 1fr; }
  form.checkout_coupon { grid-template-columns: 1fr; }
}

/* Admin bar (sirf logged-in admin) */
.admin-bar .nav { top: 32px; }
@media (max-width: 782px) { .admin-bar .nav { top: 46px; } }
.woocommerce-notices-wrapper:focus, [tabindex="-1"]:focus { outline: none; }
.woocommerce-cart-form .free-ship { padding: 16px 0 4px; }

/* Summary tables: flex rows (shipping options poori width) */
.sum-table, .sum-table tbody, .woocommerce-checkout-review-order-table, .woocommerce-checkout-review-order-table tbody, .woocommerce-checkout-review-order-table tfoot { display: block; width: 100%; }
.sum-table tr, .woocommerce-checkout-review-order-table tfoot tr, .woocommerce-checkout-review-order-table tbody tr { display: flex; justify-content: space-between; gap: 12px; }
.woocommerce-checkout-review-order-table tbody td { display: block; width: 100%; }
.sum-table tr.woocommerce-shipping-totals, .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals { display: block; }
.woocommerce-checkout-review-order-table tfoot tr:first-child { border-top: 1px solid var(--line); margin-top: 4px; }
.woocommerce-checkout-review-order-table tfoot tr:first-child th, .woocommerce-checkout-review-order-table tfoot tr:first-child td { border-top: 0; }
.sum-table .order-total, .woocommerce-checkout-review-order-table .order-total { border-top: 1px solid var(--line); margin-top: 8px; }
.sum-table .order-total th, .sum-table .order-total td, .woocommerce-checkout-review-order-table .order-total th, .woocommerce-checkout-review-order-table .order-total td { border-top: 0; }
#shipping_method .ts-ship-name { display: grid; }
#shipping_method .ts-ship-name small { color: var(--muted); font-size: 12px; }
.fields #billing_email_field, .fields #billing_phone_field { grid-column: auto; }
.woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields { display: grid; gap: 18px; }
.woocommerce-shipping-fields:empty, .woocommerce-shipping-fields:not(:has(*)) { display: none; }
.ts-hidden { display: none !important; }
/* Mobile: story stats lambi line na banayein, koi bhi cheez bahar na nikle */
@media (max-width: 760px) {
  .story-sticky, .story > * { min-width: 0; }
  .stats { flex-wrap: nowrap; gap: 12px; justify-content: space-between; }
  .story h2 { overflow-wrap: anywhere; }
}
html, body { max-width: 100%; overflow-x: clip; }
.pay-note:not(:empty) { margin-top: 16px; padding: 12px 14px; border-radius: 12px; background: #f8f3ea; color: #5a4a2f; font-size: 13px; }
.pay-note p { margin: 0; }
.account-user > div, .acc-hello h2 { min-width: 0; overflow-wrap: anywhere; }

/* =================== Mobile fixes (hero, card buttons, stats) =================== */
@media (max-width: 760px) {
  /* Hero: asli dikhne wali screen (svh) ke hisaab se — browser bar ke neeche kuch na chhupe */
  .hero { height: 100vh; height: 100svh; min-height: 600px; }
  /* Pakol upar, heading ke upar na aaye */
  .hero-3d { inset: 76px 0 auto; height: 47vh; height: 47svh; }
  .cp-wrap { height: 100%; max-width: 92vw; transform: none; }
  .hero-left { bottom: calc(6svh + 74px); }
  .hero-right { bottom: 6vh; bottom: 6svh; }
  .hero-title { font-size: clamp(32px, 9.5vw, 44px); }
  .hero-sub { margin-top: 10px; font-size: 13px; }
  .hero-left .eyebrow { margin-bottom: 10px; font-size: 10px; letter-spacing: .16em; }

  /* Card ka button ek line mein */
  .card-add { white-space: nowrap; padding: 8px 12px; font-size: 11px; bottom: 6%; }

  /* Stats: 100% · 3 days · 1 of 1 ek line mein */
  .stats > div { flex: 1 1 0; min-width: 0; }
  .stats div strong { font-size: clamp(22px, 7.4vw, 34px); white-space: nowrap; }
  .stats div span { font-size: 10px; letter-spacing: .08em; }
}
@media (max-width: 760px) and (max-height: 700px) {
  .hero-3d { height: 40svh; }
  .hero-sub { display: none; }
  .hero-left { bottom: calc(5svh + 70px); }
}
