/* Minimal dark-theme overrides so WooCommerce cart/checkout/account
   pages read correctly on the Tranhday dark palette. */

.generic-page { max-width: 1120px; margin: 0 auto; padding: 48px 56px 80px; }
.generic-page .page-title { margin-bottom: 28px; }

.woocommerce a { color: var(--acc); }
.woocommerce table.shop_table {
	border: 1px solid var(--line);
	border-radius: 12px;
	background: var(--panel);
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	border-color: var(--line) !important;
	color: var(--ink);
}
.woocommerce table.shop_table td.product-name,
.woocommerce table.shop_table .amount { color: var(--ink); }
.woocommerce .cart_item .variation,
.woocommerce .cart_item dl.variation dt,
.woocommerce .cart_item dl.variation dd { color: var(--muted); }

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .quantity .qty {
	background: var(--bg);
	border: 1px solid var(--line-2);
	color: var(--ink);
	border-radius: 8px;
	padding: 10px 12px;
}
.woocommerce form .form-row label { color: var(--muted); }

.woocommerce #payment,
.woocommerce-checkout #payment div.payment_box {
	background: var(--panel);
	color: var(--ink);
	border-radius: 12px;
}
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--line); }

.woocommerce button.button,
.woocommerce a.button,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce #place_order {
	background: var(--acc);
	color: #17150f;
	font-weight: 700;
	border-radius: 8px;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce #place_order:hover { background: var(--acc); opacity: .9; color: #17150f; }

/* Block cart/checkout buttons — Proceed to checkout, Place Order, etc. */
body .wc-block-components-button:not(.is-link),
body .wc-block-cart__submit-button,
body .wc-block-components-checkout-place-order-button {
	background: var(--acc);
	color: #17150f;
	font-weight: 700;
	border-radius: 8px;
	border: none;
	font-size: 17px;
	min-height: 54px;
	text-transform: uppercase;
	letter-spacing: .05em;
}
body .wc-block-components-button:not(.is-link) .wc-block-components-button__text { font-size: 17px; }
body .wc-block-components-button:not(.is-link):hover,
body .wc-block-components-button:not(.is-link):focus {
	background: var(--acc);
	color: #17150f;
	opacity: .88;
}
body .wc-block-components-button:not(.is-link) .wc-block-components-button__text { color: inherit; }

/* Block checkout form fields — kill the white inputs, match the dark theme */
body .wc-block-components-text-input input,
body .wc-block-components-textarea textarea,
body .wc-block-components-textarea,
body .wc-block-components-combobox input,
body .wc-block-components-select select,
body .wc-block-components-form input[type="text"],
body .wc-block-components-form input[type="email"],
body .wc-block-components-form input[type="tel"],
body .wc-block-components-form input[type="number"] {
	background: var(--panel) !important;
	border: 1px solid var(--line-3) !important;
	color: var(--ink) !important;
	border-radius: 8px;
}
body .wc-block-components-text-input input:focus,
body .wc-block-components-combobox input:focus,
body .wc-block-components-textarea textarea:focus {
	border-color: var(--acc) !important;
	box-shadow: 0 0 0 1px var(--acc);
	outline: none;
}
/* Floating labels inside the fields */
body .wc-block-components-text-input label,
body .wc-block-components-combobox label,
body .wc-block-components-select label,
body .wc-block-components-checkbox__label {
	color: var(--muted);
}
/* Browser autofill paints white — repaint dark */
body .wc-block-components-text-input input:-webkit-autofill,
body .wc-block-components-combobox input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 100px var(--panel) inset;
	-webkit-text-fill-color: var(--ink);
	caret-color: var(--ink);
}
/* Native selects (Country/Region, State) — note: "wc-blocks-" prefix, the
   white paint sits on the wrapper, and color-scheme darkens the OS dropdown */
body .wc-blocks-components-select .wc-blocks-components-select__container {
	background: var(--panel) !important;
	border: 1px solid var(--line-3) !important;
	border-radius: 8px;
}
body .wc-blocks-components-select__select {
	background: transparent !important;
	color: var(--ink) !important;
	color-scheme: dark !important;
}
body select, body option { color-scheme: dark; }
body option { background: var(--panel); color: var(--ink); }
body .wc-blocks-components-select__label { color: var(--muted); }
body .wc-blocks-components-select__expand { fill: var(--muted); }

/* Quantity badge on order-summary thumbnails */
body .wc-block-components-order-summary-item__quantity {
	background: var(--acc) !important;
	color: #17150f !important;
	border: 2px solid var(--bg) !important;
	font-weight: 700;
	opacity: 1;
}

/* Checkbox (order note, etc.) */
body .wc-block-components-checkbox .wc-block-components-checkbox__input {
	background: var(--panel);
	border: 1px solid var(--line-2);
}
body .wc-block-components-checkbox .wc-block-components-checkbox__input:checked {
	background: var(--acc);
	border-color: var(--acc);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background: var(--panel);
	color: var(--ink);
	border-top-color: var(--acc);
}
.woocommerce-message a, .woocommerce-info a { color: var(--acc); }

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout .woocommerce-checkout-review-order { color: var(--ink); }
.woocommerce .checkout h3, .woocommerce h2 { color: var(--ink); }

@media (max-width: 900px) {
	.generic-page { padding: 40px 24px 60px; }
}
