/*
 * My Account (login, dashboard, orders, addresses, details). Loaded only on account pages;
 * Woo's classic CSS is off there, so this file owns the whole view. Why: code-map/butik-lusi.md.
 */

.woocommerce-account .wp-block-post-content > .woocommerce {
	font-family: var(--wp--preset--font-family--body);
	max-width: min(1080px, 100%);
}

.woocommerce-account .screen-reader-text {
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

/* ---------- Fields ---------- */

.woocommerce-account form {
	display: grid;
	gap: 16px;
}

.woocommerce-account form .clear {
	display: none;
}

.woocommerce-account .form-row {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
}

.woocommerce-account .form-row > label,
.woocommerce-account fieldset > p > label {
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--sm);
}

.woocommerce-account .form-row .required {
	display: none;
}

.woocommerce-account .form-row .optional {
	color: var(--wp--preset--color--subtle);
}

.woocommerce-account input.input-text,
.woocommerce-account select,
.woocommerce-account textarea {
	background: var(--wp--preset--color--surface);
	block-size: var(--wp--custom--control--md);
	border: 1px solid var(--wp--preset--color--border-strong);
	border-radius: var(--wp--custom--radius);
	box-sizing: border-box;
	color: var(--wp--preset--color--contrast);
	font: 400 15px / 1.4 var(--wp--preset--font-family--body);
	inline-size: 100%;
	padding: 0 14px;
	transition:
		border-color var(--wp--custom--duration) var(--wp--custom--ease),
		box-shadow var(--wp--custom--duration) var(--wp--custom--ease);
}

.woocommerce-account textarea {
	block-size: auto;
	min-block-size: 110px;
	padding-block: 12px;
}

.woocommerce-account input.input-text::placeholder {
	color: var(--wp--preset--color--subtle);
}

.woocommerce-account input.input-text:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
	border-color: var(--wp--preset--color--primary);
	box-shadow: var(--wp--custom--focus-glow);
	outline: none;
}

.woocommerce-account .woocommerce-invalid input.input-text,
.woocommerce-account .woocommerce-invalid select {
	border-color: var(--wp--preset--color--sale);
}

.woocommerce-account input[type="checkbox"] {
	accent-color: var(--wp--preset--color--primary);
	block-size: 18px;
	inline-size: 18px;
	margin: 0;
}

.woocommerce-account .woocommerce-form__label-for-checkbox {
	align-items: center;
	color: var(--wp--preset--color--contrast);
	cursor: pointer;
	display: inline-flex;
	font-size: var(--wp--preset--font-size--sm);
	gap: 8px;
}

/* woocommerce.js wraps password inputs and adds the toggle; account.js gives it a text label. */
.woocommerce-account .password-input {
	display: block;
	position: relative;
}

.woocommerce-account .password-input input.input-text {
	padding-inline-end: 70px;
}

.woocommerce-account .show-password-input {
	background: none;
	block-size: 40px;
	border: 0;
	color: var(--wp--preset--color--contrast);
	cursor: pointer;
	font: 400 var(--wp--preset--font-size--sm) / 1 var(--wp--preset--font-family--body);
	inset-block-start: 4px;
	inset-inline-end: 4px;
	padding: 0 12px;
	position: absolute;
}

.woocommerce-account .show-password-input:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: 0;
}

.woocommerce-account fieldset {
	border: 0;
	display: grid;
	gap: 16px;
	margin: 8px 0 0;
	min-inline-size: 0;
	padding: 0;
}

.woocommerce-account legend {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--xl);
	line-height: var(--wp--custom--line-height--heading);
	margin-block-end: 12px;
	padding: 0;
}

.woocommerce-account .woocommerce-password-strength,
.woocommerce-account .woocommerce-password-hint,
.woocommerce-account .form-row em {
	color: var(--wp--preset--color--subtle);
	font-size: var(--wp--preset--font-size--xs);
	font-style: normal;
}

.woocommerce-account .woocommerce-password-strength.bad,
.woocommerce-account .woocommerce-password-strength.short {
	color: var(--wp--preset--color--sale);
}

/* ---------- Buttons ---------- */

.woocommerce-account .woocommerce .button {
	align-items: center;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: var(--wp--custom--radius);
	box-sizing: border-box;
	cursor: pointer;
	display: inline-flex;
	font: 500 15px / 1.2 var(--wp--preset--font-family--body);
	justify-content: center;
	min-block-size: var(--wp--custom--control--md);
	padding: 0 22px;
	text-decoration: none;
}

.woocommerce-account .woocommerce button[type="submit"].button {
	inline-size: 100%;
	min-block-size: 52px;
}

.woocommerce-account .woocommerce .button:focus-visible,
.bl-order-card__cta:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: 3px;
}

/* Secondary: order row actions, pagination, order again. */
.woocommerce-account .woocommerce-orders-table .button,
.woocommerce-account .woocommerce-pagination .button,
.woocommerce-account .order-again .button,
.bl-order-card__cta {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--contrast);
	border-radius: var(--wp--custom--radius);
	color: var(--wp--preset--color--contrast);
	transition:
		background-color var(--wp--custom--duration) var(--wp--custom--ease),
		color var(--wp--custom--duration) var(--wp--custom--ease);
}

.woocommerce-account .woocommerce-orders-table .button,
.woocommerce-account .woocommerce-pagination .button {
	font-size: var(--wp--preset--font-size--sm);
	min-block-size: var(--wp--custom--control--sm);
	padding: 0 14px;
}

.woocommerce-account .woocommerce-orders-table .button:hover,
.woocommerce-account .woocommerce-pagination .button:hover,
.woocommerce-account .order-again .button:hover,
.bl-order-card__cta:hover {
	background: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--surface);
}

/* ---------- Notices (Woo block-style banners and classic lists) ---------- */

.woocommerce-account .wc-block-components-notice-banner,
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message {
	align-items: center;
	background: var(--wp--preset--color--beige-200);
	border: 0;
	border-radius: var(--wp--custom--radius);
	color: var(--wp--preset--color--contrast);
	display: flex;
	font-size: 14px;
	gap: 12px;
	line-height: 1.5;
	list-style: none;
	margin: 0 0 16px;
	padding: 14px 16px;
}

.woocommerce-account .wc-block-components-notice-banner.is-error,
.woocommerce-account .woocommerce-error {
	background: var(--wp--preset--color--sale-soft);
	color: var(--wp--preset--color--sale);
}

.woocommerce-account .wc-block-components-notice-banner.is-success,
.woocommerce-account .woocommerce-message {
	background: var(--wp--preset--color--primary-soft);
}

.woocommerce-account .wc-block-components-notice-banner > svg {
	background: none;
	fill: currentColor;
	flex: none;
	padding: 0;
}

.woocommerce-account .wc-block-components-notice-banner__content {
	align-items: center;
	display: flex;
	flex: 1;
	flex-wrap: wrap;
	gap: 4px 16px;
	justify-content: space-between;
}

.woocommerce-account .woocommerce .wc-block-components-notice-banner a,
.woocommerce-account .woocommerce .woocommerce-info a,
.woocommerce-account .woocommerce .woocommerce-message a {
	background: none;
	border: 0;
	color: inherit;
	font-size: 14px;
	min-block-size: 0;
	order: 2;
	padding: 0;
	text-decoration: underline;
	text-underline-offset: 3px;
	white-space: nowrap;
}

/* ---------- Tag ---------- */

.bl-tag {
	align-items: center;
	background: var(--wp--preset--color--beige-100);
	border-radius: var(--wp--custom--radius);
	color: var(--wp--preset--color--muted);
	display: inline-flex;
	font-size: var(--wp--preset--font-size--xs);
	line-height: 1.2;
	padding: 4px 8px;
	white-space: nowrap;
}

.bl-tag.is-progress {
	background: var(--wp--preset--color--primary-soft);
	color: var(--wp--preset--color--contrast);
}

.bl-tag.is-shipped {
	background: var(--wp--preset--color--beige-200);
	color: var(--wp--preset--color--accent);
}

.bl-tag.is-cancelled {
	background: var(--wp--preset--color--sale-soft);
	color: var(--wp--preset--color--sale);
}

/* ---------- Login and registration ---------- */

.bl-login {
	display: grid;
	gap: 22px;
}

.bl-login__title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--3-xl);
	font-weight: 400;
	line-height: 1.05;
	margin: 0;
}

.bl-login__title-desktop {
	display: none;
}

.bl-login__tabs {
	background: var(--wp--preset--color--beige-100);
	border-radius: var(--wp--custom--radius);
	display: grid;
	gap: 4px;
	grid-template-columns: 1fr 1fr;
	padding: 4px;
}

.bl-login__tabs[hidden] {
	display: none;
}

.bl-login__tabs [role="tab"] {
	background: transparent;
	block-size: 42px;
	border: 0;
	border-radius: var(--wp--custom--radius);
	color: var(--wp--preset--color--subtle);
	cursor: pointer;
	font: 500 14px / 1 var(--wp--preset--font-family--body);
	transition:
		background-color var(--wp--custom--duration) var(--wp--custom--ease),
		color var(--wp--custom--duration) var(--wp--custom--ease);
}

.bl-login__tabs [role="tab"][aria-selected="true"] {
	background: var(--wp--preset--color--surface);
	box-shadow: 0 1px 3px rgb(28 31 27 / 8%);
	color: var(--wp--preset--color--contrast);
}

.bl-login__tabs [role="tab"]:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: 2px;
}

.bl-login__columns {
	display: grid;
	gap: 40px;
}

.bl-login__panel {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.bl-login__heading {
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--lg);
	font-weight: 500;
	line-height: 1.3;
	margin: 0;
}

.bl-login__row {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: space-between;
}

.bl-login__lost,
.bl-login__legal a {
	color: var(--wp--preset--color--contrast);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.bl-login__lost {
	font-size: var(--wp--preset--font-size--sm);
}

.bl-login__legal {
	color: var(--wp--preset--color--subtle);
	font-size: var(--wp--preset--font-size--xs);
	line-height: 1.6;
	margin: 0;
}

.bl-login__guest {
	border-block-start: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.6;
	margin: 8px 0 0;
	padding-block-start: 20px;
}

.bl-login__benefits {
	background: var(--wp--preset--color--beige-100);
	border-radius: var(--wp--custom--radius);
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.7;
	order: 2;
	padding: 16px;
}

.bl-login__benefits-title {
	color: var(--wp--preset--color--contrast);
	font-weight: 500;
	margin: 0 0 4px;
}

.bl-login__benefits ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Tabbed (JS ran, mobile): one panel at a time; the h1 names it. */
@media (max-width: 1023px) {
	.bl-login:has(.bl-login__tabs:not([hidden])) .bl-login__heading {
		display: none;
	}

	.bl-login:has(.bl-login__tabs:not([hidden]))[data-active="login"] .is-register,
	.bl-login:has(.bl-login__tabs:not([hidden]))[data-active="register"] .is-login {
		display: none;
	}
}

@media (min-width: 1024px) {
	.bl-login {
		gap: 32px;
	}

	.bl-login__title-desktop {
		display: inline;
	}

	.bl-login__title-mobile,
	.bl-login__tabs:not([hidden]) {
		display: none;
	}

	.bl-login.has-register .bl-login__columns {
		align-items: start;
		gap: 24px;
		grid-template-columns: 1fr 1fr;
	}

	.bl-login__columns {
		max-inline-size: 1000px;
	}

	.bl-login__panel {
		border-radius: var(--wp--custom--radius);
		padding: 36px;
	}

	.bl-login__panel.is-login {
		background: var(--wp--preset--color--surface);
		border: 1px solid var(--wp--preset--color--border);
	}

	.bl-login__panel.is-register {
		background: var(--wp--preset--color--beige-200);
	}

	.bl-login__benefits {
		background: none;
		font-size: var(--wp--preset--font-size--base);
		order: 0;
		padding: 0;
	}

	.bl-login__benefits-title {
		display: none;
	}

	.bl-login__guest {
		margin-block-start: 12px;
	}

	.woocommerce-account .is-register button[type="submit"].button {
		background: transparent;
		border-color: var(--wp--preset--color--contrast);
		color: var(--wp--preset--color--contrast);
	}

	.woocommerce-account .is-register button[type="submit"].button:hover {
		background: var(--wp--preset--color--contrast);
		color: var(--wp--preset--color--surface);
	}
}

/* ---------- Account layout ---------- */

.bl-account {
	display: grid;
	gap: 22px;
	grid-template-areas:
		"hello"
		"content"
		"nav";
	grid-template-columns: minmax(0, 1fr);
}

.bl-account__hello {
	grid-area: hello;
}

.bl-account__nav {
	grid-area: nav;
}

.bl-account__content {
	display: flex;
	flex-direction: column;
	gap: 20px;
	grid-area: content;
	min-inline-size: 0;
}

.bl-account__content > * {
	margin-block: 0;
}

.bl-account__greeting {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--2-xl);
	line-height: 1.05;
	margin: 0;
}

.bl-account__email {
	color: var(--wp--preset--color--subtle);
	font-size: var(--wp--preset--font-size--sm);
	margin: 4px 0 0;
	overflow-wrap: anywhere;
}

.bl-account__title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--2-xl);
	font-weight: 400;
	line-height: var(--wp--custom--line-height--heading);
}

.bl-account__back {
	align-items: center;
	background: var(--wp--preset--color--beige-100);
	block-size: 52px;
	color: var(--wp--preset--color--muted);
	display: flex;
	font-size: 14px;
	gap: 6px;
	margin-inline: calc(var(--wp--custom--gutter--mobile) * -1);
	padding-inline: var(--wp--custom--gutter--mobile);
	text-decoration: none;
}

.bl-account__back:focus-visible,
.bl-account__nav a:focus-visible,
.bl-account__tiles a:focus-visible,
.bl-account__logout:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: -2px;
}

.bl-account__nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bl-account__nav li {
	border-block-end: 1px solid var(--wp--preset--color--border);
	margin: 0;
}

.bl-account__nav li a {
	align-items: center;
	color: var(--wp--preset--color--contrast);
	display: flex;
	gap: 12px;
	justify-content: space-between;
	min-block-size: 58px;
	padding-inline: 4px;
	text-decoration: none;
}

.bl-account__nav-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.bl-account__nav-label {
	font-size: var(--wp--preset--font-size--base);
	line-height: 1.3;
}

.bl-account__nav-hint {
	color: var(--wp--preset--color--subtle);
	font-size: var(--wp--preset--font-size--xs);
	line-height: 1.3;
}

.bl-account__nav .bl-account__logout {
	color: var(--wp--preset--color--sale);
	display: inline-block;
	font-size: 14px;
	margin-block-start: 26px;
	padding-inline: 4px;
	text-decoration: none;
}

.bl-account__nav .bl-account__logout:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 1023px) {
	/* Mobile dashboard: the list replaces the tiles and the title; sub-views show only the view. */
	.bl-account.is-dashboard .bl-account__title,
	.bl-account__nav .woocommerce-MyAccount-navigation-link--dashboard {
		display: none;
	}

	.bl-account:not(.is-dashboard) {
		gap: 0;
		grid-template-areas: "content";
	}

	.bl-account:not(.is-dashboard) > .bl-account__hello,
	.bl-account:not(.is-dashboard) > .bl-account__nav {
		display: none;
	}

	.bl-account__nav {
		border-block-start: 1px solid var(--wp--preset--color--border);
	}
}

@media (min-width: 1024px) {
	.bl-account,
	.bl-account:not(.is-dashboard) {
		align-items: start;
		gap: 24px 64px;
		grid-template-areas:
			"hello content"
			"nav content";
		grid-template-columns: 260px minmax(0, 1fr);
		grid-template-rows: auto 1fr;
	}

	.bl-account__back {
		display: none;
	}

	.bl-account__title {
		font-size: var(--wp--preset--font-size--3-xl);
	}

	.bl-account__content {
		gap: 24px;
	}

	.bl-account__nav ul {
		border-block-start: 1px solid var(--wp--preset--color--border);
	}

	.bl-account__nav li a {
		border-inline-start: 2px solid transparent;
		min-block-size: 50px;
		padding-inline: 12px;
	}

	.bl-account__nav a[aria-current="page"],
	.bl-account__nav .is-active a {
		background: var(--wp--preset--color--beige-100);
		border-inline-start-color: var(--wp--preset--color--contrast);
	}

	.bl-account__nav li a:hover {
		background: var(--wp--preset--color--beige-100);
	}

	.bl-account__nav .bl-account__nav-hint,
	.bl-account__nav a svg {
		display: none;
	}

	.bl-account__nav .bl-account__logout {
		margin-block-start: 18px;
		padding-inline: 12px;
	}
}

/* ---------- Dashboard: latest order ---------- */

.bl-order-card {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius);
	display: grid;
	gap: 12px;
	padding: 16px;
}

.bl-order-card p {
	margin: 0;
}

.bl-order-card__head {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.bl-order-card__label {
	color: var(--wp--preset--color--subtle);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 400;
	line-height: 1.3;
	margin: 0;
}

.bl-order-card__body {
	align-items: start;
	display: grid;
	gap: 12px;
	grid-template-columns: 56px minmax(0, 1fr);
}

.bl-order-card__body:not(:has(.bl-order-card__image)) {
	grid-template-columns: minmax(0, 1fr);
}

.bl-order-card__image {
	aspect-ratio: 3 / 4;
	block-size: auto;
	border-radius: var(--wp--custom--radius);
	display: block;
	inline-size: 100%;
	object-fit: cover;
}

.bl-order-card__info {
	display: grid;
	gap: 2px;
}

.bl-order-card__number {
	color: var(--wp--preset--color--contrast);
	font-size: 14px;
	font-weight: 500;
}

.bl-order-card__meta {
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.45;
}

.bl-order-card__delivery {
	color: var(--wp--preset--color--muted);
	display: block;
}

.bl-order-steps {
	display: grid;
	gap: 4px;
	grid-template-columns: repeat(3, 1fr);
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
}

.bl-order-steps li {
	border-block-start: 3px solid var(--wp--preset--color--border-strong);
	color: var(--wp--preset--color--subtle);
	font-size: 11px;
	margin: 0;
	padding-block-start: 8px;
}

.bl-order-steps li:nth-child(2) {
	text-align: center;
}

.bl-order-steps li:last-child {
	text-align: end;
}

.bl-order-steps li.is-done {
	border-block-start-color: var(--wp--preset--color--primary);
}

.bl-order-steps li[aria-current="step"] {
	color: var(--wp--preset--color--contrast);
	font-weight: 500;
}

.bl-order-card__cta {
	align-items: center;
	box-sizing: border-box;
	display: flex;
	font-size: 15px;
	font-weight: 500;
	justify-content: center;
	min-block-size: var(--wp--custom--control--tap);
	padding: 0 22px;
	text-decoration: none;
}

.bl-account__tiles {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

.bl-account__tiles li {
	margin: 0;
}

.bl-account__tiles a {
	background: var(--wp--preset--color--beige-200);
	border-radius: var(--wp--custom--radius);
	color: var(--wp--preset--color--contrast);
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 20px 22px;
	text-decoration: none;
	transition: background-color var(--wp--custom--duration) var(--wp--custom--ease);
}

.bl-account__tiles a:hover {
	background: var(--wp--preset--color--beige-100);
}

@media (max-width: 1023px) {
	/* On phones the menu list below replaces the tiles. */
	.bl-account__tiles {
		display: none;
	}
}

@media (min-width: 1024px) {
	.bl-order-card {
		gap: 16px;
		padding: 24px;
	}

	.bl-order-card__body {
		gap: 24px;
		grid-template-columns: 120px minmax(0, 1fr);
	}

	.bl-order-card__number {
		font-size: var(--wp--preset--font-size--lg);
	}

	.bl-order-card__meta {
		font-size: 14px;
	}

	.bl-order-card__cta {
		justify-self: start;
	}
}

/* ---------- Orders ---------- */

.woocommerce-account .woocommerce-orders-table {
	border-collapse: collapse;
	font-size: 14px;
	inline-size: 100%;
}

.woocommerce-account .woocommerce-orders-table th,
.woocommerce-account .woocommerce-orders-table td {
	border-block-end: 1px solid var(--wp--preset--color--border);
	padding: 14px 16px;
	text-align: start;
	vertical-align: middle;
}

.woocommerce-account .woocommerce-orders-table thead th {
	background: var(--wp--preset--color--beige-100);
	color: var(--wp--preset--color--subtle);
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 400;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number a {
	color: var(--wp--preset--color--contrast);
	font-weight: 500;
	text-decoration: none;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions {
	text-align: end;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions .button + .button {
	margin-inline-start: 8px;
}

.woocommerce-account .woocommerce-pagination {
	display: flex;
	gap: 8px;
	justify-content: space-between;
}

/* Mobile: each row is a card (number + tag, date, total, actions). */
@media (max-width: 1023px) {
	.woocommerce-account .woocommerce-orders-table,
	.woocommerce-account .woocommerce-orders-table tbody {
		display: grid;
		gap: 12px;
	}

	.woocommerce-account .woocommerce-orders-table thead {
		clip-path: inset(50%);
		height: 1px;
		overflow: hidden;
		position: absolute;
		width: 1px;
	}

	.woocommerce-account .woocommerce-orders-table tbody tr {
		background: var(--wp--preset--color--surface);
		border: 1px solid var(--wp--preset--color--border);
		border-radius: var(--wp--custom--radius);
		display: grid;
		gap: 6px 12px;
		grid-template-columns: 1fr auto;
		padding: 16px;
	}

	.woocommerce-account .woocommerce-orders-table tbody th,
	.woocommerce-account .woocommerce-orders-table tbody td {
		border: 0;
		padding: 0;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-number {
		font-size: 15px;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-date,
	.woocommerce-account .woocommerce-orders-table__cell-order-total {
		color: var(--wp--preset--color--muted);
		grid-column: 1 / -1;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-status {
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-actions {
		display: flex;
		gap: 8px;
		grid-column: 1 / -1;
		margin-block-start: 8px;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
		flex: 1;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-actions .button + .button {
		margin: 0;
	}
}

/* ---------- Addresses ---------- */

.woocommerce-account .woocommerce-Addresses {
	display: grid;
	gap: 16px;
}

.woocommerce-account .woocommerce-Address {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius);
	padding: 16px;
}

.woocommerce-account .woocommerce-Address-title {
	align-items: baseline;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-block-end: 10px;
}

.woocommerce-account .woocommerce-Address-title h2 {
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--base);
	font-weight: 500;
	margin: 0;
}

.woocommerce-account .woocommerce-Address-title .edit,
.woocommerce-account .woocommerce-MyAccount-content > p a {
	color: var(--wp--preset--color--contrast);
	font-size: 14px;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.woocommerce-account address {
	color: var(--wp--preset--color--muted);
	font-size: 14px;
	font-style: normal;
	line-height: 1.6;
}

.woocommerce-account .woocommerce-MyAccount-content > p {
	color: var(--wp--preset--color--muted);
	font-size: 14px;
	line-height: 1.6;
}

@media (min-width: 1024px) {
	.woocommerce-account .woocommerce-Addresses {
		grid-template-columns: 1fr 1fr;
	}

	.woocommerce-account .woocommerce-Address {
		padding: 24px;
	}

	/* Edit address / account details: first and last name side by side. */
	.woocommerce-account .woocommerce-address-fields__field-wrapper,
	.woocommerce-account .woocommerce-EditAccountForm {
		column-gap: 16px;
		display: grid;
		grid-template-columns: 1fr 1fr;
		row-gap: 16px;
	}

	.woocommerce-account .woocommerce-address-fields__field-wrapper > *,
	.woocommerce-account .woocommerce-EditAccountForm > * {
		grid-column: 1 / -1;
	}

	.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row-first,
	.woocommerce-account .woocommerce-EditAccountForm > .form-row-first {
		grid-column: 1;
	}

	.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row-last,
	.woocommerce-account .woocommerce-EditAccountForm > .form-row-last {
		grid-column: 2;
	}

	.woocommerce-account .woocommerce-EditAccountForm button[type="submit"].button,
	.woocommerce-account .woocommerce-address-fields button[type="submit"].button {
		inline-size: auto;
	}
}

.woocommerce-account .woocommerce-address-fields {
	display: grid;
	gap: 16px;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper {
	display: grid;
	gap: 16px;
}

/* ---------- Order details (view order) ---------- */

/* Woo's own section headings only; our components (.bl-*) style their headings themselves. */
.woocommerce-account .woocommerce-order-details__title,
.woocommerce-account .woocommerce-column__title,
.woocommerce-account .woocommerce-MyAccount-content > h2 {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--xl);
	font-weight: 400;
	line-height: var(--wp--custom--line-height--heading);
	margin: 8px 0 12px;
}

.woocommerce-account mark {
	background: none;
	color: var(--wp--preset--color--contrast);
	font-weight: 500;
}

.woocommerce-account table.shop_table:not(.woocommerce-orders-table) {
	border-collapse: collapse;
	font-size: 14px;
	inline-size: 100%;
}

.woocommerce-account table.shop_table:not(.woocommerce-orders-table) th,
.woocommerce-account table.shop_table:not(.woocommerce-orders-table) td {
	border-block-end: 1px solid var(--wp--preset--color--border);
	padding: 12px 0;
	text-align: start;
	vertical-align: top;
}

.woocommerce-account table.shop_table:not(.woocommerce-orders-table) td:last-child,
.woocommerce-account table.shop_table:not(.woocommerce-orders-table) th:last-child {
	text-align: end;
}

.woocommerce-account table.shop_table thead th,
.woocommerce-account table.shop_table tfoot th {
	color: var(--wp--preset--color--subtle);
	font-weight: 400;
}

.woocommerce-account table.shop_table a {
	color: var(--wp--preset--color--contrast);
}

.woocommerce-account .wc-item-meta {
	color: var(--wp--preset--color--subtle);
	font-size: var(--wp--preset--font-size--xs);
	list-style: none;
	margin: 4px 0 0;
	padding: 0;
}

.woocommerce-account .wc-item-meta p {
	display: inline;
}

.woocommerce-account .woocommerce-customer-details .woocommerce-columns {
	display: grid;
	gap: 16px;
}

@media (min-width: 1024px) {
	.woocommerce-account .woocommerce-customer-details .woocommerce-columns {
		grid-template-columns: 1fr 1fr;
	}
}

/* The page template's top padding (inline) is built for editorial pages; the account views start higher on phones. */
@media (max-width: 1023px) {
	.woocommerce-account main.wp-block-group {
		padding-block-start: var(--wp--preset--spacing--40) !important;
	}
}
