/**
 * My Account: sidebar navigation, dashboard cards, bookings, addresses and
 * forms. Loaded only on account pages (see bounce_account_assets()).
 */

/* Shorter page header — this is an app screen, not a landing page. */
.woocommerce-account .page-hero {
	padding-block: clamp( 26px, 4vw, 44px );
}

.woocommerce-account .page-hero h1 {
	font-size: clamp( 1.8rem, 3.4vw, 2.4rem );
}

/* ---------------------------------------------------------------------------
   Layout: sidebar + content
   ------------------------------------------------------------------------ */

.logged-in.woocommerce-account .entry-content > .woocommerce {
	display: grid;
	grid-template-columns: 240px minmax( 0, 1fr );
	gap: clamp( 20px, 3vw, 36px );
	align-items: start;
}

/* Account screens use the full page width, not the reading width. */
.woocommerce-account .entry-content {
	max-width: none;
}

/* WooCommerce prints a notices box before the menu; give everything but the
   menu and the content a full row so nothing lands in the wrong column. */
.logged-in.woocommerce-account .entry-content > .woocommerce > * {
	grid-column: 1 / -1;
}

.logged-in.woocommerce-account .entry-content > .woocommerce > .woocommerce-MyAccount-navigation {
	grid-column: 1;
}

.logged-in.woocommerce-account .entry-content > .woocommerce > .woocommerce-MyAccount-content {
	grid-column: 2;
}

.logged-in.woocommerce-account .entry-content > .woocommerce > .woocommerce-notices-wrapper:empty {
	display: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	margin: 0;
}

.woocommerce-MyAccount-navigation {
	position: sticky;
	top: 110px;
	padding: 10px;
	border: 1px solid var( --bounce-line );
	border-radius: var( --bounce-radius );
	background: var( --bounce-card );
	box-shadow: var( --bounce-shadow );
}

.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 2px;
}

.woocommerce-MyAccount-navigation a {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 11px 14px;
	border-radius: 12px;
	color: var( --bounce-ink );
	font-weight: 700;
	text-decoration: none;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.woocommerce-MyAccount-navigation a::before {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background: currentColor;
	opacity: 0.7;
	-webkit-mask: no-repeat center / contain;
	mask: no-repeat center / contain;
}

.woocommerce-MyAccount-navigation a:hover {
	background: var( --bounce-soft );
}

.woocommerce-MyAccount-navigation .is-active a {
	background: color-mix( in srgb, var( --bounce-primary ) 11%, var( --bounce-card ) );
	color: var( --bounce-primary-dark );
}

.woocommerce-MyAccount-navigation .is-active a::before {
	opacity: 1;
}

.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: 6px;
	padding-top: 6px;
	border-top: 1px solid var( --bounce-line );
}

.woocommerce-MyAccount-navigation-link--customer-logout a {
	color: var( --bounce-muted );
}

.woocommerce-MyAccount-navigation-link--dashboard a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='5' rx='1.5'/%3E%3Crect x='14' y='12' width='7' height='9' rx='1.5'/%3E%3Crect x='3' y='16' width='7' height='5' rx='1.5'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='5' rx='1.5'/%3E%3Crect x='14' y='12' width='7' height='9' rx='1.5'/%3E%3Crect x='3' y='16' width='7' height='5' rx='1.5'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--orders a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--edit-address a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--edit-account a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--bb-refer a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12v9H4v-9M2 7h20v5H2zM12 22V7M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7zM12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12v9H4v-9M2 7h20v5H2zM12 22V7M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7zM12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--customer-logout a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4M16 17l5-5-5-5M21 12H9'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4M16 17l5-5-5-5M21 12H9'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--payment-methods a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------------------
   Dashboard
   ------------------------------------------------------------------------ */

.acct {
	display: grid;
	gap: 20px;
}

.acct h2,
.acct h3 {
	margin: 0;
}

/* The page's article styles indent lists and space out children; the
   dashboard lays itself out. */
.entry-content .acct ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.entry-content .acct li {
	margin: 0;
}

.entry-content .acct > * + *,
.entry-content .acct-card > * + * {
	margin-top: 0;
}

.acct-hello {
	display: flex;
	align-items: center;
	gap: 18px;
	padding: clamp( 20px, 3vw, 28px );
	border-radius: var( --bounce-radius-lg );
	color: #fff;
	background:
		radial-gradient( 60% 140% at 100% 0%, rgba( 255, 201, 60, 0.35 ) 0%, rgba( 255, 201, 60, 0 ) 60% ),
		radial-gradient( 50% 120% at 0% 100%, rgba( 43, 168, 224, 0.35 ) 0%, rgba( 43, 168, 224, 0 ) 65% ),
		linear-gradient( 135deg, var( --bounce-primary ) 0%, var( --bounce-primary-dark ) 100% );
	box-shadow: 0 16px 40px color-mix( in srgb, var( --bounce-primary ) 28%, transparent );
}

.acct-avatar {
	flex: none;
	width: 58px;
	height: 58px;
	border-radius: 999px;
	display: grid;
	place-items: center;
	background: rgba( 255, 255, 255, 0.22 );
	border: 2px solid rgba( 255, 255, 255, 0.55 );
	font-family: var( --bounce-font-display );
	font-weight: 800;
	font-size: 1.6rem;
}

.acct-hello-text {
	flex: 1;
	min-width: 0;
}

.acct-hello h2 {
	color: #fff;
	font-size: clamp( 1.5rem, 3vw, 1.9rem );
	line-height: 1.15;
}

.acct-hello p {
	margin: 4px 0 0;
	opacity: 0.9;
}

.acct-hello-name {
	display: inline-block;
	margin-left: 4px;
	color: #fff;
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.acct-hello .btn {
	background: #fff;
	color: var( --bounce-primary-dark );
	box-shadow: 0 4px 0 rgba( 0, 0, 0, 0.12 );
	white-space: nowrap;
}

.acct-hello .btn:hover {
	background: #fff;
	color: var( --bounce-primary-dark );
	box-shadow: 0 6px 0 rgba( 0, 0, 0, 0.12 );
}

.acct-stats {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 140px, 1fr ) );
	gap: 12px;
}

.acct-stat {
	padding: 16px 18px;
	border: 1px solid var( --bounce-line );
	border-radius: var( --bounce-radius );
	background: var( --bounce-card );
}

.acct-stat-num {
	display: block;
	font-family: var( --bounce-font-display );
	font-weight: 800;
	font-size: 1.9rem;
	line-height: 1.1;
	color: var( --bounce-ink );
}

.acct-stat-label {
	color: var( --bounce-muted );
	font-size: 0.9rem;
	font-weight: 600;
}

.acct-grid {
	display: grid;
	grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	gap: 20px;
}

.acct-card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: clamp( 18px, 2.6vw, 26px );
	border: 1px solid var( --bounce-line );
	border-radius: var( --bounce-radius );
	background: var( --bounce-card );
	box-shadow: var( --bounce-shadow );
}

.acct-card h3 {
	font-size: 1.3rem;
	line-height: 1.2;
}

.acct-card p {
	margin: 0;
}

.acct-eyebrow {
	margin: 0;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var( --bounce-muted );
}

.acct-muted {
	color: var( --bounce-muted );
	font-size: 0.9rem;
}

.acct-card-actions {
	margin-top: auto;
	padding-top: 6px;
}

.acct-card-actions .btn {
	padding: 11px 20px;
	font-size: 0.95rem;
}

.acct-link {
	font-weight: 800;
	text-decoration: none;
}

/* Next party */
.acct-next {
	grid-column: 1 / -1;
	border-top: 5px solid var( --bounce-primary );
}

.acct-next-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 14px;
}

.acct-next-head h3 {
	font-size: clamp( 1.5rem, 3vw, 2rem );
}

.acct-countdown {
	padding: 5px 12px;
	border-radius: 999px;
	background: var( --bounce-accent );
	color: var( --bounce-ink );
	font-weight: 800;
	font-size: 0.9rem;
}

.acct-next-details {
	list-style: none;
	margin: 4px 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 180px, 1fr ) );
	gap: 10px;
}

.acct-next-details li {
	padding: 12px 14px;
	border-radius: 12px;
	background: var( --bounce-soft );
}

.acct-next-details span {
	display: block;
	color: var( --bounce-muted );
	font-size: 0.82rem;
	font-weight: 700;
}

.acct-next-details strong {
	color: var( --bounce-ink );
}

.acct-next-tip {
	color: var( --bounce-muted );
	font-size: 0.92rem;
}

.acct-next.is-empty {
	border-top-color: var( --bounce-line );
	background:
		radial-gradient( 60% 140% at 100% 0%, rgba( 43, 168, 224, 0.12 ) 0%, rgba( 43, 168, 224, 0 ) 60% ),
		var( --bounce-card );
}

/* Credits */
.acct-credit-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 10px;
}

.acct-credit-list li {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 10px 12px;
	border: 2px dashed color-mix( in srgb, var( --bounce-primary ) 35%, var( --bounce-card ) );
	border-radius: 14px;
	background: color-mix( in srgb, var( --bounce-primary ) 5%, var( --bounce-card ) );
}

.acct-credit-amount {
	font-family: var( --bounce-font-display );
	font-weight: 800;
	font-size: 1.6rem;
	color: var( --bounce-primary-dark );
	min-width: 62px;
	text-align: center;
}

.acct-credit-info strong,
.acct-credit-info small {
	display: block;
}

.acct-credit-info small {
	color: var( --bounce-muted );
}

/* Refer */
.acct-refer-link {
	display: flex;
	gap: 8px;
}

.acct-refer-link input {
	flex: 1;
	min-width: 0;
	padding: 10px 12px;
	border: 2px solid var( --bounce-line );
	border-radius: 12px;
	font: inherit;
	font-size: 0.9rem;
	font-weight: 600;
	color: var( --bounce-ink );
	background: var( --bounce-soft );
}

.acct-refer-link .btn {
	padding: 10px 18px;
	font-size: 0.95rem;
}

/* Help */
.acct-help-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.acct-help-list li + li {
	border-top: 1px solid var( --bounce-line );
}

.acct-help-list a {
	display: flex;
	justify-content: space-between;
	padding: 11px 2px;
	color: var( --bounce-ink );
	font-weight: 700;
	text-decoration: none;
}

.acct-help-list a::after {
	content: "›";
	color: var( --bounce-muted );
	font-size: 1.3em;
	line-height: 1;
}

.acct-help-list a:hover {
	color: var( --bounce-primary-dark );
}

.acct-help.is-wide .acct-help-list {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 200px, 1fr ) );
	gap: 10px;
}

.acct-help.is-wide .acct-help-list li + li {
	border-top: 0;
}

.acct-help.is-wide .acct-help-list a {
	height: 100%;
	box-sizing: border-box;
	align-items: center;
	padding: 12px 14px;
	border-radius: 12px;
	background: var( --bounce-soft );
}

.acct-help.is-wide .acct-help-list a:hover {
	background: color-mix( in srgb, var( --bounce-primary ) 8%, var( --bounce-card ) );
}

/* Recent bookings */
.acct-recent-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.acct-booking-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.acct-booking {
	display: grid;
	grid-template-columns: auto minmax( 0, 1fr ) auto auto;
	align-items: center;
	gap: 14px;
	padding: 12px 0;
}

.acct-booking + .acct-booking {
	border-top: 1px solid var( --bounce-line );
}

.acct-booking-date {
	width: 52px;
	padding: 6px 0;
	border-radius: 12px;
	background: var( --bounce-soft );
	text-align: center;
	font-family: var( --bounce-font-display );
	font-weight: 800;
	font-size: 1.3rem;
	line-height: 1;
	color: var( --bounce-ink );
}

.acct-booking-date b {
	display: block;
	margin-bottom: 2px;
	font-size: 0.72rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var( --bounce-primary-dark );
}

.acct-booking-main strong,
.acct-booking-main small {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.acct-booking-main small {
	color: var( --bounce-muted );
}

.acct-booking-actions {
	display: flex;
	gap: 12px;
	font-weight: 800;
	white-space: nowrap;
}

.acct-booking-actions a {
	text-decoration: none;
}

.acct-pill {
	padding: 4px 11px;
	border-radius: 999px;
	font-size: 0.8rem;
	font-weight: 800;
	white-space: nowrap;
	background: #eef1f6;
	color: var( --bounce-muted );
}

.acct-pill.is-processing,
.acct-pill.is-on-hold {
	background: #e3f4ff;
	color: #0b6aa2;
}

.acct-pill.is-completed {
	background: #e5f6ea;
	color: #1d6b35;
}

.acct-pill.is-pending {
	background: #fff4d6;
	color: #8a5a00;
}

.acct-pill.is-cancelled,
.acct-pill.is-refunded {
	background: #fdecea;
	color: #9b2a22;
}

/* ---------------------------------------------------------------------------
   Other account screens
   ------------------------------------------------------------------------ */

.woocommerce-MyAccount-content > p:first-child,
.woocommerce-MyAccount-content .woocommerce-notices-wrapper + p {
	color: var( --bounce-muted );
}

/* Card look for every panel on the non-dashboard screens. */
.woocommerce-MyAccount-content .woocommerce-orders-table,
.woocommerce-MyAccount-content .woocommerce-table--order-details,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm,
.woocommerce-MyAccount-content .woocommerce-address-fields,
.woocommerce-MyAccount-content .woocommerce-Address,
.woocommerce-MyAccount-content .woocommerce-customer-details address {
	border: 1px solid var( --bounce-line ) !important;
	border-radius: var( --bounce-radius ) !important;
	background: var( --bounce-card );
	box-shadow: var( --bounce-shadow );
}

/* Bookings table */
.woocommerce-MyAccount-content table.shop_table {
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	margin: 0 0 20px;
}

.woocommerce-MyAccount-content table.shop_table th {
	padding: 14px 16px;
	background: var( --bounce-soft );
	font-size: 0.8rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var( --bounce-muted );
	border: 0;
}

.woocommerce-MyAccount-content table.shop_table td {
	font-size: 0.95rem;
	padding: 14px 16px;
	border-top: 1px solid var( --bounce-line );
	vertical-align: middle;
}

.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button {
	padding: 8px 14px;
	font-size: 0.85rem;
	margin: 2px 4px 2px 0;
	box-shadow: none;
}

.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button.bb-rebook {
	background: var( --bounce-card );
	color: var( --bounce-primary-dark );
	box-shadow: inset 0 0 0 2px var( --bounce-primary );
}

.acct-nowrap {
	white-space: nowrap;
}

.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions {
	min-width: 150px;
}

.woocommerce-MyAccount-content mark {
	background: none;
	color: var( --bounce-ink );
	font-weight: 800;
}

/* Book it again (plugin) */
.bb-book-again {
	margin: 24px 0;
	padding: 20px 22px;
	border-radius: var( --bounce-radius );
	background: color-mix( in srgb, var( --bounce-primary ) 6%, var( --bounce-card ) );
	border: 1px solid color-mix( in srgb, var( --bounce-primary ) 25%, var( --bounce-card ) );
}

.bb-book-again h2 {
	margin: 0 0 4px;
	font-size: 1.25rem;
}

.bb-book-again .button {
	margin: 8px 8px 0 0;
}

/* Addresses */
.woocommerce-MyAccount-content .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 240px, 1fr ) );
	gap: 20px;
}

.woocommerce-MyAccount-content .woocommerce-Addresses::before,
.woocommerce-MyAccount-content .woocommerce-Addresses::after {
	content: none;
}

.woocommerce-MyAccount-content .woocommerce-Address {
	float: none !important;
	width: auto !important;
	padding: 20px 22px;
}

.woocommerce-Address-title {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: baseline;
	gap: 2px 12px;
	margin: 0 0 10px;
}

.woocommerce-Address-title::before,
.woocommerce-Address-title::after {
	content: none;
}

.woocommerce-Address-title h2 {
	float: none;
	margin: 0;
	font-size: 1.2rem;
	white-space: nowrap;
}

.woocommerce-Address-title .edit {
	float: none;
	font-size: 0.92rem;
}

.woocommerce-Address-title .edit {
	font-weight: 800;
	text-decoration: none;
}

.woocommerce-Address address {
	font-style: normal;
	line-height: 1.7;
	color: var( --bounce-muted );
}

/* Forms */
.woocommerce-MyAccount-content .woocommerce-EditAccountForm,
.woocommerce-MyAccount-content .woocommerce-address-fields {
	padding: clamp( 18px, 3vw, 28px );
}

.woocommerce-account form .form-row {
	margin: 0 0 16px;
	padding: 0;
}

.woocommerce-account form .form-row label {
	display: block;
	margin: 0 0 6px;
	font-weight: 700;
	font-size: 0.92rem;
	color: var( --bounce-ink );
}

.woocommerce-account form .input-text,
.woocommerce-account form select,
.woocommerce-account form textarea,
.woocommerce-account .select2-container .select2-selection--single {
	width: 100%;
	box-sizing: border-box;
	min-height: 48px;
	padding: 11px 14px;
	border: 2px solid var( --bounce-line );
	border-radius: 12px;
	background: var( --bounce-card );
	font: inherit;
	color: var( --bounce-ink );
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.woocommerce-account .select2-container .select2-selection--single .select2-selection__rendered {
	padding: 0;
	line-height: 22px;
}

.woocommerce-account .select2-container .select2-selection--single .select2-selection__arrow {
	top: 11px;
	right: 8px;
}

.woocommerce-account form .input-text:focus,
.woocommerce-account form select:focus {
	outline: none;
	border-color: var( --bounce-primary );
	box-shadow: 0 0 0 3px color-mix( in srgb, var( --bounce-primary ) 20%, transparent );
}

.woocommerce-account fieldset {
	margin: 18px 0;
	padding: 18px;
	border: 1px solid var( --bounce-line );
	border-radius: 14px;
}

.woocommerce-account fieldset legend {
	padding: 0 8px;
	font-weight: 800;
}

.woocommerce-account form em {
	display: block;
	margin-top: 4px;
	font-size: 0.85rem;
	color: var( --bounce-muted );
}

/* Notices */
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error {
	margin: 0 0 18px;
	padding: 14px 18px 14px 48px;
	border: 0;
	border-radius: 14px;
	background: #eef6fd;
	color: var( --bounce-ink );
	font-weight: 600;
}

.woocommerce-account .woocommerce-message {
	background: #e8f6ec;
}

.woocommerce-account .woocommerce-error {
	background: #fdecea;
}

.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-error::before {
	top: 14px;
	left: 18px;
}

/* ---------------------------------------------------------------------------
   Signed out: sign in / create account
   ------------------------------------------------------------------------ */

.woocommerce-account #customer_login {
	display: grid;
	grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	gap: 24px;
	max-width: 980px;
}

.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after {
	content: none;
}

.woocommerce-account #customer_login > div {
	float: none;
	width: auto;
	padding: clamp( 20px, 3vw, 32px );
	border: 1px solid var( --bounce-line );
	border-radius: var( --bounce-radius-lg );
	background: var( --bounce-card );
	box-shadow: var( --bounce-shadow );
}

.woocommerce-account #customer_login h2 {
	margin: 0 0 14px;
}

.woocommerce-account #customer_login .u-column2 {
	background:
		radial-gradient( 70% 120% at 100% 0%, rgba( 255, 201, 60, 0.18 ) 0%, rgba( 255, 201, 60, 0 ) 60% ),
		var( --bounce-card );
	border-top: 5px solid var( --bounce-primary );
}

.acct-register-offer {
	margin: 0 0 16px;
	padding: 12px 14px;
	border-radius: 12px;
	background: #fff4d6;
	color: var( --bounce-ink );
}

.acct-register-offer strong {
	color: var( --bounce-primary-dark );
}

.woocommerce-account form.login,
.woocommerce-account form.register {
	margin: 0;
	padding: 0;
	border: 0;
}

.woocommerce-account .woocommerce-form-login__rememberme {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	margin: 0 16px 12px 0;
}

.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit {
	width: 100%;
	margin-top: 4px;
}

.woocommerce-account .lost_password {
	margin: 14px 0 0;
	text-align: center;
}

/* ---------------------------------------------------------------------------
   Small screens
   ------------------------------------------------------------------------ */

@media ( max-width: 900px ) {
	.logged-in.woocommerce-account .entry-content > .woocommerce {
		grid-template-columns: 1fr;
	}

	.logged-in.woocommerce-account .entry-content > .woocommerce > .woocommerce-MyAccount-content {
		grid-column: 1;
	}

	/* The sidebar becomes a swipeable row of tabs. */
	.woocommerce-MyAccount-navigation {
		position: static;
		padding: 6px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.woocommerce-MyAccount-navigation ul {
		display: flex;
		gap: 4px;
		width: max-content;
	}

	.woocommerce-MyAccount-navigation a {
		padding: 9px 13px;
		white-space: nowrap;
	}

	.woocommerce-MyAccount-navigation-link--customer-logout {
		margin: 0;
		padding: 0;
		border: 0;
	}
}

@media ( max-width: 720px ) {
	.acct-grid {
		grid-template-columns: 1fr;
	}

	.acct-hello {
		flex-wrap: wrap;
	}

	.acct-hello-actions {
		width: 100%;
	}

	.acct-hello .btn {
		width: 100%;
	}

	.acct-stats {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	}

	.acct-booking {
		grid-template-columns: auto minmax( 0, 1fr );
	}

	.acct-booking .acct-pill,
	.acct-booking-actions {
		grid-column: 2;
		justify-self: start;
	}

	.woocommerce-account #customer_login {
		grid-template-columns: 1fr;
	}
}
