/*
Theme Name: Quantzee Checkout
Theme URI: https://quantzee.com/
Author: Quantzee
Author URI: https://quantzee.com/
Description: A minimal WordPress theme for Quantzee — built only to serve WooCommerce checkout pages, styled to match the Quantzee brand (dark navy background, purple primary, yellow accent).
Version: 1.0.6
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: quantzee-checkout
Tags: woocommerce, checkout, dark, minimal
*/

:root {
	--qz-primary:   #4D39FF;
	--qz-secondary: #9625E0;
	--qz-accent:    #FABB04;
	--qz-dark:      #12122C;
	--qz-darker:    #0B0B1F;
	--qz-body:      #E6E6E8;
	--qz-muted:     #8A8AA0;
	--qz-border:    #2A2A45;
	--qz-white:     #FFFFFF;
}

* { box-sizing: border-box; }

html, body {
	margin: 0;
	padding: 0;
	background: var(--qz-dark);
	color: var(--qz-body);
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

a { color: var(--qz-primary); text-decoration: none; }
a:hover { color: var(--qz-accent); }

h1, h2, h3, h4, h5, h6 {
	color: var(--qz-white);
	font-weight: 600;
	margin-top: 0;
}

/* ---------- Header ---------- */
.qz-header {
	background: var(--qz-darker);
	border-bottom: 1px solid var(--qz-border);
	padding: 18px 0;
}
.qz-header-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}
.qz-branding img { display: block; height: 48px; width: auto; }
.qz-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 28px;
}
.qz-nav a {
	color: var(--qz-body);
	font-size: 15px;
	font-weight: 500;
}
.qz-nav a:hover { color: var(--qz-primary); }
.qz-secure-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--qz-accent);
	font-size: 13px;
	font-weight: 500;
}
.qz-secure-badge::before {
	content: "";
	display: inline-block;
	width: 14px;
	height: 14px;
	background: var(--qz-accent);
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 1 3 5v6c0 5 3.8 9.7 9 11 5.2-1.3 9-6 9-11V5l-9-4z'/></svg>") no-repeat center / contain;
	        mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 1 3 5v6c0 5 3.8 9.7 9 11 5.2-1.3 9-6 9-11V5l-9-4z'/></svg>") no-repeat center / contain;
}

/* ---------- Main / Checkout ---------- */
.qz-main {
	max-width: 1200px;
	margin: 0 auto;
	padding: 48px 24px;
}
.qz-page-title {
	font-size: 32px;
	margin-bottom: 32px;
	color: var(--qz-white);
}

/* WooCommerce checkout styling */
.woocommerce, .woocommerce-page { color: var(--qz-body); }

.woocommerce form .form-row label,
.woocommerce-checkout h3,
.woocommerce-checkout h2,
.woocommerce-checkout legend {
	color: var(--qz-white);
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	color: var(--qz-white) !important;
	padding: 12px 14px !important;
	border-radius: 8px !important;
	height: auto !important;
	width: 100%;
	font-size: 15px;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
	outline: none;
	border-color: var(--qz-primary) !important;
	box-shadow: 0 0 0 3px rgba(77, 57, 255, 0.2);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--qz-white) !important;
	line-height: 44px !important;
}

.woocommerce #payment,
.woocommerce-checkout-review-order,
.woocommerce table.shop_table {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 12px !important;
	color: var(--qz-body) !important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	border-color: var(--qz-border) !important;
	color: var(--qz-body) !important;
}

.woocommerce #payment ul.payment_methods {
	border-bottom: 1px solid var(--qz-border) !important;
}
.woocommerce #payment div.payment_box {
	background: var(--qz-dark) !important;
	color: var(--qz-body) !important;
}
.woocommerce #payment div.payment_box::before {
	border-bottom-color: var(--qz-dark) !important;
}

/* Buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #place_order,
.qz-btn {
	background: var(--qz-primary) !important;
	color: var(--qz-white) !important;
	border: none !important;
	padding: 14px 28px !important;
	border-radius: 8px !important;
	font-weight: 600 !important;
	font-size: 15px !important;
	cursor: pointer;
	transition: background 0.15s ease, transform 0.15s ease;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #place_order:hover,
.qz-btn:hover {
	background: var(--qz-secondary) !important;
	color: var(--qz-white) !important;
}

.woocommerce-info,
.woocommerce-message {
	background: var(--qz-darker) !important;
	border-top-color: var(--qz-accent) !important;
	color: var(--qz-body) !important;
}
.woocommerce-error {
	background: var(--qz-darker) !important;
	border-top-color: #E0253E !important;
	color: var(--qz-body) !important;
}

/* ---------- Footer ---------- */
.qz-footer {
	background: var(--qz-darker);
	border-top: 1px solid var(--qz-border);
	padding: 24px;
	text-align: center;
	color: var(--qz-muted);
	font-size: 13px;
	margin-top: 48px;
}
.qz-footer a { color: var(--qz-muted); }
.qz-footer a:hover { color: var(--qz-primary); }

/* ---------- Cart Page ---------- */

/* Cart table */
table.cart,
table.woocommerce-cart-form__contents {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 12px !important;
	overflow: hidden;
	width: 100%;
}

table.cart thead tr,
table.woocommerce-cart-form__contents thead tr {
	background: rgba(77, 57, 255, 0.12);
}

table.cart th,
table.woocommerce-cart-form__contents th {
	color: var(--qz-muted) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 14px 20px !important;
	border-bottom: 1px solid var(--qz-border) !important;
}

table.cart td,
table.woocommerce-cart-form__contents td {
	padding: 20px !important;
	border-bottom: 1px solid var(--qz-border) !important;
	vertical-align: middle !important;
	color: var(--qz-body) !important;
}

table.cart tr:last-child td,
table.woocommerce-cart-form__contents tr:last-child td {
	border-bottom: none !important;
}

/* Product thumbnail */
table.cart td.product-thumbnail img {
	width: 72px !important;
	height: 72px !important;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid var(--qz-border);
}

/* Product name */
table.cart td.product-name a {
	color: var(--qz-white) !important;
	font-weight: 600;
	font-size: 16px;
}
table.cart td.product-name a:hover {
	color: var(--qz-primary) !important;
}

/* Price columns */
table.cart td.product-price,
table.cart td.product-subtotal {
	color: var(--qz-white) !important;
	font-weight: 600;
	font-size: 17px;
}

/* Strike-through & save */
table.cart del { color: var(--qz-muted) !important; font-size: 13px; }
table.cart ins { color: var(--qz-accent) !important; text-decoration: none; }

/* Remove button */
table.cart td.product-remove a.remove {
	color: var(--qz-muted) !important;
	font-size: 22px;
	line-height: 1;
	transition: color 0.15s;
}
table.cart td.product-remove a.remove:hover {
	color: #E0253E !important;
	background: transparent !important;
}

/* Actions row */
table.cart td.actions { background: rgba(42, 42, 69, 0.4); }
table.cart td.actions .coupon input[type="text"] {
	background: var(--qz-dark) !important;
	border: 1px solid var(--qz-border) !important;
	color: var(--qz-white) !important;
	padding: 10px 14px !important;
	border-radius: 8px !important;
	font-size: 14px;
}
table.cart td.actions .coupon input[type="text"]:focus {
	border-color: var(--qz-primary) !important;
	outline: none;
	box-shadow: 0 0 0 3px rgba(77, 57, 255, 0.2);
}
table.cart td.actions .button {
	background: transparent !important;
	border: 1px solid var(--qz-border) !important;
	color: var(--qz-body) !important;
	font-size: 13px !important;
	padding: 10px 18px !important;
}
table.cart td.actions .button:hover {
	border-color: var(--qz-primary) !important;
	color: var(--qz-primary) !important;
	background: transparent !important;
}

/* ---------- Cart Totals ---------- */
.cart-collaterals { margin-top: 32px; }

.cart_totals {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 16px !important;
	padding: 28px !important;
	float: none !important;
	width: 100% !important;
	max-width: 420px;
	margin-left: auto;
}

.cart_totals h2 {
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--qz-muted) !important;
	margin-bottom: 20px !important;
}

.cart_totals table {
	width: 100%;
	border-collapse: collapse;
}

.cart_totals table th,
.cart_totals table td {
	padding: 12px 0 !important;
	border-bottom: 1px solid var(--qz-border) !important;
	color: var(--qz-body) !important;
}

.cart_totals table .order-total th,
.cart_totals table .order-total td {
	border-bottom: none !important;
	padding-top: 20px !important;
	padding-bottom: 0 !important;
}

.cart_totals table .order-total th {
	color: var(--qz-white) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
}

.cart_totals table .order-total td strong {
	color: var(--qz-white) !important;
	font-size: 26px !important;
	font-weight: 700 !important;
}

/* ---------- Proceed to Checkout button ---------- */
.wc-proceed-to-checkout {
	margin-top: 24px !important;
	padding: 0 !important;
}

.wc-proceed-to-checkout a,
.wc-proceed-to-checkout a.button,
.wc-proceed-to-checkout a.checkout-button,
a.checkout-button {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
	background: linear-gradient(135deg, var(--qz-primary) 0%, var(--qz-secondary) 100%) !important;
	color: var(--qz-white) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	padding: 16px 24px !important;
	border-radius: 10px !important;
	border: none !important;
	letter-spacing: 0.03em;
	box-shadow: 0 4px 24px rgba(77, 57, 255, 0.45);
	transition: box-shadow 0.2s ease, transform 0.15s ease;
}

.wc-proceed-to-checkout a:hover,
.wc-proceed-to-checkout a.button:hover,
.wc-proceed-to-checkout a.checkout-button:hover,
a.checkout-button:hover {
	background: linear-gradient(135deg, var(--qz-secondary) 0%, var(--qz-primary) 100%) !important;
	box-shadow: 0 6px 32px rgba(77, 57, 255, 0.65);
	transform: translateY(-1px);
	color: var(--qz-white) !important;
}

.wc-proceed-to-checkout::after {
	content: "Secure & encrypted checkout";
	display: block;
	text-align: center;
	margin-top: 10px;
	font-size: 12px;
	color: var(--qz-muted);
}

/* ============================================================
   WooCommerce Cart BLOCK (Gutenberg) — wc-block-* classes
   ============================================================ */

/* Section header labels (PRODUCT / TOTAL / CART TOTALS) */
.wc-block-cart__main-title,
.wc-block-cart-items__header-product,
.wc-block-cart-items__header-total,
.wc-block-components-totals-wrapper > .wp-block-heading,
.wc-block-cart__totals-title {
	color: var(--qz-muted) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
}

/* Cart items list container */
.wc-block-cart-items,
.wp-block-woocommerce-cart-line-items-block {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 12px !important;
	padding: 8px 20px !important;
}

.wc-block-cart-items__header {
	border-bottom: 1px solid var(--qz-border) !important;
	padding: 14px 4px !important;
}

/* Each cart item row */
.wc-block-cart-items__row,
tr.wc-block-cart-items__row {
	border-bottom: 1px solid var(--qz-border) !important;
}
.wc-block-cart-items__row:last-child,
tr.wc-block-cart-items__row:last-child {
	border-bottom: none !important;
}
.wc-block-cart-items__row td {
	padding: 20px 4px !important;
	background: transparent !important;
	border: none !important;
}

/* Product image */
.wc-block-cart-item__image img,
.wc-block-components-product-image img {
	width: 72px !important;
	height: 72px !important;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid var(--qz-border);
}

/* Product name */
.wc-block-components-product-name,
.wc-block-cart-item__product-name a,
a.wc-block-components-product-name {
	color: var(--qz-white) !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	text-decoration: none !important;
}
.wc-block-components-product-name:hover,
a.wc-block-components-product-name:hover {
	color: var(--qz-primary) !important;
}

/* Prices in line items */
.wc-block-components-product-price,
.wc-block-components-product-price__value,
.wc-block-cart-item__total-price-and-sale-badge .wc-block-components-formatted-money-amount {
	color: var(--qz-white) !important;
	font-weight: 600 !important;
	font-size: 17px !important;
}

/* Strike-through original price */
.wc-block-components-product-price del,
.wc-block-components-product-price__regular {
	color: var(--qz-muted) !important;
	font-size: 13px !important;
	text-decoration: line-through;
}

/* "Save $X" sale badge */
.wc-block-components-sale-badge,
.wc-block-cart-item__sale-badge {
	background: rgba(250, 187, 4, 0.12) !important;
	color: var(--qz-accent) !important;
	border-radius: 6px !important;
	padding: 4px 8px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
}

/* Remove (trash) link */
.wc-block-cart-item__remove-link {
	color: var(--qz-muted) !important;
}
.wc-block-cart-item__remove-link:hover {
	color: #E0253E !important;
}

/* ----- Right side: Cart Totals panel ----- */
.wp-block-woocommerce-cart-order-summary-block,
.wc-block-cart__sidebar,
.wc-block-components-sidebar-layout .wc-block-components-sidebar {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 16px !important;
	padding: 28px !important;
}

.wc-block-components-totals-wrapper {
	border-top: 1px solid var(--qz-border) !important;
	padding-top: 16px !important;
}
.wc-block-components-totals-wrapper:first-child {
	border-top: none !important;
	padding-top: 0 !important;
}

/* Total row (Estimated total / $9.99) */
.wc-block-components-totals-item__label {
	color: var(--qz-white) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
}
.wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--qz-white) !important;
	font-size: 26px !important;
	font-weight: 700 !important;
}

.wc-block-components-totals-footer-item {
	border-top: 1px solid var(--qz-border) !important;
	padding-top: 16px !important;
	margin-top: 12px !important;
}

/* ============================================================
   PROCEED TO CHECKOUT button (Block version)
   ============================================================ */
.wp-block-woocommerce-proceed-to-checkout-block,
.wc-block-cart__submit,
.wc-block-cart__submit-container {
	margin-top: 24px !important;
}

.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block a,
a.wc-block-cart__submit-button,
.wc-block-components-button.wc-block-cart__submit-button,
button.wc-block-components-button.contained,
.wc-block-components-checkout-place-order-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	background: linear-gradient(135deg, var(--qz-primary) 0%, var(--qz-secondary) 100%) !important;
	color: var(--qz-white) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	padding: 16px 24px !important;
	border-radius: 10px !important;
	border: none !important;
	letter-spacing: 0.03em !important;
	text-decoration: none !important;
	box-shadow: 0 4px 24px rgba(77, 57, 255, 0.45) !important;
	transition: box-shadow 0.2s ease, transform 0.15s ease !important;
	min-height: 56px !important;
}

.wc-block-cart__submit-button:hover,
a.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a:hover,
button.wc-block-components-button.contained:hover {
	background: linear-gradient(135deg, var(--qz-secondary) 0%, var(--qz-primary) 100%) !important;
	box-shadow: 0 6px 32px rgba(77, 57, 255, 0.65) !important;
	transform: translateY(-1px) !important;
	color: var(--qz-white) !important;
}

/* Inner button text span */
.wc-block-components-button__text {
	color: var(--qz-white) !important;
	font-weight: 700 !important;
	font-size: 16px !important;
}

/* Secure note under the button */
.wc-block-cart__submit-container::after {
	content: "Secure & encrypted checkout";
	display: block;
	text-align: center;
	margin-top: 10px;
	font-size: 12px;
	color: var(--qz-muted);
}

/* ---------- WooCommerce Checkout Block ---------- */
.wp-block-woocommerce-checkout,
.wc-block-checkout {
	color: var(--qz-body) !important;
}

/* Two-column layout polish */
.wc-block-checkout__main {
	background: var(--qz-dark) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 14px !important;
	padding: 32px !important;
}

.wc-block-components-sidebar-layout .wc-block-components-main {
	background: var(--qz-dark) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 14px !important;
	padding: 32px !important;
}

/* Section headings */
.wc-block-components-checkout-step__title,
.wc-block-components-title,
.wp-block-woocommerce-checkout-contact-information-block h2,
.wp-block-woocommerce-checkout-billing-address-block h2,
.wp-block-woocommerce-checkout-shipping-address-block h2,
.wp-block-woocommerce-checkout-shipping-method-block h2,
.wp-block-woocommerce-checkout-payment-block h2,
.wp-block-woocommerce-checkout-order-summary-block h2,
.wc-block-checkout__actions h2 {
	color: var(--qz-white) !important;
	font-weight: 700 !important;
	font-size: 20px !important;
	letter-spacing: -0.01em !important;
}

/* All form labels and helper text */
.wc-block-components-checkout-step__description,
.wc-block-checkout__guest-checkout-notice,
.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-address-form label,
.wc-block-components-checkbox__label {
	color: var(--qz-body) !important;
}

/* INPUT FIELDS — dark theme, no more white blocks */
.wc-block-components-text-input input,
.wc-block-components-text-input input.is-active,
.wc-block-components-address-form input,
.wc-block-components-form input[type="text"],
.wc-block-components-form input[type="email"],
.wc-block-components-form input[type="tel"],
.wc-block-components-form input[type="number"],
.wc-block-checkout input[type="text"],
.wc-block-checkout input[type="email"],
.wc-block-checkout input[type="tel"],
.wc-block-components-select .components-custom-select-control__button,
.wc-block-components-combobox-control input,
.wc-block-components-country-input input,
.wc-block-components-state-input input {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 10px !important;
	color: var(--qz-white) !important;
	height: 56px !important;
	padding: 18px 16px 8px !important;
	font-size: 15px !important;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease !important;
}

/* Floating labels — readable on dark */
.wc-block-components-text-input label,
.wc-block-components-combobox-control label,
.wc-block-components-country-input label,
.wc-block-components-state-input label {
	color: var(--qz-muted) !important;
	font-size: 14px !important;
}

.wc-block-components-text-input.is-active label,
.wc-block-components-text-input input:focus + label,
.wc-block-components-text-input input:not(:placeholder-shown) + label {
	color: var(--qz-primary) !important;
	font-size: 12px !important;
}

/* Focus state */
.wc-block-components-text-input input:focus,
.wc-block-components-address-form input:focus,
.wc-block-components-form input:focus,
.wc-block-checkout input:focus,
.wc-block-components-select .components-custom-select-control__button:focus,
.wc-block-components-combobox-control input:focus {
	background: var(--qz-darker) !important;
	border-color: var(--qz-primary) !important;
	box-shadow: 0 0 0 3px rgba(77, 57, 255, 0.18) !important;
	outline: none !important;
	color: var(--qz-white) !important;
}

/* Placeholder color */
.wc-block-components-text-input input::placeholder,
.wc-block-checkout input::placeholder {
	color: var(--qz-muted) !important;
	opacity: 1 !important;
}

/* Select dropdowns */
.wc-block-components-combobox-control,
.wc-block-components-select {
	background: var(--qz-darker) !important;
	border-radius: 10px !important;
}

.wc-block-components-combobox-control .components-form-token-field__input-container {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 10px !important;
	color: var(--qz-white) !important;
	min-height: 56px !important;
	padding: 18px 16px 8px !important;
}

.wc-block-components-combobox-control .components-form-token-field__input {
	color: var(--qz-white) !important;
}

/* Dropdown popover (country/state list) */
.components-form-token-field__suggestions-list,
.wc-block-components-combobox-control__listbox {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	color: var(--qz-body) !important;
}

.components-form-token-field__suggestion:hover,
.components-form-token-field__suggestion.is-selected {
	background: var(--qz-primary) !important;
	color: var(--qz-white) !important;
}

/* "+ Add apartment, suite..." link */
.wc-block-components-address-form__address_2-toggle,
.wc-block-components-address-card__edit,
.wc-block-checkout__add-note button,
button.wc-block-components-button.wc-block-components-button--link {
	color: var(--qz-accent) !important;
	font-weight: 600 !important;
}

/* "You are currently checking out as a guest" notice */
.wc-block-components-checkout-step__description,
.wc-block-checkout__guest-checkout-notice {
	color: var(--qz-muted) !important;
	font-size: 13px !important;
	margin-top: 6px !important;
}

/* Order summary sidebar */
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-totals-wrapper,
.wc-block-components-order-summary {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 12px !important;
	color: var(--qz-body) !important;
}

.wc-block-components-totals-item,
.wc-block-components-totals-footer-item {
	color: var(--qz-body) !important;
	border-color: var(--qz-border) !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item__label {
	color: var(--qz-white) !important;
	font-weight: 700 !important;
}

.wc-block-components-product-name {
	color: var(--qz-white) !important;
	font-weight: 600 !important;
}

.wc-block-components-product-price {
	color: var(--qz-white) !important;
}

.wc-block-components-product-price__regular,
.wc-block-components-formatted-money-amount--regular {
	color: var(--qz-muted) !important;
	text-decoration: line-through !important;
}

/* Sale badge */
.wc-block-components-sale-badge {
	background: var(--qz-accent) !important;
	color: var(--qz-darker) !important;
	font-weight: 700 !important;
	border-radius: 6px !important;
	padding: 4px 8px !important;
}

/* Checkbox */
.wc-block-components-checkbox input[type="checkbox"] {
	border: 1px solid var(--qz-border) !important;
	background: var(--qz-darker) !important;
}
.wc-block-components-checkbox input[type="checkbox"]:checked {
	background: var(--qz-primary) !important;
	border-color: var(--qz-primary) !important;
}

/* Place order button — same prominent gradient */
.wc-block-components-checkout-place-order-button {
	background: linear-gradient(135deg, var(--qz-primary) 0%, var(--qz-secondary) 100%) !important;
	color: var(--qz-white) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	padding: 18px 24px !important;
	border-radius: 10px !important;
	border: none !important;
	box-shadow: 0 4px 24px rgba(77, 57, 255, 0.45) !important;
	min-height: 56px !important;
	width: 100% !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.wc-block-components-checkout-place-order-button:hover {
	transform: translateY(-1px) !important;
	box-shadow: 0 6px 30px rgba(77, 57, 255, 0.6) !important;
}

/* Payment method radios */
.wc-block-components-payment-method-label {
	color: var(--qz-white) !important;
}

.wc-block-components-radio-control__option {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 10px !important;
	padding: 16px !important;
	margin-bottom: 8px !important;
}

.wc-block-components-radio-control__option-checked {
	border-color: var(--qz-primary) !important;
	background: rgba(77, 57, 255, 0.08) !important;
}

/* Validation error text */
.wc-block-components-validation-error {
	color: #ff7a8a !important;
	font-size: 12px !important;
}

/* ---------- Thank-you / Order Received ---------- */
.woocommerce-order {
	color: var(--qz-body);
}

.woocommerce-notice,
.woocommerce-thankyou-order-received,
p.woocommerce-thankyou-order-received {
	background: linear-gradient(135deg, rgba(77, 57, 255, 0.12), rgba(150, 37, 224, 0.12)) !important;
	border: 1px solid var(--qz-border) !important;
	border-left: 4px solid var(--qz-accent) !important;
	color: var(--qz-white) !important;
	border-radius: 12px !important;
	padding: 20px 24px !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	margin-bottom: 28px !important;
}

.woocommerce-order ul.woocommerce-order-overview,
ul.woocommerce-thankyou-order-details.order_details {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 12px !important;
	padding: 20px !important;
	list-style: none !important;
	margin: 0 0 28px !important;
}
.woocommerce-order ul.woocommerce-order-overview li,
ul.woocommerce-thankyou-order-details.order_details li {
	flex: 1 1 160px !important;
	background: var(--qz-dark) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 10px !important;
	padding: 14px 16px !important;
	color: var(--qz-muted) !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	border-right: 1px solid var(--qz-border) !important;
}
.woocommerce-order ul.woocommerce-order-overview li strong,
ul.woocommerce-thankyou-order-details.order_details li strong {
	display: block !important;
	color: var(--qz-white) !important;
	font-size: 16px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	margin-top: 4px !important;
}

.woocommerce-order h2,
.woocommerce-column__title {
	color: var(--qz-white) !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	margin-top: 28px !important;
	margin-bottom: 14px !important;
}

.woocommerce-order table.shop_table,
.woocommerce-order-details table.shop_table {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 12px !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	width: 100% !important;
	color: var(--qz-body) !important;
	overflow: hidden;
}
.woocommerce-order table.shop_table th,
.woocommerce-order table.shop_table td {
	padding: 14px 16px !important;
	border-bottom: 1px solid var(--qz-border) !important;
	color: var(--qz-body) !important;
}
.woocommerce-order table.shop_table th {
	background: var(--qz-dark) !important;
	color: var(--qz-muted) !important;
	font-size: 12px !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
}
.woocommerce-order table.shop_table tfoot th,
.woocommerce-order table.shop_table tfoot td {
	color: var(--qz-white) !important;
	font-weight: 700 !important;
}

.woocommerce-customer-details address {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 12px !important;
	padding: 18px !important;
	color: var(--qz-body) !important;
	font-style: normal !important;
}

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce {
	display: flex;
	gap: 28px;
	flex-wrap: wrap;
}
.woocommerce-MyAccount-navigation {
	flex: 0 0 240px;
	background: var(--qz-darker);
	border: 1px solid var(--qz-border);
	border-radius: 12px;
	padding: 16px;
}
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.woocommerce-MyAccount-navigation ul li {
	margin: 0;
}
.woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 10px 14px;
	color: var(--qz-body);
	text-decoration: none;
	border-radius: 8px;
	font-size: 14px;
	transition: background 0.15s ease, color 0.15s ease;
}
.woocommerce-MyAccount-navigation ul li a:hover {
	background: rgba(77, 57, 255, 0.1);
	color: var(--qz-white);
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
	background: linear-gradient(135deg, var(--qz-primary), var(--qz-secondary));
	color: var(--qz-white);
	font-weight: 600;
}
.woocommerce-MyAccount-content {
	flex: 1 1 0;
	min-width: 0;
	background: var(--qz-darker);
	border: 1px solid var(--qz-border);
	border-radius: 12px;
	padding: 28px;
	color: var(--qz-body);
}
.woocommerce-MyAccount-content a {
	color: var(--qz-accent);
}
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button[type="submit"] {
	background: linear-gradient(135deg, var(--qz-primary), var(--qz-secondary)) !important;
	color: var(--qz-white) !important;
	border: none !important;
	border-radius: 10px !important;
	padding: 12px 22px !important;
	font-weight: 700 !important;
	box-shadow: 0 4px 18px rgba(77, 57, 255, 0.35) !important;
	cursor: pointer;
}

/* Account login/register forms */
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.lost_reset_password,
.woocommerce form.checkout_coupon,
.woocommerce-EditAccountForm,
.woocommerce-address-fields {
	background: var(--qz-darker);
	border: 1px solid var(--qz-border);
	border-radius: 12px;
	padding: 24px;
	color: var(--qz-body);
}
.woocommerce form .form-row label {
	color: var(--qz-body);
	font-size: 14px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	background: var(--qz-dark) !important;
	border: 1px solid var(--qz-border) !important;
	border-radius: 10px !important;
	color: var(--qz-white) !important;
	padding: 12px 14px !important;
	font-size: 15px !important;
	width: 100% !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	border-color: var(--qz-primary) !important;
	box-shadow: 0 0 0 3px rgba(77, 57, 255, 0.18) !important;
	outline: none !important;
}

/* WooCommerce notices (info / success / error) — site-wide consistency */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background: var(--qz-darker) !important;
	border: 1px solid var(--qz-border) !important;
	border-left: 4px solid var(--qz-primary) !important;
	color: var(--qz-body) !important;
	border-radius: 10px !important;
	padding: 14px 18px !important;
}
.woocommerce-message { border-left-color: #28c76f !important; }
.woocommerce-error   { border-left-color: #ff5b6e !important; }
.woocommerce-info    { border-left-color: var(--qz-accent) !important; }
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
	color: var(--qz-accent) !important;
}

/* Page titles consistency */
.qz-page-title,
.woocommerce h1.entry-title {
	color: var(--qz-white);
	font-size: 32px;
	font-weight: 700;
	letter-spacing: -0.02em;
	margin-bottom: 24px;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
	.qz-header-inner { flex-wrap: wrap; justify-content: center; }
	.qz-nav ul { gap: 16px; flex-wrap: wrap; justify-content: center; }
	.qz-branding img { height: 36px; }
	.qz-page-title { font-size: 24px; }
	.qz-main { padding: 24px 16px; }

	.woocommerce-cart .cart_totals {
		max-width: 100%;
	}
	.woocommerce-cart table.cart th.product-thumbnail,
	.woocommerce-cart table.cart td.product-thumbnail {
		display: none;
	}

	.woocommerce-account .woocommerce { flex-direction: column; }
	.woocommerce-MyAccount-navigation { flex: 1 1 100%; }
	.woocommerce-order ul.woocommerce-order-overview li,
	ul.woocommerce-thankyou-order-details.order_details li { flex: 1 1 100%; }

	.wc-block-checkout__main,
	.wc-block-components-sidebar-layout .wc-block-components-main { padding: 20px !important; }
}