/* Restyles WooCommerce's own cart/checkout/account markup to match
   the minimalist palette, without replacing WooCommerce's templates. */

.woocommerce {
	font-family: var(--um-font);
	color: var(--um-ink);
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 24px;
}

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

.woocommerce table.shop_table th {
	background: var(--um-surface);
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	color: var(--um-ink-soft);
	padding: 12px 16px;
}

.woocommerce table.shop_table td {
	padding: 14px 16px;
	border-top: 1px solid var(--um-border);
}

.woocommerce a.remove {
	color: var(--um-ink-soft) !important;
	border-radius: 50% !important;
}

.woocommerce #order_review,
.woocommerce-checkout-review-order-table {
	background: var(--um-surface);
	border-radius: var(--um-radius);
	padding: 20px;
}

.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce select,
.woocommerce textarea {
	border: 1px solid var(--um-border) !important;
	border-radius: 6px !important;
	padding: 10px 12px !important;
	font-family: var(--um-font) !important;
}

.woocommerce input[type="text"]:focus,
.woocommerce input[type="email"]:focus,
.woocommerce select:focus {
	border-color: var(--um-accent) !important;
	outline: none !important;
}

.woocommerce button.button,
.woocommerce a.button,
.woocommerce #place_order,
.woocommerce input.button {
	background: var(--um-accent) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 6px !important;
	padding: 12px 22px !important;
	font-weight: 600 !important;
	font-family: var(--um-font) !important;
	text-transform: none !important;
}

.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce #place_order:hover {
	background: var(--um-accent-hover) !important;
}

.woocommerce-info,
.woocommerce-message,
.woocommerce-noreviews,
.woocommerce-error {
	border-top-color: var(--um-accent) !important;
	border-radius: 6px;
	font-family: var(--um-font);
}

.woocommerce-error {
	border-top-color: #b3261e !important;
}

.woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	border: 1px solid var(--um-border);
	border-radius: var(--um-radius);
	overflow: hidden;
}

.woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid var(--um-border);
}

.woocommerce-MyAccount-navigation li:last-child {
	border-bottom: none;
}

.woocommerce-MyAccount-navigation a {
	display: block;
	padding: 12px 16px;
	color: var(--um-ink);
	text-decoration: none;
	font-size: 0.9rem;
}

.woocommerce-MyAccount-navigation li.is-active a {
	background: var(--um-accent);
	color: #fff;
}

/* Hidden country field — kept in the DOM for WooCommerce's own validation
   and order records, but never shown to the student. */
.woocommerce .um-hidden-field,
.woocommerce-checkout .um-hidden-field {
	display: none !important;
}

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
	width: 100%;
	float: none;
}

.woocommerce-billing-fields h3,
.woocommerce-checkout h3 {
	font-size: 1.05rem;
	margin-bottom: 12px;
}
