/* Customer account follows the homepage typography, surfaces and button system. */
body.woocommerce-account .inner-page {
	width: min(calc(100% - 76px), 1320px);
	padding: 56px 0 110px;
}

body.woocommerce-account .inner-page h1 {
	margin: 0 0 48px;
	font: 700 clamp(42px, 4vw, 62px)/1.08 var(--serif);
}

body.woocommerce-account .inner-page .entry-content {
	max-width: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 28%;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 14px;
	border-radius: 20px;
	background: #d8c6a9;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 13px 16px;
	border-radius: 10px;
	font: 700 14px/1.3 var(--serif);
	transition: background .2s ease, color .2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
	background: var(--brown);
	color: var(--sand);
}

.woocommerce-account .woocommerce-MyAccount-content {
	width: 68%;
	min-height: 260px;
	padding: 30px 36px;
	border: 1px solid #c8b495;
	border-radius: 20px;
}

.woocommerce-account .woocommerce-MyAccount-content p:first-child {
	margin-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
	text-decoration: underline;
	text-decoration-color: var(--terracotta);
	text-underline-offset: 3px;
}

.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-form .button {
	min-height: 48px;
	padding: 14px 22px;
	border-radius: 10px;
	background: var(--terracotta);
	color: var(--sand);
	font: 700 14px/1.2 var(--sans);
}

.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-form .button:hover {
	background: var(--brown);
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 15px;
	margin: 0 0 18px;
	padding: 20px 22px;
	border: 0;
	border-radius: 12px;
	background: #d8c6a9;
	color: var(--brown);
	font: 500 14px/1.55 var(--sans);
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error::before {
	display: none;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button {
	order: 1;
	float: none;
	margin: 0;
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 9px 14px;
	border-radius: 9px;
	background: var(--terracotta);
	color: var(--sand);
	font: 700 12px/1.25 var(--sans);
	text-decoration: none;
	transition: background .35s ease, transform .35s ease;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:focus-visible {
	background: var(--brown);
	color: var(--sand);
	transform: translateY(-3px);
}

.woocommerce-account .woocommerce-Input,
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content select,
.woocommerce-account .woocommerce-MyAccount-content .select2-container .select2-selection {
	min-height: 48px;
	padding: 10px 14px;
	border: 1px solid #a18a6e;
	border-radius: 10px;
	background: #ddcdb2;
	color: var(--brown);
}

.woocommerce-account .woocommerce-MyAccount-content .select2-container .select2-selection {
	padding: 0 13px;
}

.woocommerce-account .woocommerce-MyAccount-content .select2-selection__rendered {
	padding: 0;
	line-height: 46px;
	color: var(--brown);
}

.woocommerce-account .woocommerce-MyAccount-content .select2-selection__arrow {
	top: 10px;
	right: 10px;
}

@media (max-width: 780px) {
	body.woocommerce-account .inner-page {
		width: calc(100% - 32px);
		padding: 38px 0 70px;
	}

	body.woocommerce-account .inner-page h1 {
		margin-bottom: 28px;
		font-size: clamp(36px, 9vw, 48px);
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none;
		width: 100%;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-bottom: 20px;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		min-height: 0;
		padding: 22px;
	}
}

/* Native login, registration and password recovery share the checkout fields. */
body.woocommerce-account .woocommerce h2,
body.woocommerce-account .woocommerce h3 {
	font: 700 clamp(24px, 2.4vw, 32px)/1.2 var(--serif);
}
body.woocommerce-account .woocommerce #customer_login {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 32px;
}
body.woocommerce-account .woocommerce #customer_login::before,
body.woocommerce-account .woocommerce #customer_login::after { content: none; }
body.woocommerce-account .woocommerce #customer_login > .col-1,
body.woocommerce-account .woocommerce #customer_login > .col-2 {
	float: none;
	width: auto;
	min-width: 0;
	padding: 28px;
	border: 1px solid #c8b495;
	border-radius: 20px;
	background: #e2d3bc;
}
body.woocommerce-account .woocommerce #customer_login h2 { margin: 0 0 24px; }
body.woocommerce-account .woocommerce form.login,
body.woocommerce-account .woocommerce form.register {
	margin: 0;
	padding: 0;
	border: 0;
}
body.woocommerce-account .woocommerce form .form-row { margin-bottom: 18px; padding: 0; }
body.woocommerce-account .woocommerce form .form-row label {
	font: 600 14px/1.5 var(--sans);
	margin-bottom: 7px;
}
body.woocommerce-account .woocommerce form .form-row input.input-text,
body.woocommerce-account .woocommerce form .form-row textarea,
body.woocommerce-account .woocommerce form .form-row select {
	width: 100%;
	min-height: 52px;
	padding: 13px 15px;
	border: 1px solid #ad997d;
	border-radius: 9px;
	background: #ddcdb2;
	color: var(--brown);
	font: 500 16px/1.4 var(--sans);
	box-shadow: none;
}
body.woocommerce-account .woocommerce form .form-row input.input-text:focus,
body.woocommerce-account .woocommerce form .form-row textarea:focus,
body.woocommerce-account .woocommerce form .form-row select:focus {
	outline: 2px solid var(--moss);
	outline-offset: 2px;
	border-color: var(--moss);
}
body.woocommerce-account .woocommerce form .password-input input.input-text { padding-right: 48px; }
body.woocommerce-account .woocommerce form .show-password-input { top: 12px; right: 12px; }
body.woocommerce-account .woocommerce .button,
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title a.edit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 14px 22px;
	border: 0;
	border-radius: 10px;
	background: var(--terracotta);
	color: var(--sand);
	font: 700 14px/1.3 var(--sans);
	text-decoration: none;
	transition: background .35s ease, transform .35s ease;
}
body.woocommerce-account .woocommerce .button:hover,
body.woocommerce-account .woocommerce .button:focus-visible,
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:focus-visible {
	background: var(--brown);
	color: var(--sand);
	transform: translateY(-3px);
}
body.woocommerce-account .woocommerce .button:focus-visible,
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:focus-visible {
	outline: 2px solid var(--moss);
	outline-offset: 4px;
}
body.woocommerce-account .woocommerce-form-login .form-row:not(.form-row-wide) {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
}
body.woocommerce-account .woocommerce form.lost_reset_password {
	max-width: 680px;
	padding: 28px;
	border: 1px solid #c8b495;
	border-radius: 20px;
	background: #e2d3bc;
}
body.woocommerce-account .woocommerce form.lost_reset_password .form-row-first { width: 100%; float: none; }
body.woocommerce-account .woocommerce form.lost_reset_password p:first-child { margin-top: 0; }
body.woocommerce-account .woocommerce-MyAccount-navigation a { transition: background .35s ease, color .35s ease; }
body.woocommerce-account .woocommerce .woocommerce-info,
body.woocommerce-account .woocommerce .woocommerce-message,
body.woocommerce-account .woocommerce .woocommerce-error {
	padding: 20px 22px;
	border: 0;
	border-radius: 12px;
	background: #d8c6a9;
	color: var(--brown);
	font: 500 14px/1.55 var(--sans);
}
body.woocommerce-account .woocommerce .woocommerce-error { border-left: 3px solid var(--terracotta); }
body.woocommerce-account .woocommerce .woocommerce-info::before,
body.woocommerce-account .woocommerce .woocommerce-message::before,
body.woocommerce-account .woocommerce .woocommerce-error::before { display: none; }
body.woocommerce-account .woocommerce .woocommerce-privacy-policy-text,
body.woocommerce-account .woocommerce .woocommerce-LostPassword { font-size: 14px; line-height: 1.6; }
body.woocommerce-account .woocommerce .woocommerce-privacy-policy-text a,
body.woocommerce-account .woocommerce .woocommerce-LostPassword a { text-decoration: underline; text-underline-offset: 3px; }
body.woocommerce-account .woocommerce table.shop_table { border-color: #c8b495; border-radius: 12px; font-size: 14px; }
body.woocommerce-account .woocommerce table.shop_table th,
body.woocommerce-account .woocommerce table.shop_table td { padding: 14px 12px; border-color: #c8b495; line-height: 1.5; overflow-wrap: anywhere; }
body.woocommerce-account .woocommerce .woocommerce-orders-table__cell-order-actions .button {
	min-height: 44px;
	padding: 10px 14px;
	margin: 3px;
}
body.woocommerce-account .woocommerce .woocommerce-customer-details address,
body.woocommerce-account .woocommerce .woocommerce-Address address {
	padding: 20px;
	border: 1px solid #c8b495;
	border-radius: 12px;
	background: #ddcdb2;
	line-height: 1.7;
	overflow-wrap: anywhere;
}
body.woocommerce-account .woocommerce .woocommerce-Address-title { margin-bottom: 16px; }
body.woocommerce-account .woocommerce .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce .woocommerce-Address-title h3 { float: none; margin: 0 0 16px; }
body.woocommerce-account .woocommerce .woocommerce-Address-title a.edit { float: none; }
@media (max-width: 780px) {
	body.woocommerce-account .woocommerce #customer_login { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	body.woocommerce-account .woocommerce #customer_login > .col-1,
	body.woocommerce-account .woocommerce #customer_login > .col-2,
	body.woocommerce-account .woocommerce form.lost_reset_password { padding: 22px; }
	body.woocommerce-account .woocommerce .woocommerce-Addresses > .col-1,
	body.woocommerce-account .woocommerce .woocommerce-Addresses > .col-2,
	body.woocommerce-account .woocommerce .woocommerce-customer-details .col-1,
	body.woocommerce-account .woocommerce .woocommerce-customer-details .col-2 { float: none; width: 100%; margin-bottom: 24px; }
	body.woocommerce-account .woocommerce table.woocommerce-table--order-details { table-layout: fixed; }
	body.woocommerce-account .woocommerce table.shop_table_responsive tr td { background: #e2d3bc; }
	body.woocommerce-account .woocommerce table.shop_table_responsive tr { margin-bottom: 16px; }
}
@media (min-width: 769px) {
	body.woocommerce-account .woocommerce .woocommerce-orders-table { table-layout: fixed; }
	body.woocommerce-account .woocommerce .woocommerce-orders-table th,
	body.woocommerce-account .woocommerce .woocommerce-orders-table td { overflow-wrap: normal; word-break: normal; }
	body.woocommerce-account .woocommerce .woocommerce-orders-table__header-order-number { width: 15%; }
	body.woocommerce-account .woocommerce .woocommerce-orders-table__header-order-date { width: 16%; }
	body.woocommerce-account .woocommerce .woocommerce-orders-table__header-order-status { width: 21%; }
	body.woocommerce-account .woocommerce .woocommerce-orders-table__header-order-total { width: 20%; }
	body.woocommerce-account .woocommerce .woocommerce-orders-table__header-order-actions { width: 28%; }
}
@media (max-width: 780px) {
	body.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; padding: 10px; }
	body.woocommerce-account .woocommerce-MyAccount-navigation a { padding: 12px 10px; min-height: 44px; }
	body.woocommerce-account .woocommerce form .form-row-first,
	body.woocommerce-account .woocommerce form .form-row-last { float: none; width: 100%; }
}
body.woocommerce-account .woocommerce .woocommerce-EditAccountForm fieldset {
	margin: 24px 0;
	padding: 22px;
	border: 1px solid #c8b495;
	border-radius: 12px;
}
body.woocommerce-account .woocommerce .woocommerce-EditAccountForm legend {
	padding: 0 8px;
	font: 700 20px/1.3 var(--serif);
}
body.woocommerce-account .woocommerce .woocommerce-EditAccountForm em { font-size: 14px; line-height: 1.5; }
@media (min-width: 781px) and (max-width: 1100px) {
	body.woocommerce-account .woocommerce-MyAccount-navigation,
	body.woocommerce-account .woocommerce-MyAccount-content { float: none; width: 100%; }
	body.woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 24px; }
	body.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; }
}
/* Email preferences are supplied by the plugin as a native submit input. */
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="submit"] {
	min-height: 52px;
	padding: 14px 22px;
	border: 0;
	border-radius: 10px;
	background: var(--terracotta);
	color: var(--sand);
	font: 700 14px/1.3 var(--sans);
	cursor: pointer;
	transition: background .35s ease, transform .35s ease;
}
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="submit"]:hover,
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="submit"]:focus-visible { background: var(--brown); color: var(--sand); transform: translateY(-3px); }
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="submit"]:focus-visible { outline: 2px solid var(--moss); outline-offset: 4px; }
@media (max-width: 768px) {
	body.woocommerce-account .woocommerce .woocommerce-orders-table tbody th[scope="row"] {
		display: flex;
		justify-content: space-between;
		background: var(--brown);
		color: var(--sand);
		font-size: 15px;
	}
	body.woocommerce-account .woocommerce .woocommerce-orders-table tbody th[scope="row"]::before { content: attr(data-title) ":"; }
	body.woocommerce-account .woocommerce .woocommerce-orders-table tbody th[scope="row"] a { color: var(--sand); }
}
body.woocommerce-account .woocommerce .woocommerce-order-details .button { margin: 3px; }
body.woocommerce-account .woocommerce form .form-row.woocommerce-invalid input.input-text,
body.woocommerce-account .woocommerce form .form-row.woocommerce-invalid select,
body.woocommerce-account .woocommerce form .form-row.woocommerce-invalid .select2-selection { border-color: var(--wc-red, #a00); }
