/* ── IGcr Theme — WooCommerce ─────────────────────────────────────────────
 *
 * Instagram-inspired styling for WooCommerce pages.
 * Uses theme tokens (--igcr-theme-*) for consistency with the app shell.
 * ────────────────────────────────────────────────────────────────────────── */

/* ── Breadcrumbs ── */

.igcr-breadcrumbs {
	font-size: 13px;
	color: var( --igcr-theme-text-secondary );
	margin-bottom: 20px;
}

.igcr-breadcrumbs a {
	color: var( --igcr-theme-text-secondary );
	text-decoration: none;
}

.igcr-breadcrumbs a:hover {
	color: var( --igcr-theme-text );
}

.igcr-breadcrumb-sep {
	margin: 0 6px;
	color: var( --igcr-theme-text-muted );
}

/* ── Product Grid (Archive / Category) ── */

.wc-block-grid__products,
.wp-block-woocommerce-product-template {
	gap: 16px;
}

.wc-block-grid__product,
.wp-block-woocommerce-product-template > li {
	background: var( --igcr-theme-bg-card );
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	overflow: hidden;
	transition: box-shadow 0.15s;
}

.wc-block-grid__product:hover,
.wp-block-woocommerce-product-template > li:hover {
	box-shadow: var( --igcr-theme-shadow );
}

/* Product images in grid */
.wc-block-grid__product-image img,
.wp-block-woocommerce-product-image img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	width: 100%;
	display: block;
}

/* Product title in grid */
.wc-block-grid__product-title,
.wp-block-woocommerce-product-template .wp-block-post-title {
	font-size: 14px;
	font-weight: 600;
	color: var( --igcr-theme-text );
}

.wc-block-grid__product-title a,
.wp-block-woocommerce-product-template .wp-block-post-title a {
	color: var( --igcr-theme-text );
	text-decoration: none;
}

/* Product price in grid */
.wc-block-grid__product-price,
.wc-block-components-product-price {
	font-size: 14px;
	color: var( --igcr-theme-text );
}

.wc-block-components-product-price__value {
	font-weight: 600;
}

del .wc-block-components-product-price__value {
	color: var( --igcr-theme-text-muted );
	font-weight: 400;
}

ins .wc-block-components-product-price__value {
	color: var( --igcr-theme-text );
}

/* ── Single Product ── */

.woocommerce div.product {
	margin-bottom: 40px;
}

/* Product gallery */
.woocommerce-product-gallery,
.wp-block-woocommerce-product-image-gallery {
	border-radius: var( --igcr-theme-radius );
	overflow: hidden;
}

.woocommerce-product-gallery img,
.wp-block-woocommerce-product-image-gallery img {
	border-radius: var( --igcr-theme-radius );
}

/* Product title */
.product_title,
.igcr-wc-single .wp-block-post-title {
	font-size: 1.5rem;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin-bottom: 8px;
}

/* Price */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.wp-block-woocommerce-product-price {
	font-size: 1.25rem;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin-bottom: 16px;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	color: var( --igcr-theme-text-muted );
	font-weight: 400;
}

/* Star ratings */
.woocommerce .star-rating,
.wc-block-components-product-rating .wc-block-components-product-rating__stars {
	color: var( --igcr-theme-warning );
}

.woocommerce .star-rating::before {
	color: var( --igcr-theme-border );
}

/* Short description */
.woocommerce div.product .woocommerce-product-details__short-description {
	color: var( --igcr-theme-text-secondary );
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 20px;
}

/* Quantity + Add to Cart */
.woocommerce div.product form.cart,
.wp-block-woocommerce-add-to-cart-form {
	margin-bottom: 24px;
}

.woocommerce .quantity .qty {
	width: 60px;
	padding: 10px 8px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	font-size: 14px;
	font-family: var( --igcr-theme-font );
	background: var( --igcr-theme-bg );
	color: var( --igcr-theme-text );
	text-align: center;
}

.woocommerce .quantity .qty:focus {
	border-color: var( --igcr-theme-accent );
	outline: none;
}

/* Variation dropdowns */
.woocommerce div.product form.cart .variations select {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	font-size: 14px;
	font-family: var( --igcr-theme-font );
	background: var( --igcr-theme-bg );
	color: var( --igcr-theme-text );
}

.woocommerce div.product form.cart .variations select:focus {
	border-color: var( --igcr-theme-accent );
	outline: none;
}

.woocommerce div.product form.cart .variations label {
	font-weight: 600;
	font-size: 14px;
	color: var( --igcr-theme-text );
}

/* Product meta (SKU, categories, tags) */
.product_meta,
.wp-block-woocommerce-product-meta {
	font-size: 13px;
	color: var( --igcr-theme-text-secondary );
	padding-top: 16px;
	border-top: 1px solid var( --igcr-theme-border );
	margin-top: 16px;
}

.product_meta a,
.wp-block-woocommerce-product-meta a {
	color: var( --igcr-theme-accent );
	text-decoration: none;
}

.product_meta a:hover,
.wp-block-woocommerce-product-meta a:hover {
	text-decoration: underline;
}

/* ── Buttons (accent-colored) ── */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-add-to-cart-form .single_add_to_cart_button,
.wp-element-button.wc-block-components-product-button__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px 20px;
	background: var( --igcr-theme-accent );
	color: var( --igcr-theme-on-accent ) !important;
	border: none;
	border-radius: var( --igcr-theme-radius );
	font-size: 14px;
	font-weight: 600;
	font-family: var( --igcr-theme-font );
	cursor: pointer;
	text-decoration: none;
	transition: background 0.15s;
	line-height: 1.4;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.wc-block-components-button:not(.is-link):hover,
.wp-block-woocommerce-add-to-cart-form .single_add_to_cart_button:hover,
.wp-element-button.wc-block-components-product-button__button:hover {
	background: var( --igcr-theme-accent-hover );
	color: var( --igcr-theme-on-accent ) !important;
}

/* Alt / secondary buttons */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background: var( --igcr-theme-accent );
	color: var( --igcr-theme-on-accent ) !important;
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background: var( --igcr-theme-accent-hover );
}

/* Disabled buttons */
.woocommerce a.button:disabled,
.woocommerce button.button:disabled,
.woocommerce input.button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* ── Tabs (Product Description / Reviews) ── */

.woocommerce div.product .woocommerce-tabs,
.wp-block-woocommerce-product-details {
	margin-top: 40px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	list-style: none;
	margin: 0 0 24px;
	padding: 0;
	display: flex;
	gap: 0;
	border-bottom: 1px solid var( --igcr-theme-border );
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0;
	padding: 0;
	border: none;
	background: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 12px 20px;
	font-size: 14px;
	font-weight: 600;
	color: var( --igcr-theme-text-secondary );
	text-decoration: none;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
	transition: color 0.15s, border-color 0.15s;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var( --igcr-theme-text );
	border-bottom-color: var( --igcr-theme-text );
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
	color: var( --igcr-theme-text );
}

.woocommerce div.product .woocommerce-tabs .panel {
	border: none;
	padding: 0;
	font-size: 14px;
	line-height: 1.7;
	color: var( --igcr-theme-text-secondary );
}

/* ── Forms (Cart, Checkout, Account) ── */

.woocommerce form .form-row label,
.wc-block-components-text-input label,
.wc-block-components-combobox label {
	font-size: 13px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin-bottom: 4px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-components-combobox input,
.wc-block-components-combobox select {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	font-size: 14px;
	font-family: var( --igcr-theme-font );
	background: var( --igcr-theme-bg );
	color: var( --igcr-theme-text );
	transition: border-color 0.15s;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.wc-block-components-text-input input:focus,
.wc-block-components-combobox input:focus {
	border-color: var( --igcr-theme-accent );
	outline: none;
}

/* ── Cart ── */

.woocommerce-cart-form,
.wc-block-cart {
	font-size: 14px;
}

.woocommerce table.shop_table {
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}

.woocommerce table.shop_table th {
	font-weight: 600;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var( --igcr-theme-text-secondary );
	background: var( --igcr-theme-bg );
	border-bottom: 1px solid var( --igcr-theme-border );
	padding: 12px 16px;
}

.woocommerce table.shop_table td {
	padding: 16px;
	border-bottom: 1px solid var( --igcr-theme-border );
	vertical-align: middle;
	color: var( --igcr-theme-text );
}

.woocommerce table.shop_table tr:last-child td {
	border-bottom: none;
}

.woocommerce table.shop_table img {
	width: 60px;
	height: 60px;
	object-fit: cover;
	border-radius: 6px;
}

/* Cart totals */
.woocommerce .cart_totals,
.wc-block-cart__totals {
	background: var( --igcr-theme-bg );
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	padding: 24px;
}

/* Remove link */
.woocommerce a.remove {
	color: var( --igcr-theme-text-muted ) !important;
	font-size: 18px;
	text-decoration: none;
}

.woocommerce a.remove:hover {
	color: var( --igcr-theme-danger ) !important;
	background: none;
}

/* Coupon */
.woocommerce .coupon .input-text {
	max-width: 200px;
}

/* ── Checkout ── */

.woocommerce-checkout,
.wc-block-checkout {
	font-size: 14px;
}

/* Order review table */
.woocommerce .woocommerce-checkout-review-order-table {
	margin-bottom: 20px;
}

/* Payment methods */
.woocommerce .woocommerce-checkout-payment,
.wc-block-checkout__payment-method {
	background: var( --igcr-theme-bg );
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	padding: 20px;
}

.woocommerce .woocommerce-checkout-payment ul.payment_methods {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce .woocommerce-checkout-payment .payment_method_title {
	font-weight: 600;
}

/* ── My Account — Instagram Edit-Profile Layout ── */

/* Two-column layout: sidebar nav + content */
.igcr-wc-account .woocommerce {
	display: flex;
	gap: 0;
	max-width: 935px;
	margin: 0 auto;
	background: var( --igcr-theme-bg-card );
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	overflow: hidden;
	min-height: 500px;
}

/* ── Sidebar navigation (mirrors .igcr-sidebar + .igcr-nav-item exactly) ── */

.igcr-wc-account .woocommerce-MyAccount-navigation {
	width: 236px;
	flex-shrink: 0;
	border-right: 1px solid var( --igcr-theme-border );
	margin: 0;
	padding: 0;
}

.igcr-wc-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 8px 12px 20px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	border-bottom: none;
}

/* Reset WooCommerce li defaults */
.igcr-wc-account .woocommerce-MyAccount-navigation ul li {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Base link — matches .igcr-nav-item exactly */
.igcr-wc-account .woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 12px;
	font-size: 15px;
	font-weight: 400;
	color: var( --igcr-theme-text );
	text-decoration: none;
	border: none;
	border-radius: var( --igcr-theme-radius );
	transition: background 0.15s;
	line-height: 1;
	margin: 0;
}

/* Icon via ::before — shared base */
.igcr-wc-account .woocommerce-MyAccount-navigation ul li a::before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	background-size: 24px 24px;
	background-repeat: no-repeat;
	background-position: center;
}

/* Per-item icons (Lucide-style SVGs) */
.igcr-wc-account .woocommerce-MyAccount-navigation-link--dashboard a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23262626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E");
}

.igcr-wc-account .woocommerce-MyAccount-navigation-link--orders a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23262626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7.5 4.27 9 5.15'/%3E%3Cpath d='M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z'/%3E%3Cpath d='m3.3 7 8.7 5 8.7-5'/%3E%3Cpath d='M12 22V12'/%3E%3C/svg%3E");
}

.igcr-wc-account .woocommerce-MyAccount-navigation-link--downloads a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23262626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' x2='12' y1='15' y2='3'/%3E%3C/svg%3E");
}

.igcr-wc-account .woocommerce-MyAccount-navigation-link--edit-address a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23262626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}

.igcr-wc-account .woocommerce-MyAccount-navigation-link--edit-account a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23262626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='5'/%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3C/svg%3E");
}

.igcr-wc-account .woocommerce-MyAccount-navigation-link--customer-logout a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23ed4956' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' x2='9' y1='12' y2='12'/%3E%3C/svg%3E");
}

/* Hover — identical to .igcr-nav-item:hover */
.igcr-wc-account .woocommerce-MyAccount-navigation ul li a:hover {
	background: var( --igcr-theme-border-light );
	color: var( --igcr-theme-text );
}

/* Active — identical to .igcr-nav-item.is-active (bold only, no bg) */
.igcr-wc-account .woocommerce-MyAccount-navigation ul li.is-active a,
.igcr-wc-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
	font-weight: 700;
	color: var( --igcr-theme-text );
}

/* Logout link — Instagram red */
.igcr-wc-account .woocommerce-MyAccount-navigation-link--customer-logout a {
	color: var( --igcr-theme-danger-subtle );
}

.igcr-wc-account .woocommerce-MyAccount-navigation-link--customer-logout a:hover {
	color: var( --igcr-theme-danger-subtle );
	background: var( --igcr-theme-danger-subtle-bg );
}

/* ── Content area ── */

.igcr-wc-account .woocommerce-MyAccount-content {
	flex: 1;
	min-width: 0;
	padding: 32px 40px;
}

/* Section headings */
.igcr-wc-account .woocommerce-MyAccount-content > h2,
.igcr-wc-account .woocommerce-MyAccount-content > h3 {
	font-size: 20px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin: 0 0 24px;
}

/* ── MyAccount Login / Lost Password (logged-out state) ──
 *
 * When logged out, the two-column card (nav + content) is wrong — there's no
 * nav sidebar.  Override: reset to a centered, compact card layout.
 * Uses :not(:has()) to detect the absence of the nav sidebar.
 * ────────────────────────────────────────────────────────────────────────── */

/* Reset the two-column flex wrapper for logged-out pages */
.igcr-wc-account .woocommerce:not(:has( .woocommerce-MyAccount-navigation )) {
	display: block;
	max-width: 420px;
	min-height: auto;
	border: none;
	background: transparent;
	padding: 40px 0;
}

/* Page title above form (WooCommerce renders <h2>Login</h2>) */
.igcr-wc-account .woocommerce:not(:has( .woocommerce-MyAccount-navigation )) > h2 {
	font-size: 22px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	text-align: center;
	margin: 0 0 24px;
}

/* Shared form card — login, register, lost password */
.igcr-wc-account .woocommerce-form-login,
.igcr-wc-account .woocommerce-form-register,
.igcr-wc-account .woocommerce-ResetPassword {
	background: var( --igcr-theme-bg-card );
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	padding: 32px;
}

/* Two-column layout when registration is enabled */
.igcr-wc-account #customer_login {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	max-width: 800px;
	margin: 0 auto;
}

.igcr-wc-account #customer_login::before,
.igcr-wc-account #customer_login::after {
	display: none;
}

.igcr-wc-account #customer_login .u-column1,
.igcr-wc-account #customer_login .u-column2 {
	float: none !important;
	width: 100% !important;
	padding: 0;
	margin: 0;
}

.igcr-wc-account #customer_login > .u-column1 > h2,
.igcr-wc-account #customer_login > .u-column2 > h2 {
	font-size: 18px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin: 0 0 20px;
}

/* Lost password heading inside form */
.igcr-wc-account .woocommerce-ResetPassword > p:first-of-type {
	font-size: 14px;
	line-height: 1.6;
	color: var( --igcr-theme-text-secondary );
	margin: 0 0 20px;
}

/* Lost password submit button */
.igcr-wc-account .woocommerce-ResetPassword .woocommerce-Button {
	display: block;
	width: 100%;
	padding: 10px;
	background: var( --igcr-theme-btn-primary );
	color: var( --igcr-theme-on-accent ) !important;
	border: none;
	border-radius: var( --igcr-theme-radius );
	font-size: 14px;
	font-weight: 600;
	font-family: var( --igcr-theme-font );
	cursor: pointer;
	transition: background 0.15s;
	margin-top: 8px;
}

.igcr-wc-account .woocommerce-ResetPassword .woocommerce-Button:hover {
	background: var( --igcr-theme-btn-primary-hover );
}

/* Form rows */
.igcr-wc-account .woocommerce-form-login .form-row,
.igcr-wc-account .woocommerce-form-register .form-row {
	margin-bottom: 16px;
}

/* Labels */
.igcr-wc-account .woocommerce-form-login label,
.igcr-wc-account .woocommerce-form-register label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin-bottom: 8px;
}

/* Inputs */
.igcr-wc-account .woocommerce-form-login .input-text,
.igcr-wc-account .woocommerce-form-register .input-text {
	width: 100%;
	padding: 10px 14px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	font-size: 16px;
	font-family: var( --igcr-theme-font );
	background: var( --igcr-theme-bg );
	color: var( --igcr-theme-text );
	transition: border-color 0.2s;
}

.igcr-wc-account .woocommerce-form-login .input-text:focus,
.igcr-wc-account .woocommerce-form-register .input-text:focus {
	border-color: var( --igcr-theme-accent );
	outline: none;
}

/* Submit button — full width, themed */
.igcr-wc-account .woocommerce-form-login__submit,
.igcr-wc-account .woocommerce-form-register__submit {
	display: block;
	width: 100%;
	padding: 10px;
	background: var( --igcr-theme-btn-primary );
	color: var( --igcr-theme-on-accent ) !important;
	border: none;
	border-radius: var( --igcr-theme-radius );
	font-size: 14px;
	font-weight: 600;
	font-family: var( --igcr-theme-font );
	cursor: pointer;
	transition: background 0.15s;
	margin-top: 8px;
}

.igcr-wc-account .woocommerce-form-login__submit:hover,
.igcr-wc-account .woocommerce-form-register__submit:hover {
	background: var( --igcr-theme-btn-primary-hover );
}

/* Remember me — own row, checkbox left of label */
.igcr-wc-account .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 400;
	color: var( --igcr-theme-text-secondary );
	cursor: pointer;
}

.igcr-wc-account .woocommerce-form-login__rememberme input[type="checkbox"] {
	width: 16px;
	height: 16px;
	accent-color: var( --igcr-theme-accent );
}

/* Lost password link */
.igcr-wc-account .lost_password {
	margin-top: 16px;
}

.igcr-wc-account .lost_password a {
	font-size: 13px;
	color: var( --igcr-theme-text-secondary );
	text-decoration: none;
}

.igcr-wc-account .lost_password a:hover {
	color: var( --igcr-theme-text );
}

/* Password visibility toggle */
.igcr-wc-account .woocommerce-form-login .show-password-input,
.igcr-wc-account .woocommerce-form-register .show-password-input {
	color: var( --igcr-theme-text-muted );
}

/* ── Instagram-first login layout ──
 *
 * .igcr-wc-login-hero is injected before the WC login form. JS in the
 * after hook hides native WC elements and reveals them on toggle click.
 * ────────────────────────────────────────────────────────────────────── */

.igcr-wc-login-hero {
	text-align: center;
	margin-bottom: 8px;
}

/* Responsive: stack login/register columns */
@media ( max-width: 767px ) {
	.igcr-wc-account .woocommerce:not(:has( .woocommerce-MyAccount-navigation )) {
		padding: 20px 0;
	}

	.igcr-wc-account #customer_login {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.igcr-wc-account .woocommerce-form-login,
	.igcr-wc-account .woocommerce-form-register,
	.igcr-wc-account .woocommerce-ResetPassword {
		padding: 24px 20px;
	}
}

/* ── Edit Account form (main "Edit Profile" equivalent) ── */

.igcr-wc-account .woocommerce-EditAccountForm {
	max-width: 400px;
}

.igcr-wc-account .woocommerce-EditAccountForm .form-row {
	margin-bottom: 20px;
}

.igcr-wc-account .woocommerce-EditAccountForm label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin-bottom: 8px;
}

.igcr-wc-account .woocommerce-EditAccountForm input.input-text {
	width: 100%;
	padding: 10px 14px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	font-size: 16px;
	font-family: var( --igcr-theme-font );
	background: var( --igcr-theme-bg );
	color: var( --igcr-theme-text );
	transition: border-color 0.2s;
}

.igcr-wc-account .woocommerce-EditAccountForm input.input-text:focus {
	border-color: var( --igcr-theme-accent );
	outline: none;
	box-shadow: none;
}

/* Fieldset for password change */
.igcr-wc-account .woocommerce-EditAccountForm fieldset {
	border: none;
	padding: 24px 0 0;
	margin: 24px 0 0;
	border-top: 1px solid var( --igcr-theme-border );
}

.igcr-wc-account .woocommerce-EditAccountForm fieldset legend {
	font-size: 16px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	padding: 0;
	margin-bottom: 16px;
}

/* Save button — Instagram-style accent */
.igcr-wc-account .woocommerce-EditAccountForm .woocommerce-Button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 24px;
	background: var( --igcr-theme-accent );
	color: var( --igcr-theme-on-accent ) !important;
	border: none;
	border-radius: var( --igcr-theme-radius );
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: opacity 0.15s;
	margin-top: 8px;
}

.igcr-wc-account .woocommerce-EditAccountForm .woocommerce-Button:hover {
	opacity: 0.85;
}

/* ── Orders table ── */

.igcr-wc-account .woocommerce-orders-table {
	width: 100%;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	font-size: 14px;
}

.igcr-wc-account .woocommerce-orders-table th {
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var( --igcr-theme-text-secondary );
	background: var( --igcr-theme-bg );
	padding: 12px 16px;
	border-bottom: 1px solid var( --igcr-theme-border );
}

.igcr-wc-account .woocommerce-orders-table td {
	padding: 14px 16px;
	border-bottom: 1px solid var( --igcr-theme-border );
	color: var( --igcr-theme-text );
	vertical-align: middle;
}

.igcr-wc-account .woocommerce-orders-table tr:last-child td {
	border-bottom: none;
}

.igcr-wc-account .woocommerce-orders-table a {
	color: var( --igcr-theme-accent );
	text-decoration: none;
}

.igcr-wc-account .woocommerce-orders-table a:hover {
	text-decoration: underline;
}

/* ── Addresses ── */

.igcr-wc-account .woocommerce-Addresses {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}

/* Reset WooCommerce default col2-set clearfix that creates extra grid items */
.igcr-wc-account .woocommerce-Addresses::before,
.igcr-wc-account .woocommerce-Addresses::after {
	display: none;
}

.igcr-wc-account .woocommerce-Address {
	float: none !important;
	width: 100% !important;
	padding: 24px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	background: var( --igcr-theme-bg );
}

.igcr-wc-account .woocommerce-Address-title {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 16px;
	padding-bottom: 12px;
	border-bottom: 1px solid var( --igcr-theme-border );
}

.igcr-wc-account .woocommerce-Address-title h3 {
	font-size: 16px;
	font-weight: 600;
	margin: 0;
}

.igcr-wc-account .woocommerce-Address-title a {
	font-size: 13px;
	font-weight: 500;
	color: var( --igcr-theme-accent );
	text-decoration: none;
	white-space: nowrap;
}

.igcr-wc-account .woocommerce-Address-title a:hover {
	text-decoration: underline;
}

.igcr-wc-account .woocommerce-Address address {
	font-size: 14px;
	font-style: normal;
	color: var( --igcr-theme-text-secondary );
	line-height: 1.6;
	margin: 0;
}

/* ── Dashboard greeting ── */

.igcr-wc-account .woocommerce-MyAccount-content > p {
	font-size: 14px;
	line-height: 1.7;
	color: var( --igcr-theme-text-secondary );
}

.igcr-wc-account .woocommerce-MyAccount-content > p a {
	color: var( --igcr-theme-accent );
	text-decoration: none;
	font-weight: 600;
}

.igcr-wc-account .woocommerce-MyAccount-content > p a:hover {
	text-decoration: underline;
}

/* ── Address edit form ── */

.igcr-wc-account .woocommerce-address-fields .form-row {
	margin-bottom: 16px;
}

.igcr-wc-account .woocommerce-address-fields label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var( --igcr-theme-text );
	margin-bottom: 8px;
}

.igcr-wc-account .woocommerce-address-fields input.input-text,
.igcr-wc-account .woocommerce-address-fields select {
	width: 100%;
	padding: 10px 14px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	font-size: 16px;
	font-family: var( --igcr-theme-font );
	background: var( --igcr-theme-bg );
	color: var( --igcr-theme-text );
	transition: border-color 0.2s;
}

.igcr-wc-account .woocommerce-address-fields input.input-text:focus,
.igcr-wc-account .woocommerce-address-fields select:focus {
	border-color: var( --igcr-theme-accent );
	outline: none;
}

/* ── Select2 (WooCommerce country/state dropdowns) ── */

.woocommerce .select2-container .select2-selection--single {
	height: auto;
	padding: 10px 14px;
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	background: var( --igcr-theme-bg );
	font-size: 16px;
	font-family: var( --igcr-theme-font );
	color: var( --igcr-theme-text );
	transition: border-color 0.2s;
	box-sizing: border-box;
}

.woocommerce .select2-container--open .select2-selection--single,
.woocommerce .select2-container--focus .select2-selection--single {
	border-color: var( --igcr-theme-accent );
	outline: none;
	box-shadow: none;
}

.woocommerce .select2-container .select2-selection--single .select2-selection__rendered {
	padding: 0;
	margin: 0;
	line-height: normal;
	color: var( --igcr-theme-text );
}

.woocommerce .select2-container .select2-selection--single .select2-selection__arrow {
	height: 100%;
	top: 0;
	right: 8px;
}

.woocommerce .select2-container .select2-selection--single .select2-selection__placeholder {
	color: var( --igcr-theme-text-muted, #999 );
}

/* Select2 dropdown panel */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
	background-color: var( --igcr-theme-accent );
}

.select2-dropdown {
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	background: var( --igcr-theme-bg );
	font-family: var( --igcr-theme-font );
	font-size: 14px;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
	border: 1px solid var( --igcr-theme-border );
	border-radius: var( --igcr-theme-radius );
	padding: 8px 12px;
	font-family: var( --igcr-theme-font );
	font-size: 14px;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
	border-color: var( --igcr-theme-accent );
	outline: none;
}

.select2-container--default .select2-results__option {
	padding: 8px 12px;
}

/* ── Responsive: stack on mobile ── */

@media ( max-width: 767px ) {
	.igcr-wc-account .woocommerce {
		flex-direction: column;
		border: none;
		border-radius: 0;
		background: transparent;
	}

	.igcr-wc-account .woocommerce-MyAccount-navigation {
		width: 100%;
		border-right: none;
		border-bottom: 1px solid var( --igcr-theme-border );
		background: var( --igcr-theme-bg-card );
	}

	.igcr-wc-account .woocommerce-MyAccount-navigation ul {
		flex-direction: row;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding: 0;
		gap: 0;
	}

	.igcr-wc-account .woocommerce-MyAccount-navigation ul li a {
		padding: 14px 16px;
		font-size: 14px;
		white-space: nowrap;
		border-radius: 0;
		gap: 8px;
		border-bottom: 2px solid transparent;
	}

	.igcr-wc-account .woocommerce-MyAccount-navigation ul li a::before {
		width: 18px;
		height: 18px;
		background-size: 18px 18px;
	}

	.igcr-wc-account .woocommerce-MyAccount-navigation ul li.is-active a,
	.igcr-wc-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
		border-bottom-color: var( --igcr-theme-text );
		background: transparent;
	}

	.igcr-wc-account .woocommerce-MyAccount-content {
		padding: 20px 16px;
	}

	.igcr-wc-account .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}
}

/* ── Notices / Alerts ── */

.woocommerce-message,
.wc-block-components-notice-banner.is-success {
	background: var( --igcr-theme-success-bg );
	border-left: 4px solid var( --igcr-theme-success );
	border-radius: var( --igcr-theme-radius );
	padding: 12px 16px;
	font-size: 14px;
	color: var( --igcr-theme-success-text );
	margin-bottom: 20px;
}

.woocommerce-error,
.wc-block-components-notice-banner.is-error {
	background: var( --igcr-theme-danger-bg );
	border-left: 4px solid var( --igcr-theme-danger );
	border-radius: var( --igcr-theme-radius );
	padding: 12px 16px;
	font-size: 14px;
	color: var( --igcr-theme-danger-text );
	margin-bottom: 20px;
}

.woocommerce-info,
.wc-block-components-notice-banner.is-info {
	background: var( --igcr-theme-info-bg );
	border-left: 4px solid var( --igcr-theme-info );
	border-radius: var( --igcr-theme-radius );
	padding: 12px 16px;
	font-size: 14px;
	color: var( --igcr-theme-info-text );
	margin-bottom: 20px;
}

.woocommerce-message a,
.woocommerce-info a {
	color: inherit;
	font-weight: 600;
}

/* ── Sale Badge ── */

.woocommerce span.onsale,
.wc-block-components-sale-badge {
	background: var( --igcr-theme-danger );
	color: var( --igcr-theme-on-accent );
	font-size: 12px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: var( --igcr-theme-radius );
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

/* ── Related Products ── */

.woocommerce .related.products,
.wp-block-woocommerce-related-products {
	margin-top: 48px;
	padding-top: 32px;
	border-top: 1px solid var( --igcr-theme-border );
}

.woocommerce .related.products > h2,
.wp-block-woocommerce-related-products .wp-block-query-title {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 20px;
}

/* ── Responsive: Product Grid ── */

@media ( max-width: 767px ) {
	/* Stack product grid to 2 columns on mobile */
	.wc-block-grid.has-3-columns .wc-block-grid__products,
	.wp-block-woocommerce-product-template.columns-3 {
		grid-template-columns: repeat( 2, 1fr ) !important;
	}

	/* Single product: stack columns */
	.igcr-wc-single .wp-block-columns {
		flex-direction: column;
	}

	.igcr-wc-single .wp-block-column {
		flex-basis: 100% !important;
	}

	/* Cart table: horizontal scroll */
	.woocommerce table.shop_table {
		display: block;
		overflow-x: auto;
	}

}

@media ( max-width: 480px ) {
	/* 1 column on very small screens */
	.wc-block-grid.has-3-columns .wc-block-grid__products,
	.wp-block-woocommerce-product-template.columns-3 {
		grid-template-columns: 1fr !important;
	}
}
