/* =========================================================
   SirsiRuchi — WooCommerce brand styling
   (cart, checkout, shop, single product, my-account)
   Tokens (--red, --ink, etc.) style.css ke :root se aate hain.
   Classic shortcode + naya block cart/checkout dono cover.
   ========================================================= */

/* ---- Global reset ki wajah se Woo content ka spacing wapas restore ---- */
.woocommerce p,
.woocommerce ul:not(.products):not(.wc-block-grid__products) li,
.woocommerce ol li { margin-bottom: .7em; }
.woocommerce h1, .woocommerce h2, .woocommerce h3 { margin-bottom: .5em; line-height: 1.2; }
.woocommerce-page .entry-content > * + * { margin-top: 1rem; }

/* ---- Page title + breadcrumb ---- */
.woocommerce-products-header__title,
.woocommerce .entry-title,
.woocommerce-page .entry-title {
	font-family: var(--ff-display);
	font-weight: 800;
	letter-spacing: -.02em;
	color: var(--ink);
}
.woocommerce-breadcrumb {
	font-size: .85rem;
	color: var(--ink-soft);
	margin-bottom: 1.4rem;
}
.woocommerce-breadcrumb a { color: var(--red); }

/* ---- BUTTONS (classic + block) ---- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #place_order,
.wc-block-components-button,
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--red) !important;
	color: #fff !important;
	border: none !important;
	border-radius: var(--r-pill) !important;
	font-family: var(--ff-display);
	font-weight: 600;
	font-size: 1rem;
	padding: 14px 28px;
	line-height: 1;
	cursor: pointer;
	box-shadow: var(--shadow-red);
	transition: background .2s ease, transform .18s ease, box-shadow .2s ease;
	text-decoration: none;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #place_order:hover,
.wc-block-components-button:hover,
.wp-block-button__link:hover {
	background: var(--red-deep) !important;
	transform: translateY(-2px);
}

/* Secondary / "continue shopping" / update cart -> outline look */
.woocommerce a.button.wc-backward,
.woocommerce button[name="update_cart"],
.woocommerce a.added_to_cart {
	background: #fff !important;
	color: var(--ink) !important;
	border: 1.5px solid var(--border) !important;
	box-shadow: none;
}
.woocommerce a.button.wc-backward:hover,
.woocommerce button[name="update_cart"]:hover,
.woocommerce a.added_to_cart:hover {
	border-color: var(--ink) !important;
	background: #fff !important;
}

/* ---- PRICES ---- */
.woocommerce .price,
.woocommerce-Price-amount,
.wc-block-components-product-price,
.wc-block-formatted-money-amount {
	font-family: var(--ff-display);
	font-weight: 700;
	color: var(--ink);
}
.woocommerce del, .woocommerce del .woocommerce-Price-amount {
	color: var(--ink-soft);
	font-weight: 400;
	opacity: .8;
}
.woocommerce ins { text-decoration: none; }
.woocommerce .price ins .woocommerce-Price-amount { color: var(--red); }

/* ---- FORM FIELDS ---- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce #coupon_code,
.select2-container .select2-selection,
.wc-block-components-text-input input,
.wc-block-components-text-input input.input-text {
	border: 1.5px solid var(--border) !important;
	border-radius: var(--r-sm) !important;
	padding: 12px 14px !important;
	font-family: var(--ff-body);
	font-size: 1rem;
	color: var(--ink);
	background: #fff;
	box-shadow: none;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce-checkout input:focus,
.wc-block-components-text-input input:focus {
	border-color: var(--red) !important;
	outline: none;
	box-shadow: 0 0 0 3px rgba(225,39,19,.12);
}
.woocommerce form .form-row label,
.wc-block-components-text-input label {
	font-family: var(--ff-display);
	font-weight: 500;
	font-size: .9rem;
	color: var(--ink);
}

/* ---- CART + CHECKOUT TABLES / BOXES ---- */
.woocommerce table.shop_table {
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	background: #fff;
}
.woocommerce table.shop_table th {
	font-family: var(--ff-display);
	font-weight: 600;
	color: var(--ink);
	background: var(--bg-soft);
	padding: 16px 14px;
	text-align: left;
}
.woocommerce table.shop_table td {
	padding: 16px 14px;
	border-top: 1px solid var(--border);
	vertical-align: middle;
}
.woocommerce table.shop_table img { width: 56px; border-radius: var(--r-sm); }

.cart_totals,
.woocommerce-checkout-review-order,
.wc-block-components-totals-wrapper,
.wc-block-checkout__sidebar {
	background: var(--bg-soft);
	border: 1px solid var(--border);
	border-radius: 5px;
	padding: 22px;
}
.cart_totals h2,
.woocommerce-checkout-review-order h3 {
	font-family: var(--ff-display);
	margin-bottom: .8rem;
}

/* quantity stepper */
.woocommerce .quantity input.qty {
	border: 1.5px solid var(--border);
	border-radius: var(--r-pill);
	padding: 9px 6px;
	width: 70px;
	text-align: center;
	font-family: var(--ff-display);
	font-weight: 600;
	color: var(--ink);
}

/* coupon row */
.woocommerce .cart .actions .coupon { display: flex; gap: 10px; flex-wrap: wrap; }

/* ---- NOTICES ---- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
	border-radius: var(--r-md) !important;
	border: 1px solid var(--border);
	padding: 14px 16px !important;
	font-size: .95rem;
}
.woocommerce-message,
.wc-block-components-notice-banner.is-success {
	background: rgba(34,197,94,.08) !important;
	border-color: rgba(34,197,94,.35);
	border-top: 3px solid var(--success) !important;
}
.woocommerce-info,
.wc-block-components-notice-banner.is-info {
	background: var(--warm) !important;
	border-top: 3px solid var(--red) !important;
}
.woocommerce-error,
.wc-block-components-notice-banner.is-error {
	background: rgba(225,39,19,.06) !important;
	border-top: 3px solid var(--red) !important;
}

/* ---- SHOP / ARCHIVE PRODUCT GRID ---- */
.woocommerce ul.products {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	margin: 0 0 2rem;
	list-style: none;
}
.woocommerce ul.products li.product {
	background: #fff;
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	padding: 16px 16px 20px;
	margin: 0 !important;
	width: auto !important;
	float: none !important;
	transition: transform .25s ease, box-shadow .25s ease;
	text-align: center;
}
.woocommerce ul.products li.product:hover {
	transform: translateY(-6px);
	box-shadow: var(--shadow-md);
}
.woocommerce ul.products li.product img {
	border-radius: var(--r-md);
	margin-bottom: 14px;
	background: var(--peach);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--ff-display);
	font-weight: 600;
	font-size: 1rem;
	color: var(--ink);
	padding: 0;
}
.woocommerce ul.products li.product .price { display: block; margin: 8px 0 14px; }

/* ---- SINGLE PRODUCT PAGE ---- */
.woocommerce div.product .product_title {
	font-family: var(--ff-display);
	font-weight: 800;
	letter-spacing: -.02em;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--ink);
	font-size: 1.6rem;
}
.woocommerce div.product .woocommerce-product-gallery img { border-radius: var(--r-lg); }
.woocommerce div.product form.cart { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-top: 1rem; }
.woocommerce span.onsale {
	background: var(--red);
	color: #fff;
	border-radius: var(--r-pill);
	font-family: var(--ff-display);
	font-weight: 600;
	min-height: auto;
	min-width: auto;
	padding: 6px 14px;
	line-height: 1;
}
/* product tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	border-bottom-color: var(--red);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family: var(--ff-display); font-weight: 600; }

/* ---- MY ACCOUNT ---- */
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li {
	border: 1px solid var(--border);
	border-radius: var(--r-sm);
	margin-bottom: 8px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active {
	background: var(--warm);
	border-color: var(--red);
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 12px 16px;
	font-family: var(--ff-display);
	font-weight: 500;
	color: var(--ink);
}

/* ---- block checkout: place order area ---- */
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
	width: 100%;
	font-size: 1.05rem;
	padding: 16px 28px;
}
 .entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull {
       padding: 2rem;
    }
@media (max-width: 768px) {
    .entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull {
       padding: 2rem;
    }
}

/* =========================================================
   BLOCK CHECKOUT — floating label / input overlap fix
   ========================================================= */
.wc-block-components-text-input,
.wc-block-components-text-input.is-active {
	position: relative;
	margin-top: 0;
}

/* input me upar space taake floating label text se na takraye */
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="number"],
.wc-block-components-text-input input[type="password"],
.wc-block-components-address-form input.input-text,
.wc-block-components-select .wc-block-components-select__select {
	height: 56px;
	padding: 22px 14px 8px !important;   /* upar zyada padding = label ki jagah */
	line-height: 1.2;
	border: 1.5px solid var(--border) !important;
	border-radius: var(--r-sm) !important;
	font-family: var(--ff-body);
	font-size: 1rem;
	color: var(--ink);
	background: #fff;
	box-shadow: none !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-select .wc-block-components-select__select:focus {
	border-color: var(--red) !important;
	outline: none;
	box-shadow: 0 0 0 3px rgba(225,39,19,.12) !important;
}

/* floating label: default (jab field khaali hai) */
.wc-block-components-text-input label,
.wc-block-components-select label {
	position: absolute;
	left: 14px;
	top: 16px;
	margin: 0;
	padding: 0 2px;
	font-family: var(--ff-body);
	font-size: 1rem;
	font-weight: 400;
	color: var(--ink-soft);
	background: transparent;
	transform-origin: left top;
	transition: transform .15s ease, color .15s ease;
	pointer-events: none;
}

/* focus / value hone par label chhota ho ke upar chala jaye */
.wc-block-components-text-input.is-active label,
.wc-block-components-select.is-active label {
	transform: translateY(-9px) scale(.78);
	color: var(--ink-soft);
}

/* select dropdown arrow ke liye text overlap na ho */
.wc-block-components-select .wc-block-components-select__select {
	padding-right: 36px !important;
}

/* checkbox row spacing */
.wc-block-components-checkbox label {
	position: static;
	transform: none;
	font-size: .95rem;
	color: var(--ink);
}

button, input[type=button], input[type=reset], input[type=submit] {
  
    padding: 0 !important;
}
.cart li.woocommerce-mini-cart-item a.remove {
   width: 30px;
    height: 30px;
    background: none !important;
	padding: 0;
}
