.freyza-account,
.freyza-auth {
	background: var(--freyza-color-section);
	box-sizing: border-box;
	width: 100%;
}

/* No viewport min-height on desktop. The white panel here is the inner
   .freyza-container; this element only supplies the page background around
   it, so stretching it to the viewport left a band of empty background under
   short pages (an empty wishlist, addresses, prescription requests). It now
   wraps its content, with room below to keep the panel off the footer.
   The mobile rules further down are a different case — there the header and
   footer are hidden and the panel really is the whole screen. */
.freyza-account.freyza-section {
	padding-block: 0 clamp(40px, 5vw, 72px);
}

.freyza-auth.freyza-section {
	padding-block: 0;
}

.woocommerce-account .freyza-site-main {
	overflow-x: hidden;
}

/* The sitewide reading-width wrapper (query-loop.php) adds its own
   padding/max-width around every page's content, nesting a second
   .freyza-container outside the one directly below — collapse it so only
   the account page's own container governs width. */
.woocommerce-account .freyza-container:has(.freyza-account) {
	max-width: none;
	padding-inline: 0;
}

.woocommerce-account .freyza-account .freyza-container,
.woocommerce-account .freyza-auth .freyza-container {
	display: block;
	float: none;
	margin-inline: auto;
	max-width: var(--freyza-content-width);
	padding-inline: clamp(16px, 4vw, 24px);
	width: 100%;
}

.woocommerce-account .freyza-account .freyza-container {
	background: var(--freyza-color-surface);
	border-radius: var(--freyza-radius-card);
	box-shadow: var(--freyza-shadow-dropdown);
	max-width: none;
	padding-inline: 0;
	overflow: hidden;
	padding: 0;
}

.freyza-account *,
.freyza-auth * {
	box-sizing: border-box;
}

.freyza-auth__grid {
	display: grid;
	gap: var(--freyza-space-5);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.freyza-auth-card,
.freyza-account-card {
	background: var(--freyza-color-surface);
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-card);
	box-shadow: var(--freyza-shadow-card);
}

.freyza-auth-card,
.freyza-account-card {
	padding: clamp(22px, 3vw, 32px);
}

.freyza-account-card {
	min-width: 0;
}

.freyza-auth-card__eyebrow,
.freyza-account-card__eyebrow {
	color: var(--freyza-color-secondary);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0;
	margin: 0 0 8px;
	text-transform: uppercase;
}

.freyza-auth-card__title,
.freyza-account-card__title {
	font-size: clamp(1.35rem, 2vw, 1.8rem);
	line-height: 1.18;
	margin: 0 0 10px;
}

.freyza-auth-card__text,
.freyza-account-card__text {
	color: var(--freyza-color-muted);
	line-height: 1.7;
	margin: 0 0 24px;
}

.freyza-auth .woocommerce-form-row,
.freyza-account .woocommerce-form-row,
.freyza-account .form-row {
	float: none;
	margin: 0 0 var(--freyza-space-4);
	width: 100%;
}

.freyza-auth .woocommerce-button,
.freyza-account .woocommerce-button,
.freyza-account .button {
	align-items: center;
	background: var(--freyza-color-primary);
	border: 1px solid var(--freyza-color-primary);
	border-radius: var(--freyza-radius-button);
	color: #ffffff;
	cursor: pointer;
	display: inline-flex;
	font-weight: 800;
	justify-content: center;
	min-height: 48px;
	padding: 12px 20px;
	text-decoration: none;
	transition: background-color var(--freyza-transition-fast), border-color var(--freyza-transition-fast), box-shadow var(--freyza-transition-fast), color var(--freyza-transition-fast), transform var(--freyza-transition-fast);
}

.freyza-auth .woocommerce-button:hover,
.freyza-auth .woocommerce-button:focus-visible,
.freyza-account .woocommerce-button:hover,
.freyza-account .woocommerce-button:focus-visible,
.freyza-account .button:hover,
.freyza-account .button:focus-visible {
	background: var(--freyza-color-secondary);
	border-color: var(--freyza-color-secondary);
	box-shadow: var(--freyza-focus-ring);
	color: #ffffff;
	transform: translateY(-1px);
}

.freyza-auth__actions,
.freyza-account-card__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: space-between;
	margin-top: 8px;
}

.freyza-auth__remember {
	align-items: center;
	color: var(--freyza-color-muted);
	display: inline-flex;
	font-size: 0.92rem;
	gap: 8px;
}

.freyza-auth__lost {
	color: var(--freyza-color-secondary);
	font-weight: 700;
}

.freyza-account__layout {
	align-items: stretch;
	display: grid;
	gap: clamp(20px, 3.5vw, 40px);
	grid-template-columns: 264px minmax(0, 1fr);
	min-width: 0;
	padding: clamp(32px, 4vw, 56px) clamp(24px, 4vw, 64px);
	width: 100%;
}

.freyza-account__navigation {
	border-right: 1px solid var(--freyza-color-border);
	grid-column: 1;
	min-width: 0;
	padding-right: clamp(20px, 3vw, 40px);
	width: 100%;
}

.freyza-account__navigation > .account-navigation-wrap {
	border-left: 0;
	border-right: 0;
	float: none;
	margin: 0;
	overflow: hidden;
	position: sticky;
	top: 96px;
	width: auto;
}

/* Kadence's own theme wraps our navigation.php output in this element and
   injects its own circular avatar + name above it (kadence-account-avatar/
   kadence-customer-image) — hidden here since navigation.php already
   renders the name/email block the mockup calls for. */
.freyza-account__navigation .kadence-account-avatar,
.freyza-account__navigation .kadence-customer-image {
	display: none;
}

.freyza-account__navigation > .account-navigation-wrap .freyza-account-nav {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

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

.freyza-account-nav__user {
	background: none !important;
	border: 0 !important;
	border-bottom: 1px solid var(--freyza-color-border) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-bottom: var(--freyza-space-4);
	padding: 0 var(--freyza-space-3) var(--freyza-space-5) !important;
}

.freyza-account-nav__user-name {
	color: var(--freyza-color-primary);
	font-weight: 500;
}

.freyza-account-nav__user-email {
	color: var(--freyza-color-muted);
	font-size: 0.85rem;
}

.freyza-account-nav {
	align-self: start;
	overflow: hidden;
	width: 100%;
}

.freyza-account-nav__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.freyza-account-nav__link {
	align-items: center;
	border-left: 2px solid transparent;
	color: var(--freyza-color-muted);
	display: flex;
	height: 48px;
	justify-content: flex-start;
	line-height: 1.25;
	padding: 0 var(--freyza-space-3);
	text-decoration: none;
	transition: background-color var(--freyza-transition-fast), color var(--freyza-transition-fast);
}

.freyza-account-nav__link:hover,
.freyza-account-nav__link:focus-visible {
	background: var(--freyza-color-section);
	color: var(--freyza-color-primary);
}

.is-active .freyza-account-nav__link {
	background: var(--freyza-color-section);
	border-left-color: var(--freyza-color-primary);
	color: var(--freyza-color-primary);
	font-weight: 500;
}

.freyza-account-nav__item.woocommerce-MyAccount-navigation-link--customer-logout .freyza-account-nav__link {
	border-top: 1px solid var(--freyza-color-border);
	color: var(--freyza-color-error);
	margin-top: var(--freyza-space-4);
	padding-top: var(--freyza-space-4);
}

.freyza-account-content {
	background: transparent;
	border: 0;
	box-shadow: none;
	grid-column: 2;
	min-width: 0;
	padding: 0;
	width: 100%;
}

.freyza-account .freyza-account-content.woocommerce-MyAccount-content {
	padding: 0;
}

.freyza-account-dashboard {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-7);
	min-width: 0;
}

.freyza-account-dashboard__hero {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.freyza-account-dashboard__title {
	color: var(--freyza-color-primary);
	font-family: var(--freyza-font-heading);
	font-size: clamp(1.5rem, 2.5vw, 1.8rem);
	font-weight: 300;
	letter-spacing: -0.01em;
	line-height: 1.15;
	margin: 0;
	overflow-wrap: anywhere;
}

.freyza-account-dashboard__text {
	color: var(--freyza-color-muted);
	font-size: 0.9rem;
	margin: 0;
}

/* Stat cards */

.freyza-account-stats {
	display: grid;
	gap: var(--freyza-space-5);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.freyza-account-stat {
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-card);
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: var(--freyza-space-5);
}

.freyza-account-stat__label {
	color: var(--freyza-color-muted);
	font-family: var(--freyza-font-mono);
	font-size: 0.7rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.freyza-account-stat__value {
	color: var(--freyza-color-primary);
	font-family: var(--freyza-font-heading);
	font-size: 1.75rem;
	font-weight: 300;
}

/* Section wrapper shared by Recent orders / Default address */

.freyza-account-section {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-4);
}

.freyza-account-section__header {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.freyza-account-section__header h2 {
	color: var(--freyza-color-primary);
	font-family: var(--freyza-font-heading);
	font-size: 1rem;
	font-weight: 500;
	margin: 0;
}

.freyza-account-section__link {
	color: var(--freyza-color-secondary);
	font-size: 0.85rem;
}

.freyza-account-section__empty {
	color: var(--freyza-color-muted);
	margin: 0;
}

/* Recent orders list */

.freyza-account-order-list {
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-card);
	overflow: hidden;
}

.freyza-account-order-row {
	align-items: center;
	color: inherit;
	display: flex;
	gap: var(--freyza-space-4);
	padding: var(--freyza-space-5);
}

.freyza-account-order-row:not(:last-child) {
	border-bottom: 1px solid var(--freyza-color-border);
}

.freyza-account-order-row:hover .freyza-account-order-row__number {
	color: var(--freyza-color-secondary);
}

.freyza-account-order-row__thumb {
	background: var(--freyza-color-section);
	border-radius: var(--freyza-radius-input);
	flex-shrink: 0;
	height: 56px;
	width: 56px;
}

.freyza-account-order-row__details {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.freyza-account-order-row__number {
	color: var(--freyza-color-primary);
	font-weight: 500;
	transition: color var(--freyza-transition-fast);
}

.freyza-account-order-row__meta {
	color: var(--freyza-color-muted);
	font-size: 0.85rem;
}

.freyza-account-order-row__status {
	background: var(--freyza-color-section);
	border-radius: var(--freyza-radius-pill);
	color: var(--freyza-color-muted);
	flex-shrink: 0;
	font-family: var(--freyza-font-mono);
	font-size: 0.7rem;
	letter-spacing: 0.06em;
	padding: 6px 12px;
	text-transform: uppercase;
	white-space: nowrap;
}

.freyza-account-order-row__status--completed {
	background: rgba(47, 111, 94, 0.12);
	color: #3e7a52;
}

.freyza-account-order-row__status--processing {
	background: rgba(176, 138, 70, 0.14);
	color: var(--freyza-color-accent);
}

.freyza-account-order-row__status--cancelled,
.freyza-account-order-row__status--failed,
.freyza-account-order-row__status--refunded {
	background: rgba(220, 38, 38, 0.1);
	color: var(--freyza-color-error);
}

/* Wishlist page — reuses the sitewide .freyza-product-card component
   (image, wishlist heart, price, add-to-cart/prescription-gated button
   already wired up), just a wider grid to fit the account content column. */

.freyza-account-wishlist {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-6);
}

.freyza-account-wishlist__grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 900px) {
	.freyza-account-wishlist__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* Orders page (full list, not the dashboard's 3-item preview) */

.freyza-account-orders {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-6);
}

.freyza-account-orders-list {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-5);
}

.freyza-account-order-card {
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-card);
	overflow: hidden;
}

.freyza-account-order-card__header {
	align-items: center;
	background: var(--freyza-color-section);
	display: flex;
	flex-wrap: wrap;
	gap: var(--freyza-space-3);
	justify-content: space-between;
	padding: var(--freyza-space-4) var(--freyza-space-5);
}

.freyza-account-order-card__header-meta {
	color: var(--freyza-color-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.85rem;
	gap: var(--freyza-space-5);
}

.freyza-account-order-card__body {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--freyza-space-4);
	justify-content: space-between;
	padding: var(--freyza-space-5);
}

.freyza-account-order-card__item {
	align-items: center;
	display: flex;
	gap: var(--freyza-space-4);
	min-width: 0;
}

.freyza-account-order-card__thumb {
	background: var(--freyza-color-section);
	border-radius: var(--freyza-radius-input);
	display: block;
	flex-shrink: 0;
	height: 64px;
	overflow: hidden;
	width: 64px;
}

.freyza-account-order-card__thumb img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.freyza-account-order-card__item-details {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.freyza-account-order-card__item-name {
	color: var(--freyza-color-primary);
	font-weight: 500;
}

.freyza-account-order-card__item-meta {
	color: var(--freyza-color-muted);
	font-size: 0.85rem;
}

.freyza-account-order-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--freyza-space-3);
}

.freyza-account-order-card__action {
	align-items: center;
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-input);
	color: var(--freyza-color-primary);
	display: inline-flex;
	font-size: 0.85rem;
	height: 40px;
	justify-content: center;
	padding: 0 var(--freyza-space-4);
}

.freyza-account-order-card__action--primary {
	background: var(--freyza-color-primary);
	border-color: var(--freyza-color-primary);
	color: #ffffff;
	font-weight: 500;
}

@media (max-width: 640px) {
	.freyza-account-order-card__body {
		flex-direction: column;
		align-items: stretch;
	}

	.freyza-account-order-card__actions {
		flex-wrap: nowrap;
	}

	.freyza-account-order-card__action {
		flex: 1;
	}
}

/* Default address card */

.freyza-account-address-card {
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-card);
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: var(--freyza-space-5);
}

.freyza-account-address-card__name {
	color: var(--freyza-color-primary);
	font-weight: 500;
}

.freyza-account-address-card address {
	color: var(--freyza-color-muted);
	font-size: 0.9rem;
	font-style: normal;
	line-height: 1.6;
}

.freyza-account-address-card__phone {
	color: var(--freyza-color-muted);
	font-size: 0.9rem;
}

/* Mobile-only "go to section" list (desktop uses the sidebar nav instead) */

.freyza-account-mobile-nav {
	display: none;
	flex-direction: column;
}

.freyza-account-mobile-nav__link {
	align-items: center;
	color: var(--freyza-color-primary);
	display: flex;
	height: 56px;
	justify-content: space-between;
	padding: 0 var(--freyza-space-5);
}

.freyza-account-mobile-nav__link:not(:last-child) {
	border-bottom: 1px solid var(--freyza-color-border);
}

.freyza-account-mobile-nav__link.woocommerce-MyAccount-navigation-link--customer-logout {
	color: var(--freyza-color-error);
}

.freyza-account-mobile-nav__chevron {
	color: var(--freyza-color-border);
	font-size: 1.1rem;
}

.freyza-account table.shop_table {
	border: 1px solid var(--freyza-color-border);
	border-collapse: separate;
	border-radius: var(--freyza-radius-card);
	border-spacing: 0;
	overflow: hidden;
	width: 100%;
}

.freyza-account table.shop_table th,
.freyza-account table.shop_table td {
	border-bottom: 1px solid var(--freyza-color-border);
	padding: var(--freyza-space-4);
	text-align: left;
	vertical-align: middle;
}

.freyza-account table.shop_table th {
	background: var(--freyza-color-section);
	color: var(--freyza-color-primary);
	font-size: 0.78rem;
	letter-spacing: 0;
	text-transform: uppercase;
}

.freyza-account table.shop_table tr:last-child td {
	border-bottom: 0;
}

.freyza-account .woocommerce-Message,
.freyza-account .woocommerce-message,
.freyza-auth .woocommerce-privacy-policy-text,
.freyza-account .woocommerce-privacy-policy-text {
	color: var(--freyza-color-muted);
	line-height: 1.7;
}

.freyza-account .woocommerce-Address-title {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.freyza-account .woocommerce-Address-title h3 {
	margin: 0;
}

.freyza-account .edit {
	color: var(--freyza-color-secondary);
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

.freyza-account .edit:hover,
.freyza-account .edit:focus-visible {
	color: var(--freyza-color-primary);
	text-decoration: underline;
}

.freyza-account .woocommerce-address-fields__field-wrapper {
	display: grid;
	gap: var(--freyza-space-4);
}

.freyza-account .woocommerce-address-fields__field-wrapper .form-row {
	margin-bottom: 0;
}

.freyza-account .freyza-recently-viewed {
	background: transparent;
	padding: 0;
}

.freyza-account .freyza-recently-viewed .freyza-container {
	max-width: none;
	padding-inline: 0;
}

.freyza-account .freyza-recently-viewed .freyza-section-header {
	background: var(--freyza-color-surface);
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-card);
	box-shadow: var(--freyza-shadow-card);
	margin-bottom: var(--freyza-space-4);
	padding: clamp(20px, 3vw, 28px);
}

.freyza-account .freyza-recently-viewed .freyza-section-header__title {
	font-size: clamp(1.35rem, 2vw, 1.8rem);
}

@media (min-width: 720px) {
	.freyza-account .woocommerce-address-fields__field-wrapper {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.freyza-account .woocommerce-address-fields__field-wrapper .form-row-wide,
	.freyza-account .woocommerce-address-fields > p:last-child {
		grid-column: 1 / -1;
	}
}

/* Mobile compact header (back + page title) — desktop keeps the real site
   header, so this stays hidden until the sidebar nav gets replaced below. */
.freyza-account-mobile-bar {
	align-items: center;
	display: none;
	justify-content: space-between;
	padding: var(--freyza-space-3) clamp(24px, 4vw, 64px);
}

.freyza-account-mobile-bar__back {
	align-items: center;
	color: var(--freyza-color-primary);
	display: inline-flex;
	font-size: 1.1rem;
	height: 44px;
	justify-content: center;
	margin-left: -10px;
	width: 44px;
}

.freyza-account-mobile-bar__title {
	color: var(--freyza-color-primary);
	font-weight: 500;
}

.freyza-account-mobile-bar__spacer {
	width: 44px;
}

@media (max-width: 900px) {
	/* The mockup's mobile account screens are a focused, app-like view
	   with no site chrome — just the compact back+title bar below. The
	   header/footer stay in the DOM (desktop still uses the real one). */
	body.woocommerce-account .freyza-header,
	body.woocommerce-account .freyza-footer {
		display: none;
	}

	.freyza-account,
	.freyza-auth {
		min-height: 100vh;
	}

	/* Full-bleed app view: no room below the panel, it is the screen. */
	.freyza-account.freyza-section {
		padding-block: 0;
	}

	.woocommerce-account .freyza-account .freyza-container {
		border-radius: 0;
		box-shadow: none;
	}

	.freyza-auth__grid,
	.freyza-account__layout {
		grid-template-columns: 1fr;
	}

	.freyza-account__layout {
		padding: var(--freyza-space-5);
	}

	.freyza-account-stats {
		background: var(--freyza-color-border);
		gap: 1px;
	}

	.freyza-account-stat {
		background: var(--freyza-color-surface);
		border: 0;
		border-radius: 0;
		padding: var(--freyza-space-4) var(--freyza-space-2);
	}

	.freyza-account-stat__value {
		font-size: 1.25rem;
	}

	.freyza-account-stat__label {
		font-size: 0.65rem;
		text-align: center;
	}

	.freyza-account-mobile-bar {
		display: flex;
	}

	/* The dashboard page's own mobile-nav list (built from the same
	   endpoints) replaces the sidebar as the way to reach other sections;
	   every other account page is reached through it and just shows its
	   content full-width with the compact bar above for going back. */
	.freyza-account__navigation {
		display: none;
	}

	.freyza-account-mobile-nav {
		display: flex;
	}

	.freyza-account-content {
		grid-column: 1;
	}

	.freyza-account-dashboard {
		gap: var(--freyza-space-6);
	}

	/* The mobile dashboard mockup is just name/email, stats, then the
	   tappable section list — Recent orders / Default address are
	   desktop-only previews (their own pages cover them on mobile). */
	.freyza-account-dashboard .freyza-account-section {
		display: none;
	}
}

@media (max-width: 640px) {
	.freyza-account,
	.freyza-auth {
		min-height: calc(100vh - 68px);
	}

	.freyza-account-content,
	.freyza-auth-card,
	.freyza-account-card {
		padding: 20px;
	}

	.freyza-account-content {
		padding: 0;
	}

	.freyza-account-card {
		padding: var(--freyza-space-5);
	}

	.freyza-account table.shop_table,
	.freyza-account table.shop_table tbody,
	.freyza-account table.shop_table tr,
	.freyza-account table.shop_table td {
		display: block;
	}

	.freyza-account table.shop_table thead {
		display: none;
	}

	.freyza-account table.shop_table td {
		border-bottom: 1px solid var(--freyza-color-border);
	}

	.freyza-account .woocommerce-orders-table__cell::before,
	.freyza-account table.shop_table_responsive tr td::before {
		color: var(--freyza-color-primary);
		font-weight: 800;
	}
}

/* Address book */

.freyza-account-addresses__header {
	align-items: center;
	display: flex;
	gap: var(--freyza-space-4);
	justify-content: space-between;
	margin-bottom: var(--freyza-space-5);
}

.freyza-account-addresses__header .freyza-account-dashboard__title {
	margin-bottom: 0;
}

.freyza-account-addresses__back {
	color: var(--freyza-color-muted);
	font-size: 0.9rem;
	text-decoration: none;
}

.freyza-account-addresses__back:hover {
	color: var(--freyza-color-primary);
}

.freyza-account-addresses__grid {
	display: grid;
	gap: var(--freyza-space-5);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.freyza-account-address-item {
	border: 1px solid var(--freyza-color-border);
	border-radius: var(--freyza-radius-card);
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: var(--freyza-space-5);
}

.freyza-account-address-item.is-default {
	border: 1px solid var(--freyza-color-primary);
}

.freyza-account-address-item__head {
	align-items: center;
	display: flex;
	gap: var(--freyza-space-3);
	justify-content: space-between;
	margin-bottom: 4px;
}

.freyza-account-address-item__label {
	color: var(--freyza-color-primary);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: 0.78rem;
}

.freyza-account-address-item__badge {
	background: var(--freyza-color-primary);
	border-radius: 999px;
	color: #ffffff;
	font-size: 0.72rem;
	font-weight: 600;
	padding: 3px 10px;
}

.freyza-account-address-item__name {
	color: var(--freyza-color-primary);
	font-weight: 500;
}

.freyza-account-address-item__address {
	color: var(--freyza-color-muted);
	font-size: 0.9rem;
	font-style: normal;
	line-height: 1.6;
}

.freyza-account-address-item__phone {
	color: var(--freyza-color-muted);
	font-size: 0.9rem;
}

.freyza-account-address-item__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--freyza-space-4);
	margin-top: var(--freyza-space-3);
}

.freyza-account-address-item__actions a {
	color: var(--freyza-color-primary);
	font-size: 0.85rem;
	text-decoration: underline;
}

.freyza-account-address-item__inline-form {
	display: inline-flex;
	margin: 0;
}

.freyza-account-address-item__inline-form button {
	background: none;
	border: none;
	color: var(--freyza-color-primary);
	cursor: pointer;
	font-size: 0.85rem;
	padding: 0;
	text-decoration: underline;
}

.freyza-account-address-item__remove {
	color: #b3261e !important;
}

.freyza-account-address-form {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-4);
	max-width: 640px;
}

.freyza-account-address-form__default label {
	align-items: center;
	color: var(--freyza-color-muted);
	display: flex;
	font-size: 0.9rem;
	gap: 8px;
}

.freyza-field-error {
	color: #b3261e;
	display: block;
	font-size: 0.82rem;
	margin-top: -8px;
}

@media (max-width: 900px) {
	.freyza-account-addresses__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 640px) {
	.freyza-account-addresses__header {
		flex-direction: column;
		align-items: stretch;
	}

	.freyza-account-addresses__add {
		background: none;
		border: 1px dashed var(--freyza-color-primary);
		color: var(--freyza-color-primary);
		text-align: center;
	}
}

/* Account details */

.freyza-account-details {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-6);
	max-width: 640px;
	min-width: 0;
}

.freyza-account-details__form {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-6);
}

.freyza-account-details__section {
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-4);
}

.freyza-account-details__section--divided {
	border-top: 1px solid var(--freyza-color-border);
	padding-top: var(--freyza-space-6);
}

.freyza-account-details__heading {
	color: var(--freyza-color-primary);
	font-family: var(--freyza-font-heading);
	font-size: 0.95rem;
	font-weight: 600;
	margin: 0;
}

.freyza-account-details__heading--danger {
	color: #b3453e;
}

.freyza-account-details__grid {
	display: grid;
	gap: var(--freyza-space-4);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.freyza-account-details .form-row {
	margin: 0;
}

.freyza-account-details label {
	color: var(--freyza-color-muted);
	font-size: 0.82rem;
	font-weight: 400;
	margin-bottom: 8px;
}

.freyza-account-details__note {
	color: var(--freyza-color-muted);
	font-size: 0.85rem;
	line-height: 1.7;
	margin: 0;
}

.freyza-account-details__actions {
	margin: 0;
}

/* Buttons are declared here rather than reusing .button, because the
   password and delete actions are outline variants that the shared filled
   .button style would otherwise have to be fought with !important. */

.freyza-account-details__button {
	align-items: center;
	background: var(--freyza-color-primary);
	border: 1px solid var(--freyza-color-primary);
	border-radius: var(--freyza-radius-button);
	color: #ffffff;
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-weight: 500;
	justify-content: center;
	min-height: 46px;
	padding: 12px 20px;
	text-align: center;
	transition: background-color var(--freyza-transition-fast), border-color var(--freyza-transition-fast), color var(--freyza-transition-fast);
}

.freyza-account-details__button:hover,
.freyza-account-details__button:focus-visible {
	background: var(--freyza-color-secondary);
	border-color: var(--freyza-color-secondary);
	color: #ffffff;
}

.freyza-account-details__button--outline,
.freyza-account-details__button--outline:hover,
.freyza-account-details__button--outline:focus-visible {
	background: none;
	border-color: var(--freyza-color-primary);
	color: var(--freyza-color-primary);
}

.freyza-account-details__button--outline:hover,
.freyza-account-details__button--outline:focus-visible {
	background: var(--freyza-color-border);
}

.freyza-account-details__button--danger,
.freyza-account-details__button--danger:hover,
.freyza-account-details__button--danger:focus-visible {
	background: none;
	border-color: #b3453e;
	color: #b3453e;
}

.freyza-account-details__button--danger-solid,
.freyza-account-details__button--danger-solid:hover,
.freyza-account-details__button--danger-solid:focus-visible {
	background: #b3453e;
	border-color: #b3453e;
	color: #ffffff;
}

/* The delete confirmation stays folded away behind the button from the
   design, so a single click can never delete an account on its own. */

.freyza-account-details__delete {
	align-self: flex-start;
}

.freyza-account-details__delete summary {
	align-self: flex-start;
	list-style: none;
}

.freyza-account-details__delete summary::-webkit-details-marker {
	display: none;
}

.freyza-account-details__delete[open] summary {
	margin-bottom: var(--freyza-space-4);
}

.freyza-account-details__delete-form {
	border: 1px solid #b3453e;
	border-radius: var(--freyza-radius-card);
	display: flex;
	flex-direction: column;
	gap: var(--freyza-space-4);
	max-width: 420px;
	padding: var(--freyza-space-5);
}

.freyza-account-details__confirm {
	align-items: flex-start;
	color: var(--freyza-color-muted);
	display: flex;
	font-size: 0.82rem;
	gap: 10px;
	line-height: 1.6;
	margin: 0;
}

.freyza-account-details__confirm input {
	flex-shrink: 0;
	margin-top: 3px;
}

@media (max-width: 640px) {
	.freyza-account-details__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.freyza-account-details__button,
	.freyza-account-details__delete,
	.freyza-account-details__delete summary {
		align-self: stretch;
		width: 100%;
	}

	.freyza-account-details__delete-form {
		max-width: none;
	}
}

/* Kadence prints its own avatar-and-name block on
   woocommerce_before_account_navigation, directly above the sidebar's own
   name and email — so the customer's name appeared twice. Hidden rather than
   unhooked: Kadence opens .account-navigation-wrap in that same hook and
   closes it in the matching one, so removing the callback would unbalance
   the markup. */
.freyza-account .kadence-account-avatar {
	display: none;
}
