/**
 * woocommerce-forms.css — HeyChef brand skin for classic WooCommerce PHP forms.
 * Loaded on is_account_page() + is_woocommerce() via conditional enqueue.
 * Cart/Checkout (WC Blocks) are NOT in scope here.
 *
 * Token reference (from style.css :root):
 *   --rfy-surface      #FFFFFF
 *   --rfy-border       rgba(61,35,24,0.14)
 *   --rfy-radius-sm    8px
 *   --rfy-radius-md    16px
 *   --rfy-primary      #C45C3E
 *   --rfy-primary-dark #3D2318
 *   --rfy-foreground   #2B1A10
 *   --rfy-muted        #8A7B6A
 *   --rfy-font         "Heebo", Arial, sans-serif
 *   --rfy-transition   0.2s ease
 *
 * @package Recipefy
 */

/* ─────────────────────────────────────────────
   Shared input / textarea / select
   ───────────────────────────────────────────── */

/* Cover both .rfy-wc-form class-scoped AND bare .woocommerce form selectors */
.rfy-wc-form label,
.rfy-wc-form .woocommerce-form-row label,
.woocommerce-account .woocommerce form .form-row label,
.woocommerce-account .woocommerce form p > label {
	font-weight: 700;
	font-size: 0.9375rem;
	color: var(--rfy-foreground);
	margin-bottom: 6px;
	display: block;
}

.rfy-wc-form input[type="text"],
.rfy-wc-form input[type="email"],
.rfy-wc-form input[type="password"],
.rfy-wc-form input[type="tel"],
.rfy-wc-form select,
.rfy-wc-form textarea,
.woocommerce-account .woocommerce form .input-text,
.woocommerce-account .woocommerce form select,
.woocommerce-account .woocommerce form textarea,
.woocommerce-account .woocommerce-ResetPassword .input-text,
.woocommerce-account .woocommerce-form-login .input-text {
	width: 100%;
	padding: 12px 16px;
	border: 1.5px solid var(--rfy-border);
	border-radius: var(--rfy-radius-sm);
	background: var(--rfy-surface);
	color: var(--rfy-foreground);
	font-family: var(--rfy-font);
	font-size: var(--rfy-type-min);
	line-height: 1.5;
	transition: border-color var(--rfy-transition), box-shadow var(--rfy-transition);
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
}

.rfy-wc-form input[type="text"]:focus,
.rfy-wc-form input[type="email"]:focus,
.rfy-wc-form input[type="password"]:focus,
.rfy-wc-form select:focus,
.rfy-wc-form textarea:focus,
.woocommerce-account .woocommerce form .input-text:focus,
.woocommerce-account .woocommerce form select:focus,
.woocommerce-account .woocommerce-ResetPassword .input-text:focus,
.woocommerce-account .woocommerce-form-login .input-text:focus {
	outline: none;
	border-color: var(--rfy-primary);
	box-shadow: 0 0 0 3px rgba(196, 92, 62, 0.12);
}

/* Select chevron — see i18n.css */
.woocommerce-account .woocommerce form .required,
.woocommerce-account .woocommerce-form-login .required {
	color: var(--rfy-primary);
	margin-inline-start: 2px;
}

/* ─────────────────────────────────────────────
   Shared rfy-wc-form layout helpers
   (moved from account.css — keep in sync)
   ───────────────────────────────────────────── */
.rfy-wc-form__row--two {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

@media (max-width: 599px) {
	.rfy-wc-form__row--two {
		grid-template-columns: 1fr;
	}
}

.rfy-wc-form__fieldset {
	border: 1px solid var(--rfy-border);
	border-radius: var(--rfy-radius-sm);
	padding: 20px;
	margin: 24px 0;
}

.rfy-wc-form__fieldset legend {
	font-weight: 700;
	font-size: 0.9375rem;
	color: var(--rfy-muted);
	padding: 0 8px;
}

.rfy-wc-form__submit {
	margin-top: 28px;
}

/* ─────────────────────────────────────────────
   Buttons — all WC submit/action buttons
   ───────────────────────────────────────────── */
.woocommerce-account .woocommerce .button,
.woocommerce-account .woocommerce button[type="submit"],
.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-Button,
.woocommerce-account .woocommerce-ResetPassword button[type="submit"],
.rfy-woo-forms .woocommerce-Button,
.rfy-woo-forms button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--rfy-btn-padding-block) var(--rfy-btn-padding-inline);
	background: var(--rfy-primary);
	color: #fff;
	border: none;
	border-radius: var(--rfy-radius-sm);
	font-family: var(--rfy-font);
	font-size: var(--rfy-type-button);
	font-weight: 700;
	line-height: 1.25;
	cursor: pointer;
	text-decoration: none;
	transition: background var(--rfy-transition), box-shadow var(--rfy-transition);
	white-space: nowrap;
	box-sizing: border-box;
}

.woocommerce-account .woocommerce .button:hover,
.woocommerce-account .woocommerce button[type="submit"]:hover,
.woocommerce-account .woocommerce-form-login__submit:hover,
.woocommerce-account .woocommerce-Button:hover,
.rfy-woo-forms button[type="submit"]:hover {
	background: #b05035;
	box-shadow: 0 4px 12px rgba(196, 92, 62, 0.25);
}

/* View order / small secondary buttons — same tap size as PrimaryCTA */
.woocommerce-account .woocommerce a.button,
.woocommerce-account .woocommerce .woocommerce-orders-table__cell-order-actions a {
	padding: var(--rfy-btn-padding-block) var(--rfy-btn-padding-inline);
	font-size: var(--rfy-type-button);
	line-height: 1.25;
}

/* ─────────────────────────────────────────────
   Checkbox + remember me row
   ───────────────────────────────────────────── */
.woocommerce-form-login__rememberme,
.woocommerce-form__label-for-checkbox {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 500;
	font-size: 0.9375rem;
	color: var(--rfy-foreground);
	cursor: pointer;
}

.woocommerce-form__input-checkbox {
	width: 18px !important;
	height: 18px !important;
	accent-color: var(--rfy-primary);
	cursor: pointer;
	flex-shrink: 0;
}

/* ─────────────────────────────────────────────
   Notices — account + woo page
   ───────────────────────────────────────────── */
.woocommerce-notices-wrapper,
.rfy-woo-forms .woocommerce-notices-wrapper {
	margin-bottom: 16px;
}

.woocommerce-message,
.woocommerce-error,
.woocommerce-info,
.woocommerce-notice {
	padding: 14px 18px;
	border-radius: var(--rfy-radius-sm);
	font-size: 0.9375rem;
	margin-bottom: 16px;
	border: none;
	list-style: none;
}

.woocommerce-message {
	background: rgba(90, 143, 92, 0.1);
	color: #2d6e30;
	border: 1px solid rgba(90, 143, 92, 0.25);
}

.woocommerce-error {
	background: rgba(196, 92, 62, 0.1);
	color: var(--rfy-primary-dark);
	border: 1px solid rgba(196, 92, 62, 0.2);
}

.woocommerce-info {
	background: rgba(212, 168, 83, 0.15);
	color: #6b4d10;
	border: 1px solid rgba(212, 168, 83, 0.3);
}

.woocommerce-error ul,
.woocommerce-error li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* ─────────────────────────────────────────────
   Orders table
   ───────────────────────────────────────────── */
.woocommerce-orders-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}

.woocommerce-orders-table th {
	font-weight: 700;
	font-size: 0.8125rem;
	color: var(--rfy-muted);
	text-align: start;
	padding: 10px 12px;
	border-bottom: 2px solid var(--rfy-border);
	background: var(--rfy-surface-alt);
}

.woocommerce-orders-table td {
	padding: 14px 12px;
	border-bottom: 1px solid var(--rfy-border);
	color: var(--rfy-foreground);
	vertical-align: middle;
}

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

.woocommerce-orders-table mark {
	background: none;
	font-weight: 600;
}

/* Status badges */
.woocommerce-orders-table .woocommerce-orders-table__cell-order-status mark {
	padding: 3px 10px;
	border-radius: var(--rfy-radius-pill);
	font-size: 0.8125rem;
	font-weight: 700;
}

/* Responsive: stack on mobile */
@media (max-width: 640px) {
	.woocommerce-orders-table thead {
		display: none;
	}
	.woocommerce-orders-table tr {
		display: block;
		border: 1px solid var(--rfy-border);
		border-radius: var(--rfy-radius-sm);
		margin-bottom: 12px;
		padding: 12px;
	}
	.woocommerce-orders-table td {
		display: flex;
		justify-content: space-between;
		align-items: center;
		border: none;
		padding: 6px 0;
		font-size: 0.9375rem;
	}
	.woocommerce-orders-table td::before {
		content: attr(data-title);
		font-weight: 700;
		font-size: 0.8125rem;
		color: var(--rfy-muted);
		flex-shrink: 0;
	}
}

/* ─────────────────────────────────────────────
   Lost password / reset password page
   ───────────────────────────────────────────── */
.rfy-lost-password-card {
	max-width: 480px;
	margin-inline: auto;
}

.rfy-woo-forms__desc {
	color: var(--rfy-muted);
	font-size: 1rem;
	margin-bottom: 20px;
	line-height: 1.6;
}

/* ─────────────────────────────────────────────
   Address list page
   ───────────────────────────────────────────── */
.rfy-address-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}

@media (min-width: 600px) {
	.rfy-address-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

.rfy-address-card {
	background: var(--rfy-surface);
	border: 1px solid var(--rfy-border);
	border-radius: var(--rfy-radius-md);
	padding: 24px;
	box-shadow: var(--rfy-shadow-sm);
}

.rfy-address-card__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 14px;
}

.rfy-address-card__title {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--rfy-foreground);
	margin: 0;
}

.rfy-address-card__edit {
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--rfy-primary);
	text-decoration: none;
	padding: 6px 14px;
	border: 1.5px solid var(--rfy-primary);
	border-radius: var(--rfy-radius-pill);
	transition: background var(--rfy-transition), color var(--rfy-transition);
	white-space: nowrap;
}

.rfy-address-card__edit:hover {
	background: var(--rfy-primary);
	color: #fff;
}

.rfy-address-card address {
	font-style: normal;
	color: var(--rfy-muted);
	font-size: 0.9375rem;
	line-height: 1.65;
}

.rfy-address-card__empty {
	color: var(--rfy-muted);
	font-size: 0.9375rem;
}

/* ─────────────────────────────────────────────
   Form row spacing
   ───────────────────────────────────────────── */
.woocommerce-account .woocommerce .form-row,
.woocommerce-account .woocommerce .woocommerce-form-row {
	margin-bottom: 16px;
}

.woocommerce-account .woocommerce .form-row:last-of-type {
	margin-bottom: 0;
}

/* Lost password link */
.woocommerce-LostPassword {
	margin-top: 16px;
	font-size: 0.875rem;
}

.woocommerce-LostPassword a,
.rfy-woo-forms .woocommerce-LostPassword a {
	color: var(--rfy-primary);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: rgba(196, 92, 62, 0.3);
	text-underline-offset: 2px;
}

/* ─────────────────────────────────────────────
   Login card shell (guest /my-account/ + form-login.php)
   ───────────────────────────────────────────── */
.rfy-woo-login-wrap {
	max-width: 480px;
	margin-inline: auto;
}

.rfy-woo-login-card {
	background: var(--rfy-surface);
	border: 1px solid var(--rfy-border);
	border-radius: var(--rfy-radius-md);
	padding: 36px 32px;
	box-shadow: var(--rfy-shadow-md);
}

.rfy-woo-login-card__title {
	font-size: var(--rfy-type-h2);
	color: var(--rfy-foreground);
	margin: 0 0 24px;
	line-height: 1.2;
}

.rfy-woo-login-card__register {
	margin-top: 20px;
	text-align: center;
	font-size: 0.9375rem;
	color: var(--rfy-muted);
}

.rfy-woo-login-card__register a {
	color: var(--rfy-primary);
	font-weight: 600;
	text-decoration: underline;
}

/* Eyebrow bar above login card (matches account hero pattern) */
.rfy-woo-login-eyebrow {
	text-align: center;
	color: var(--rfy-muted);
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-bottom: 12px;
}

/* Inputs scoped inside login card */
.rfy-woo-login-card .woocommerce-form .input-text,
.rfy-woo-login-card .input-text {
	width: 100%;
	padding: 12px 16px;
	border: 1.5px solid var(--rfy-border);
	border-radius: var(--rfy-radius-sm);
	background: var(--rfy-surface);
	color: var(--rfy-foreground);
	font-family: var(--rfy-font);
	font-size: 1rem;
	line-height: 1.5;
	transition: border-color var(--rfy-transition), box-shadow var(--rfy-transition);
	box-sizing: border-box;
}

.rfy-woo-login-card .woocommerce-form .input-text:focus,
.rfy-woo-login-card .input-text:focus {
	outline: none;
	border-color: var(--rfy-primary);
	box-shadow: 0 0 0 3px rgba(196, 92, 62, 0.12);
}

.rfy-woo-login-card label {
	font-weight: 700;
	font-size: 0.9375rem;
	color: var(--rfy-foreground);
	margin-bottom: 6px;
	display: block;
}

.rfy-woo-login-card .woocommerce-form-row {
	margin-bottom: 16px;
}

.rfy-woo-login-card .form-row {
	margin-bottom: 16px;
}

.rfy-woo-login-card button[type="submit"],
.rfy-woo-login-card .woocommerce-form-login__submit {
	width: 100%;
	padding: 14px 24px;
	min-height: 50px;
	background: var(--rfy-primary);
	color: #fff;
	border: none;
	border-radius: var(--rfy-radius-sm);
	font-family: var(--rfy-font);
	font-size: 1.0625rem;
	font-weight: 700;
	cursor: pointer;
	transition: background var(--rfy-transition);
}

.rfy-woo-login-card button[type="submit"]:hover {
	background: #b05035;
}

/* ─────────────────────────────────────────────
   Woo page padding / wrapper
   ───────────────────────────────────────────── */
.rfy-woo-forms {
	padding-block: 48px;
}

.rfy-woo-forms .rfy-container {
	max-width: var(--rfy-container);
	margin-inline: auto;
}
