.sdc-component {
	--sdc-color-bg: #fff;
	--sdc-color-text: #171717;
	--sdc-color-muted: #666;
	--sdc-color-border: #e2e2e2;
	--sdc-color-action: #171717;
	box-sizing: border-box;
	color: var(--sdc-color-text);
	font: inherit;
	max-width: 100%;
}

.sdc-component *,
.sdc-component *::before,
.sdc-component *::after {
	box-sizing: inherit;
}

.sdc-empty-state,
.sdc-customer-dashboard {
	background: var(--sdc-color-bg);
	border: 1px solid var(--sdc-color-border);
	border-radius: 8px;
	padding: clamp(20px, 4vw, 36px);
}

.sdc-empty-state h2,
.sdc-customer-dashboard h2 {
	color: var(--sdc-color-text);
	font: inherit;
	font-size: clamp(1.25rem, 2vw, 1.6rem);
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 8px;
}

.sdc-empty-state p,
.sdc-customer-dashboard p {
	color: var(--sdc-color-muted);
	font: inherit;
	line-height: 1.6;
	margin: 0;
}

.sdc-button {
	align-items: center;
	background: var(--sdc-color-action);
	border: 1px solid var(--sdc-color-action);
	border-radius: 4px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	margin-top: 16px;
	min-height: 44px;
	padding: 11px 20px;
	text-decoration: none;
	touch-action: manipulation;
}

.sdc-button:hover,
.sdc-button:focus-visible {
	background: #333;
	color: #fff;
}

.sdc-button:focus-visible {
	outline: 3px solid rgba(0, 0, 0, .25);
	outline-offset: 2px;
}

.sdc-button[disabled] {
	cursor: not-allowed;
	opacity: .55;
}

.sdc-assistive-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.sdc-schedule,
.sdc-class-details,
.sdc-session-info {
	--sdc-radius: 10px;
	width: 100%;
}

.sdc-section-heading,
.sdc-class-hero {
	align-items: flex-end;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin-bottom: 24px;
}

.sdc-section-heading h2,
.sdc-class-hero h2 {
	color: var(--sdc-color-text);
	font: inherit;
	font-size: clamp(1.65rem, 4vw, 2.5rem);
	font-weight: 800;
	line-height: 1.12;
	margin: 3px 0 0;
}

.sdc-kicker {
	color: var(--sdc-color-muted);
	display: block;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .1em;
	line-height: 1.3;
	text-transform: uppercase;
}

.sdc-result-count,
.sdc-class-type {
	background: var(--sdc-color-text);
	border-radius: 999px;
	color: #fff;
	font-size: .75rem;
	font-weight: 700;
	padding: 8px 11px;
	white-space: nowrap;
}

.sdc-schedule-filters {
	align-items: end;
	background: #f7f7f7;
	border: 1px solid var(--sdc-color-border);
	border-radius: var(--sdc-radius);
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 0 24px;
	padding: clamp(16px, 3vw, 24px);
}

.sdc-schedule-filters label {
	display: block;
	font-size: .76rem;
	font-weight: 700;
	margin-bottom: 5px;
}

.sdc-schedule-filters input,
.sdc-schedule-filters select {
	background: #fff;
	border: 1px solid var(--sdc-color-border);
	border-radius: 4px;
	color: var(--sdc-color-text);
	font: inherit;
	height: 44px;
	max-width: 100%;
	padding: 8px 10px;
	width: 100%;
}

.sdc-filter-buttons {
	align-items: center;
	display: flex;
	gap: 14px;
}

.sdc-filter-buttons .sdc-button {
	margin: 0;
}

.sdc-filter-reset {
	color: var(--sdc-color-text);
	font-size: .85rem;
	font-weight: 700;
}

.sdc-schedule-list {
	border-top: 1px solid var(--sdc-color-border);
}

.sdc-schedule-card {
	align-items: center;
	border-bottom: 1px solid var(--sdc-color-border);
	display: grid;
	gap: clamp(16px, 3vw, 30px);
	grid-template-columns: 70px minmax(0, 1fr) minmax(130px, auto);
	padding: clamp(18px, 3vw, 28px) 0;
}

.sdc-session-date {
	align-items: center;
	background: #f5f5f5;
	border: 1px solid var(--sdc-color-border);
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 72px;
	padding: 7px;
	text-align: center;
}

.sdc-session-date span,
.sdc-session-date small {
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .06em;
	line-height: 1.2;
	text-transform: uppercase;
}

.sdc-session-date strong {
	font-size: 1.65rem;
	line-height: 1.05;
}

.sdc-schedule-copy h3,
.sdc-session-copy h3,
.sdc-upcoming-sessions h3,
.sdc-instructor-contacts h3 {
	color: var(--sdc-color-text);
	font: inherit;
	font-size: 1.15rem;
	font-weight: 800;
	line-height: 1.3;
	margin: 4px 0 10px;
}

.sdc-schedule-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 24px;
}

.sdc-schedule-meta span {
	color: var(--sdc-color-muted);
	font-size: .83rem;
}

.sdc-schedule-meta strong {
	color: var(--sdc-color-text);
	display: block;
	font-size: .68rem;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.sdc-schedule-action {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 4px;
	text-align: right;
}

.sdc-schedule-action small {
	color: var(--sdc-color-muted);
	font-size: .75rem;
}

.sdc-availability {
	align-items: center;
	display: inline-flex;
	font-size: .76rem;
	font-weight: 800;
	gap: 6px;
}

.sdc-availability::before {
	background: currentColor;
	border-radius: 50%;
	content: "";
	height: 7px;
	width: 7px;
}

.sdc-availability.is-available {
	color: #147a48;
}

.sdc-availability.is-full {
	color: #a02a26;
}

.sdc-booking-button.is-compact .sdc-button,
.sdc-schedule-action .sdc-button {
	font-size: .83rem;
	margin-top: 8px;
	min-height: 38px;
	padding: 8px 15px;
}

.sdc-class-hero {
	background: var(--sdc-color-text);
	border-radius: var(--sdc-radius);
	color: #fff;
	margin-bottom: 20px;
	padding: clamp(22px, 4vw, 38px);
}

.sdc-class-hero h2,
.sdc-class-hero .sdc-kicker {
	color: #fff;
}

.sdc-class-hero .sdc-kicker {
	opacity: .7;
}

.sdc-class-type {
	background: #fff;
	color: var(--sdc-color-text);
}

.sdc-class-layout {
	display: grid;
	gap: 20px;
	grid-template-columns: minmax(0, 1.4fr) minmax(300px, .8fr);
}

.sdc-class-main,
.sdc-upcoming-sessions {
	border: 1px solid var(--sdc-color-border);
	border-radius: var(--sdc-radius);
	padding: clamp(20px, 4vw, 30px);
}

.sdc-class-description {
	color: var(--sdc-color-text);
	line-height: 1.7;
}

.sdc-class-description > :first-child {
	margin-top: 0;
}

.sdc-class-facts {
	border-top: 1px solid var(--sdc-color-border);
	display: grid;
	gap: 0 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 24px 0 0;
	padding-top: 12px;
}

.sdc-class-facts > div {
	border-bottom: 1px solid var(--sdc-color-border);
	padding: 10px 0;
}

.sdc-class-facts dt {
	color: var(--sdc-color-muted);
	font-size: .72rem;
	font-weight: 700;
}

.sdc-class-facts dd {
	font-weight: 700;
	margin: 2px 0 0;
}

.sdc-upcoming-sessions > h3 {
	margin-top: 0;
}

.sdc-upcoming-sessions > article {
	align-items: center;
	border-bottom: 1px solid var(--sdc-color-border);
	display: flex;
	gap: 12px;
	justify-content: space-between;
	padding: 13px 0;
}

.sdc-upcoming-sessions > article:last-child {
	border-bottom: 0;
}

.sdc-upcoming-sessions time,
.sdc-upcoming-sessions span,
.sdc-upcoming-sessions small {
	display: block;
}

.sdc-upcoming-sessions time {
	font-size: .85rem;
	font-weight: 800;
}

.sdc-upcoming-sessions span,
.sdc-upcoming-sessions small {
	color: var(--sdc-color-muted);
	font-size: .76rem;
}

.sdc-session-info {
	align-items: center;
	border: 1px solid var(--sdc-color-border);
	border-radius: var(--sdc-radius);
	display: grid;
	gap: 18px;
	grid-template-columns: 70px minmax(0, 1fr) auto;
	padding: clamp(16px, 3vw, 24px);
}

.sdc-session-copy h3 {
	margin-top: 0;
}

.sdc-session-copy p {
	color: var(--sdc-color-muted);
	line-height: 1.5;
	margin: 0 0 8px;
}

.sdc-instructor-contacts {
	background: #f7f7f7;
	border-radius: 7px;
	margin-top: 20px;
	padding: 14px;
}

.sdc-instructor-contacts h3,
.sdc-instructor-contacts p {
	font-size: .85rem;
	margin: 0 0 5px;
}

.sdc-instructor-contacts p:last-child {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.sdc-button {
		width: 100%;
	}

	.sdc-section-heading,
	.sdc-class-hero {
		align-items: flex-start;
		flex-direction: column;
	}

	.sdc-schedule-filters,
	.sdc-class-layout {
		grid-template-columns: 1fr;
	}

	.sdc-schedule-card,
	.sdc-session-info {
		align-items: start;
		grid-template-columns: 58px minmax(0, 1fr);
	}

	.sdc-session-date {
		min-height: 62px;
	}

	.sdc-schedule-action,
	.sdc-session-info > .sdc-booking-button {
		align-items: stretch;
		grid-column: 1 / -1;
		text-align: left;
		width: 100%;
	}

	.sdc-class-facts {
		grid-template-columns: 1fr;
	}

	.sdc-upcoming-sessions > article {
		align-items: stretch;
		flex-direction: column;
	}
}

/* Phase 3: participant management and capacity-safe booking UI. */
.sdc-booking-button {
	min-width: 0;
}

.sdc-booking-form {
	align-items: end;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-end;
}

.sdc-booking-form .sdc-booking-participant-label {
	color: var(--sdc-color-muted);
	font-size: .72rem;
	font-weight: 800;
	width: 100%;
}

.sdc-booking-form select,
.sdc-account-section input,
.sdc-account-section select,
.sdc-account-section textarea {
	background: #fff;
	border: 1px solid var(--sdc-color-border);
	border-radius: 4px;
	color: var(--sdc-color-text);
	font: inherit;
	max-width: 100%;
	padding: 10px 11px;
}

.sdc-booking-form select {
	min-height: 44px;
	min-width: 165px;
}

.sdc-booking-form .sdc-button {
	margin-top: 0;
}

.sdc-booking-button.is-compact .sdc-booking-form {
	justify-content: flex-end;
}

.sdc-booking-no-participants p {
	color: var(--sdc-color-muted);
	font-size: .8rem;
	line-height: 1.45;
	margin: 0;
	max-width: 240px;
}

.sdc-button-secondary {
	background: transparent;
	color: var(--sdc-color-text);
}

.sdc-button-secondary:hover,
.sdc-button-secondary:focus-visible {
	background: #f4f4f4;
	color: var(--sdc-color-text);
}

.sdc-button-danger {
	background: #a00;
	border-color: #a00;
}

.sdc-button-danger:hover,
.sdc-button-danger:focus-visible {
	background: #7a0000;
	border-color: #7a0000;
}

.sdc-customer-dashboard-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.sdc-account-section {
	--sdc-radius: 10px;
	width: 100%;
}

.sdc-account-section > p {
	color: var(--sdc-color-muted);
	line-height: 1.6;
}

.sdc-account-heading {
	align-items: center;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.sdc-account-heading h2,
.sdc-booking-detail h2 {
	font: inherit;
	font-size: clamp(1.4rem, 3vw, 2rem);
	font-weight: 800;
	line-height: 1.2;
	margin: 3px 0 0;
}

.sdc-account-heading .sdc-button {
	margin-top: 0;
}

.sdc-account-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
	margin-top: 22px;
}

.sdc-account-list,
.sdc-booking-history {
	display: grid;
	gap: 12px;
}

.sdc-account-card,
.sdc-booking-history-card,
.sdc-account-form-card,
.sdc-booking-detail {
	background: #fff;
	border: 1px solid var(--sdc-color-border);
	border-radius: var(--sdc-radius);
}

.sdc-account-card,
.sdc-booking-history-card {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	padding: 16px 18px;
}

.sdc-account-card > div > span,
.sdc-account-card > div > small {
	color: var(--sdc-color-muted);
	display: block;
	font-size: .82rem;
	margin-top: 3px;
}

.sdc-account-card.is-muted {
	opacity: .65;
}

.sdc-account-form-card,
.sdc-booking-detail {
	padding: clamp(18px, 3vw, 26px);
}

.sdc-account-form-card h3,
.sdc-booking-history-card h3 {
	margin: 0 0 5px;
}

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

.sdc-form-grid label,
.sdc-cancel-booking-form label,
.sdc-account-filter label {
	display: grid;
	font-size: .82rem;
	font-weight: 700;
	gap: 6px;
}

.sdc-form-grid input,
.sdc-form-grid select,
.sdc-cancel-booking-form textarea {
	width: 100%;
}

.sdc-form-grid small {
	color: var(--sdc-color-muted);
	font-size: .72rem;
	font-weight: 400;
}

.sdc-account-filter {
	align-items: end;
	display: flex;
	gap: 10px;
	margin: 18px 0;
}

.sdc-account-filter .sdc-button {
	margin-top: 0;
}

.sdc-booking-history-card p {
	color: var(--sdc-color-muted);
	line-height: 1.5;
	margin: 3px 0 0;
}

.sdc-booking-history-card .sdc-button {
	margin-top: 0;
	white-space: nowrap;
}

.sdc-status-pill {
	border-radius: 999px;
	display: inline-flex;
	font-size: .7rem;
	font-weight: 800;
	line-height: 1;
	padding: 6px 9px;
	text-transform: capitalize;
}

.sdc-status-pill.is-confirmed {
	background: #e6f5ec;
	color: #116b3b;
}

.sdc-status-pill.is-cancelled,
.sdc-status-pill.is-failed,
.sdc-status-pill.is-expired {
	background: #f9e7e7;
	color: #8b1f1f;
}

.sdc-status-pill.is-pending,
.sdc-status-pill.is-held {
	background: #fff4d8;
	color: #825c00;
}

.sdc-booking-detail-grid {
	display: grid;
	gap: 1px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 20px 0;
	overflow: hidden;
}

.sdc-booking-detail-grid > div {
	background: #f7f7f7;
	padding: 14px;
}

.sdc-booking-detail-grid dt {
	color: var(--sdc-color-muted);
	font-size: .72rem;
	font-weight: 800;
	margin-bottom: 3px;
	text-transform: uppercase;
}

.sdc-booking-detail-grid dd {
	margin: 0;
}

.sdc-cancel-booking-form {
	border-top: 1px solid var(--sdc-color-border);
	margin-top: 20px;
	padding-top: 20px;
}

@media (max-width: 900px) {
	.sdc-account-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.sdc-booking-form,
	.sdc-booking-button.is-compact .sdc-booking-form {
		align-items: stretch;
		flex-direction: column;
		justify-content: flex-start;
	}

	.sdc-booking-form select,
	.sdc-booking-form .sdc-button {
		width: 100%;
	}

	.sdc-account-heading,
	.sdc-account-card,
	.sdc-booking-history-card,
	.sdc-account-filter {
		align-items: stretch;
		flex-direction: column;
	}

	.sdc-form-grid,
	.sdc-booking-detail-grid {
		grid-template-columns: 1fr;
	}

	.sdc-booking-history-card .sdc-button {
		width: 100%;
	}
}

/* Phase 4: package credits and WooCommerce booking checkout. */
.sdc-booking-methods {
	border: 0;
	display: grid;
	gap: 8px;
	margin: 0;
	min-width: 220px;
	padding: 0;
}

.sdc-booking-methods legend {
	color: var(--sdc-color-muted);
	font-size: .75rem;
	font-weight: 800;
	margin-bottom: 4px;
	text-transform: uppercase;
}

.sdc-booking-methods label {
	align-items: center;
	border: 1px solid var(--sdc-color-border);
	border-radius: 8px;
	cursor: pointer;
	display: flex;
	gap: 7px;
	padding: 9px 11px;
}

.sdc-booking-methods label.is-unavailable {
	cursor: not-allowed;
	opacity: .45;
}

.sdc-booking-method-summary {
	background: #f7f7f7;
	border-radius: 8px;
	font-weight: 700;
	margin: 0;
	padding: 10px 12px;
}

.sdc-package-grid,
.sdc-credit-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 22px;
}

.sdc-package-card,
.sdc-credit-card {
	background: #fff;
	border: 1px solid var(--sdc-color-border);
	border-radius: 14px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 22px;
}

.sdc-package-card h3,
.sdc-credit-card h3 {
	margin: 5px 0;
}

.sdc-package-credit-count,
.sdc-credit-balance {
	font-size: 1.7rem;
	font-weight: 800;
	line-height: 1;
}

.sdc-package-price {
	font-size: 1.15rem;
	font-weight: 700;
}

.sdc-package-meta {
	color: var(--sdc-color-muted);
	margin: 0;
	padding-left: 18px;
}

.sdc-package-purchase-form {
	display: grid;
	gap: 10px;
	margin-top: auto;
}

.sdc-package-purchase-form select,
.sdc-package-participant-field select {
	max-width: 100%;
	width: 100%;
}

.sdc-credit-card.is-expired,
.sdc-credit-card.is-revoked {
	opacity: .62;
}

.sdc-credit-card > div:first-child {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.sdc-credit-meta {
	color: var(--sdc-color-muted);
	font-size: .85rem;
	margin-top: auto;
}

@media (max-width: 900px) {
	.sdc-package-grid,
	.sdc-credit-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.sdc-package-grid,
	.sdc-credit-grid {
		grid-template-columns: 1fr;
	}

	.sdc-booking-methods {
		min-width: 0;
		width: 100%;
	}
}

/* Phase 6 waitlist */
.sdc-waitlist-join { gap: .75rem; }
.sdc-waitlist-join-form,
.sdc-waitlist-accept-form { display: grid; gap: .75rem; }
.sdc-waitlist-join-form label,
.sdc-waitlist-accept-form label { display: grid; gap: .35rem; font-weight: 600; }
.sdc-waitlist-join-form select,
.sdc-waitlist-accept-form select { width: 100%; min-height: 42px; }
.sdc-waitlist-offer-message { padding: .75rem 1rem; border: 1px solid currentColor; border-radius: 8px; }
.sdc-waitlist-card .sdc-account-card-actions { display: grid; gap: .75rem; min-width: min(100%, 240px); }
.sdc-status-offered { font-weight: 700; }

/* Phase 7 waiver/signature customer surface. */
.sdc-waiver-cards {
	display: grid;
	gap: 1rem;
}

.sdc-waiver-card {
	display: grid;
	gap: 1rem;
}

.sdc-waiver-content {
	background: rgba(0, 0, 0, .025);
	border: 1px solid rgba(0, 0, 0, .08);
	border-radius: 8px;
	max-height: 320px;
	overflow: auto;
	padding: 1rem;
}

.sdc-waiver-sign-form {
	display: grid;
	gap: .8rem;
}

.sdc-waiver-sign-form p,
.sdc-waiver-sign-form label {
	margin: 0;
}

.sdc-waiver-sign-form label {
	display: grid;
	gap: .35rem;
}

.sdc-waiver-sign-form input[type="text"] {
	max-width: 520px;
	width: 100%;
}

/* v1.8.18: AJAX feedback for the existing WooCommerce My Account screens. */
.woocommerce-account .sdc-account-section.is-sdc-loading,
.woocommerce-account .woocommerce-MyAccount-content.is-sdc-loading,
.woocommerce-account form.is-sdc-loading {
	opacity: .58;
	pointer-events: none;
	position: relative;
}

.woocommerce-account .sdc-account-section.is-sdc-loading::after,
.woocommerce-account .woocommerce-MyAccount-content.is-sdc-loading::after {
	animation: sdc-account-spin .75s linear infinite;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	content: "";
	height: 20px;
	position: absolute;
	right: 16px;
	top: 16px;
	width: 20px;
}

.woocommerce-account .sdc-ajax-notice {
	margin-bottom: 1rem;
}

.woocommerce-account .sdc-account-heading [data-sdc-refresh-panel] {
	white-space: nowrap;
}

.woocommerce-account .sdc-cancellation-note {
	margin-top: 1rem;
}

@keyframes sdc-account-spin {
	to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
	.woocommerce-account .sdc-account-section.is-sdc-loading::after,
.woocommerce-account .woocommerce-MyAccount-content.is-sdc-loading::after {
		animation: none;
	}
}

/* v1.8.19: WooCommerce My Account visual refinement.
 * Presentation only: preserves existing endpoints, forms, AJAX actions and domain behavior.
 */
.woocommerce-account .woocommerce {
	align-items: start;
	display: grid;
	gap: clamp(24px, 3vw, 42px);
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	margin: 0 auto;
	max-width: 1440px;
	width: 100%;
}

.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after {
	display: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	box-sizing: border-box;
	float: none !important;
	margin: 0 !important;
	min-width: 0;
	width: 100% !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	background: #121212;
	border: 1px solid rgba(255, 255, 255, .06);
	border-radius: 20px;
	overflow: hidden;
	padding: 10px 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	border: 0;
	list-style: none;
	margin: 0;
	padding: 0 10px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li::before,
.woocommerce-account .woocommerce-MyAccount-navigation li::after {
	display: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	align-items: center;
	border-radius: 12px;
	box-sizing: border-box;
	color: #fff;
	display: flex;
	font: inherit;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	min-height: 50px;
	padding: 13px 15px;
	text-decoration: none;
	transition: background-color .18s ease, color .18s ease, transform .18s ease;
	width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-navigation li:not(.is-active) a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation li:not(.is-active) a:focus-visible {
	background: rgba(255, 255, 255, .08);
	color: #fff;
	transform: translateX(2px);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: #e62b4f;
	color: #fff;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
	outline: 2px solid #fff;
	outline-offset: -3px;
}

.woocommerce-account .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid #ececec;
	border-radius: 20px;
	box-shadow: 0 12px 34px rgba(0, 0, 0, .045);
	overflow: hidden;
	padding: clamp(22px, 3vw, 40px);
}

.woocommerce-account .woocommerce-MyAccount-content > :first-child,
.woocommerce-account .sdc-account-section > :first-child {
	margin-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-content > :last-child,
.woocommerce-account .sdc-account-section > :last-child {
	margin-bottom: 0;
}

.woocommerce-account .sdc-component,
.woocommerce-account .sdc-account-section {
	--sdc-color-action: #e62b4f;
	--sdc-color-border: #e7e7e7;
	--sdc-color-muted: #656565;
	--sdc-color-text: #121212;
	min-width: 0;
}

.woocommerce-account .sdc-account-heading {
	align-items: flex-end;
	border-bottom: 1px solid #ededed;
	margin-bottom: 22px;
	padding-bottom: 18px;
}

.woocommerce-account .sdc-account-heading h2,
.woocommerce-account .sdc-booking-detail h2 {
	font-size: clamp(1.75rem, 3vw, 2.45rem);
	letter-spacing: -.025em;
	line-height: 1.05;
}

.woocommerce-account .sdc-kicker {
	font-size: .7rem;
	letter-spacing: .12em;
}

.woocommerce-account .sdc-button {
	border-radius: 7px;
	box-shadow: none;
	min-height: 44px;
	padding: 10px 18px;
	text-decoration: none;
}

.woocommerce-account .sdc-button:hover,
.woocommerce-account .sdc-button:focus-visible {
	background: #c92042;
	border-color: #c92042;
}

.woocommerce-account .sdc-button-secondary {
	background: #fff;
	border-color: #d9d9d9;
	color: #151515;
}

.woocommerce-account .sdc-button-secondary:hover,
.woocommerce-account .sdc-button-secondary:focus-visible {
	background: #f6f6f6;
	border-color: #cfcfcf;
	color: #151515;
}

.woocommerce-account .sdc-empty-state,
.woocommerce-account .sdc-customer-dashboard {
	background: #fafafa;
	border-color: #e8e8e8;
	border-radius: 14px;
	padding: clamp(24px, 4vw, 38px);
}

.woocommerce-account .sdc-empty-state h2,
.woocommerce-account .sdc-empty-state h3,
.woocommerce-account .sdc-customer-dashboard h2 {
	letter-spacing: -.02em;
	margin-top: 0;
}

.woocommerce-account .sdc-account-filter {
	align-items: end;
	background: #fafafa;
	border: 1px solid #e9e9e9;
	border-radius: 12px;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(170px, 230px) auto;
	justify-content: start;
	margin: 0 0 22px;
	padding: 14px;
}

.woocommerce-account .sdc-account-filter label {
	margin: 0;
}

.woocommerce-account .sdc-account-filter select,
.woocommerce-account .sdc-account-section input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
.woocommerce-account .sdc-account-section textarea,
.woocommerce-account .sdc-booking-form select {
	border: 1px solid #dcdcdc;
	border-radius: 8px;
	box-shadow: none;
	min-height: 44px;
	outline: 0;
	transition: border-color .18s ease, box-shadow .18s ease;
}

.woocommerce-account .sdc-account-filter select:focus,
.woocommerce-account .sdc-account-section input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):focus,
.woocommerce-account .sdc-account-section select:focus,
.woocommerce-account .sdc-account-section textarea:focus,
.woocommerce-account .sdc-booking-form select:focus {
	border-color: #e62b4f;
	box-shadow: 0 0 0 3px rgba(230, 43, 79, .11);
}

.woocommerce-account .sdc-account-grid {
	gap: 20px;
}

.woocommerce-account .sdc-account-card,
.woocommerce-account .sdc-booking-history-card,
.woocommerce-account .sdc-account-form-card,
.woocommerce-account .sdc-booking-detail,
.woocommerce-account .sdc-credit-card,
.woocommerce-account .sdc-package-card {
	border-color: #e9e9e9;
	border-radius: 14px;
	box-shadow: 0 5px 18px rgba(0, 0, 0, .025);
}

.woocommerce-account .sdc-account-card,
.woocommerce-account .sdc-booking-history-card {
	padding: 18px 20px;
}

.woocommerce-account .sdc-booking-history {
	gap: 12px;
}

.woocommerce-account .sdc-booking-history-card h3 {
	font-size: 1rem;
	line-height: 1.3;
}

.woocommerce-account .sdc-status-pill {
	margin-bottom: 6px;
}

.woocommerce-account .sdc-booking-detail-grid {
	border: 1px solid #e9e9e9;
	border-radius: 12px;
	gap: 0;
}

.woocommerce-account .sdc-booking-detail-grid > div {
	background: #fafafa;
	border-bottom: 1px solid #ececec;
	padding: 15px 16px;
}

.woocommerce-account .sdc-booking-detail-grid > div:nth-last-child(-n + 2) {
	border-bottom: 0;
}

/* Book Classes: compact the public schedule when it is rendered inside My Account. */
.woocommerce-account .sdc-account-classes .sdc-section-heading {
	align-items: center;
	margin-bottom: 20px;
}

.woocommerce-account .sdc-account-classes .sdc-section-heading h2 {
	font-size: clamp(1.55rem, 2.5vw, 2.05rem);
}

.woocommerce-account .sdc-account-classes .sdc-result-count {
	background: #121212;
	font-size: .7rem;
	padding: 7px 10px;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-filters {
	background: #fafafa;
	border-color: #e9e9e9;
	border-radius: 14px;
	gap: 12px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 22px;
	padding: 18px;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-filters input,
.woocommerce-account .sdc-account-classes .sdc-schedule-filters select {
	border-radius: 8px;
	min-width: 0;
}

.woocommerce-account .sdc-account-classes .sdc-filter-buttons {
	align-items: center;
	align-self: end;
	min-height: 44px;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-list {
	border: 0;
	display: grid;
	gap: 14px;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-card {
	align-items: center;
	background: #fff;
	border: 1px solid #e8e8e8;
	border-radius: 16px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, .025);
	gap: 22px;
	grid-template-columns: 76px minmax(190px, 1fr) minmax(245px, 320px);
	padding: 20px;
}

.woocommerce-account .sdc-account-classes .sdc-session-date {
	background: #f7f7f7;
	border-color: #dedede;
	border-radius: 10px;
	min-height: 76px;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-copy {
	min-width: 0;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-copy h3 {
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	letter-spacing: -.025em;
	line-height: 1.12;
	margin: 5px 0 12px;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-meta {
	display: grid;
	gap: 10px 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce-account .sdc-account-classes .sdc-schedule-meta span {
	min-width: 0;
	overflow-wrap: anywhere;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-action {
	align-items: stretch;
	gap: 5px;
	min-width: 0;
	text-align: left;
	width: 100%;
}

.woocommerce-account .sdc-account-classes .sdc-schedule-action > .sdc-availability,
.woocommerce-account .sdc-account-classes .sdc-schedule-action > small {
	align-self: flex-end;
}

.woocommerce-account .sdc-account-classes .sdc-booking-button,
.woocommerce-account .sdc-account-classes .sdc-booking-form,
.woocommerce-account .sdc-account-classes .sdc-booking-methods,
.woocommerce-account .sdc-account-classes .sdc-booking-method-summary {
	max-width: 100%;
	min-width: 0;
	width: 100%;
}

.woocommerce-account .sdc-account-classes .sdc-booking-form,
.woocommerce-account .sdc-account-classes .sdc-booking-button.is-compact .sdc-booking-form {
	align-items: stretch;
	display: grid;
	gap: 9px;
	grid-template-columns: minmax(0, 1fr);
	justify-content: stretch;
	margin-top: 9px;
}

.woocommerce-account .sdc-account-classes .sdc-booking-form .sdc-booking-participant-label {
	margin: 0;
	width: 100%;
}

.woocommerce-account .sdc-account-classes .sdc-booking-form select {
	min-width: 0;
	width: 100%;
}

.woocommerce-account .sdc-account-classes .sdc-booking-method-summary {
	background: #f7f7f7;
	border: 1px solid #ededed;
	border-radius: 8px;
	font-size: .9rem;
	line-height: 1.35;
	margin: 0;
	padding: 10px 12px;
	text-align: right;
}

.woocommerce-account .sdc-account-classes .sdc-booking-methods {
	gap: 7px;
}

.woocommerce-account .sdc-account-classes .sdc-booking-methods label {
	background: #fff;
	border-color: #e2e2e2;
	border-radius: 8px;
	font-size: .88rem;
	line-height: 1.35;
	padding: 9px 10px;
}

.woocommerce-account .sdc-account-classes .sdc-booking-form .sdc-button {
	justify-self: stretch;
	margin: 2px 0 0;
	width: 100%;
}

.woocommerce-account .sdc-credit-grid,
.woocommerce-account .sdc-package-grid {
	gap: 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce-account .sdc-credit-card,
.woocommerce-account .sdc-package-card {
	padding: 20px;
}

.woocommerce-account .sdc-waiver-content {
	background: #fafafa;
	border-color: #e8e8e8;
}

/* Prevent long URLs, locations, labels or translated strings from widening the account column. */
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .sdc-account-section,
.woocommerce-account .sdc-account-card,
.woocommerce-account .sdc-booking-history-card,
.woocommerce-account .sdc-schedule-card,
.woocommerce-account .sdc-schedule-copy,
.woocommerce-account .sdc-schedule-action {
	overflow-wrap: anywhere;
}


/* v1.8.20: complete customer-facing My Account coverage. */
.woocommerce-account .sdc-account-dashboard-summary {
	background: #fff;
	border: 1px solid #e9e9e9;
	border-radius: 16px;
	margin-top: 26px;
	padding: 22px;
}

.woocommerce-account .sdc-account-dashboard-summary .sdc-account-heading {
	margin-bottom: 8px;
}

.woocommerce-account .sdc-dashboard-link-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 18px;
}

.woocommerce-account .sdc-dashboard-link {
	align-items: center;
	background: #fafafa;
	border: 1px solid #e8e8e8;
	border-radius: 10px;
	color: #171717;
	display: flex;
	font-weight: 700;
	gap: 12px;
	justify-content: space-between;
	min-height: 50px;
	padding: 12px 14px;
	text-decoration: none;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.woocommerce-account .sdc-dashboard-link:hover,
.woocommerce-account .sdc-dashboard-link:focus-visible {
	border-color: #d8d8d8;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .05);
	color: #171717;
	transform: translateY(-1px);
}

.woocommerce-account .sdc-booking-filter {
	grid-template-columns: repeat(2, minmax(160px, 1fr)) auto;
}

/* v1.8.20: customer profile + read-only attendance inside WooCommerce My Account. */
.woocommerce-account .sdc-profile-intro {
	align-items: center;
	background: #fafafa;
	border: 1px solid #e9e9e9;
	border-radius: 14px;
	display: flex;
	gap: 18px;
	margin: 0 0 22px;
	padding: 18px 20px;
}

.woocommerce-account .sdc-profile-avatar,
.woocommerce-account .sdc-profile-avatar img {
	border-radius: 999px;
	flex: 0 0 auto;
}

.woocommerce-account .sdc-profile-intro h3,
.woocommerce-account .sdc-profile-intro p {
	margin: 0;
}

.woocommerce-account .sdc-profile-intro h3 {
	font-size: 1.2rem;
	margin-bottom: 3px;
}

.woocommerce-account .sdc-profile-intro .sdc-muted {
	margin-top: 7px;
}

.woocommerce-account .sdc-profile-form {
	background: #fff;
	border: 1px solid #e9e9e9;
	border-radius: 14px;
	padding: 20px;
}

.woocommerce-account .sdc-profile-fields,
.woocommerce-account .sdc-profile-security .sdc-form-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce-account .sdc-profile-fields label:nth-child(3) {
	grid-column: 1 / -1;
}

.woocommerce-account .sdc-profile-security {
	border: 0;
	border-top: 1px solid #ececec;
	margin: 22px 0 18px;
	padding: 20px 0 0;
}

.woocommerce-account .sdc-profile-security legend {
	font-size: 1rem;
	font-weight: 800;
	padding: 0 8px 0 0;
}

.woocommerce-account .sdc-account-attendance .sdc-account-filter {
	grid-template-columns: minmax(170px, 1fr) minmax(150px, 220px) auto;
}

.woocommerce-account .sdc-attendance-summary {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin: 18px 0 22px;
}

.woocommerce-account .sdc-attendance-summary-card {
	background: #fafafa;
	border: 1px solid #e9e9e9;
	border-radius: 12px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	padding: 14px;
}

.woocommerce-account .sdc-attendance-summary-card strong {
	font-size: 1.45rem;
	line-height: 1;
}

.woocommerce-account .sdc-attendance-summary-card span {
	color: #666;
	font-size: .78rem;
	font-weight: 700;
}

.woocommerce-account .sdc-attendance-history {
	display: grid;
	gap: 12px;
}

.woocommerce-account .sdc-attendance-card {
	align-items: center;
	background: #fff;
	border: 1px solid #e9e9e9;
	border-radius: 14px;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	padding: 18px 20px;
}

.woocommerce-account .sdc-attendance-card h3,
.woocommerce-account .sdc-attendance-card p {
	margin: 0;
}

.woocommerce-account .sdc-attendance-card h3 {
	font-size: 1rem;
	line-height: 1.3;
	margin: 6px 0 3px;
}

.woocommerce-account .sdc-attendance-checkin {
	background: #fafafa;
	border: 1px solid #ececec;
	border-radius: 10px;
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	gap: 2px;
	min-width: 96px;
	padding: 10px 12px;
	text-align: right;
}

.woocommerce-account .sdc-attendance-checkin small {
	color: #777;
	font-size: .68rem;
	font-weight: 700;
	text-transform: uppercase;
}

.sdc-status-pill.is-present {
	background: #e6f5ec;
	color: #116b3b;
}

.sdc-status-pill.is-late,
.sdc-status-pill.is-excused,
.sdc-status-pill.is-unmarked {
	background: #fff4d8;
	color: #825c00;
}

.sdc-status-pill.is-no_show {
	background: #f9e7e7;
	color: #8b1f1f;
}

@media (max-width: 1180px) {
	.woocommerce-account .woocommerce {
		gap: 24px;
		grid-template-columns: minmax(210px, 240px) minmax(0, 1fr);
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-filters {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-card {
		align-items: start;
		grid-template-columns: 70px minmax(0, 1fr);
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-action {
		grid-column: 1 / -1;
		padding-left: 92px;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-action > .sdc-availability,
	.woocommerce-account .sdc-account-classes .sdc-schedule-action > small {
		align-self: flex-start;
	}

	.woocommerce-account .sdc-account-classes .sdc-booking-form,
	.woocommerce-account .sdc-account-classes .sdc-booking-button.is-compact .sdc-booking-form {
		grid-template-columns: minmax(200px, 1fr) minmax(180px, .72fr) auto;
		align-items: end;
	}

	.woocommerce-account .sdc-account-classes .sdc-booking-form .sdc-booking-participant-label {
		grid-column: 1 / -1;
	}

	.woocommerce-account .sdc-account-classes .sdc-booking-form .sdc-button {
		min-width: 120px;
		width: auto;
	}

	.woocommerce-account .sdc-attendance-summary {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.woocommerce-account .sdc-dashboard-link-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

	.woocommerce-account .woocommerce-MyAccount-navigation {
		border-radius: 14px;
		padding: 8px;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: flex;
		gap: 6px;
		overflow-x: auto;
		overflow-y: hidden;
		padding-bottom: 2px;
		scrollbar-width: thin;
		-webkit-overflow-scrolling: touch;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation li {
		flex: 0 0 auto;
		padding: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation a {
		min-height: 42px;
		padding: 10px 14px;
		white-space: nowrap;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation li:not(.is-active) a:hover,
	.woocommerce-account .woocommerce-MyAccount-navigation li:not(.is-active) a:focus-visible {
		transform: none;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		border-radius: 16px;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-action {
		padding-left: 0;
	}

	.woocommerce-account .sdc-account-classes .sdc-booking-form,
	.woocommerce-account .sdc-account-classes .sdc-booking-button.is-compact .sdc-booking-form {
		grid-template-columns: minmax(0, 1fr) minmax(180px, .65fr) auto;
	}
}

@media (max-width: 700px) {
	.woocommerce-account .sdc-booking-filter {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		box-shadow: none;
		padding: 20px 16px;
	}

	.woocommerce-account .sdc-account-heading {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
	}

	.woocommerce-account .sdc-account-heading .sdc-button,
	.woocommerce-account .sdc-account-heading [data-sdc-refresh-panel] {
		width: 100%;
	}

	.woocommerce-account .sdc-account-filter {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .sdc-account-attendance .sdc-account-filter,
	.woocommerce-account .sdc-profile-fields,
	.woocommerce-account .sdc-profile-security .sdc-form-grid {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .sdc-profile-fields label:nth-child(3) {
		grid-column: auto;
	}

	.woocommerce-account .sdc-attendance-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce-account .sdc-attendance-card {
		align-items: stretch;
		flex-direction: column;
	}

	.woocommerce-account .sdc-attendance-checkin {
		align-items: center;
		flex-direction: row;
		justify-content: space-between;
		text-align: left;
	}

	.woocommerce-account .sdc-account-filter .sdc-button {
		width: 100%;
	}

	.woocommerce-account .sdc-account-classes .sdc-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-filters {
		grid-template-columns: 1fr;
		padding: 14px;
	}

	.woocommerce-account .sdc-account-classes .sdc-filter-buttons {
		align-items: stretch;
		flex-direction: column;
	}

	.woocommerce-account .sdc-account-classes .sdc-filter-buttons .sdc-button,
	.woocommerce-account .sdc-account-classes .sdc-filter-reset {
		text-align: center;
		width: 100%;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-card {
		gap: 14px;
		grid-template-columns: 62px minmax(0, 1fr);
		padding: 16px;
	}

	.woocommerce-account .sdc-account-classes .sdc-session-date {
		min-height: 64px;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-copy h3 {
		font-size: 1.25rem;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-meta {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-action {
		grid-column: 1 / -1;
	}

	.woocommerce-account .sdc-account-classes .sdc-booking-form,
	.woocommerce-account .sdc-account-classes .sdc-booking-button.is-compact .sdc-booking-form {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .sdc-account-classes .sdc-booking-form .sdc-booking-participant-label {
		grid-column: auto;
	}

	.woocommerce-account .sdc-account-classes .sdc-booking-form .sdc-button {
		width: 100%;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-action > .sdc-availability,
	.woocommerce-account .sdc-account-classes .sdc-schedule-action > small {
		align-self: flex-start;
	}

	.woocommerce-account .sdc-credit-grid,
	.woocommerce-account .sdc-package-grid {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .sdc-account-card,
	.woocommerce-account .sdc-booking-history-card {
		align-items: stretch;
		flex-direction: column;
	}

	.woocommerce-account .sdc-booking-history-card .sdc-button,
	.woocommerce-account .sdc-account-card .sdc-button {
		width: 100%;
	}

	.woocommerce-account .sdc-booking-detail-grid > div:nth-last-child(-n + 2) {
		border-bottom: 1px solid #ececec;
	}

	.woocommerce-account .sdc-booking-detail-grid > div:last-child {
		border-bottom: 0;
	}
}

@media (max-width: 480px) {
	.woocommerce-account .sdc-account-dashboard-summary {
		border-radius: 12px;
		padding: 16px;
	}

	.woocommerce-account .sdc-dashboard-link-grid {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .woocommerce {
		gap: 16px;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		border-radius: 12px;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation a {
		font-size: 14px;
		min-height: 40px;
		padding: 9px 12px;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		border-left: 0;
		border-radius: 0;
		border-right: 0;
		padding-left: 12px;
		padding-right: 12px;
	}

	.woocommerce-account .sdc-account-heading h2,
	.woocommerce-account .sdc-booking-detail h2 {
		font-size: 1.75rem;
	}

	.woocommerce-account .sdc-profile-intro {
		align-items: flex-start;
		padding: 15px;
	}

	.woocommerce-account .sdc-profile-avatar img {
		height: 58px;
		width: 58px;
	}

	.woocommerce-account .sdc-profile-form {
		padding: 16px;
	}

	.woocommerce-account .sdc-attendance-summary {
		grid-template-columns: 1fr 1fr;
	}

	.woocommerce-account .sdc-account-classes .sdc-schedule-card {
		grid-template-columns: 56px minmax(0, 1fr);
		padding: 14px;
	}

	.woocommerce-account .sdc-account-classes .sdc-session-date {
		min-height: 58px;
		padding: 5px;
	}

	.woocommerce-account .sdc-account-classes .sdc-session-date strong {
		font-size: 1.35rem;
	}
}


/* v1.8.21: replace WooCommerce's stock Dashboard intro with the Sol Dance customer dashboard. */
body.sdc-my-account-dashboard .woocommerce-MyAccount-content > p {
	display: none !important;
}

.woocommerce-account .sdc-account-dashboard {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

.woocommerce-account .sdc-dashboard-heading {
	align-items: flex-start;
	margin-bottom: 22px;
}

.woocommerce-account .sdc-dashboard-heading p {
	color: #6b6b6b;
	margin: 7px 0 0;
	max-width: 680px;
}

.woocommerce-account .sdc-dashboard-kpis {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 18px;
}

.woocommerce-account .sdc-dashboard-kpi {
	background: #fff;
	border: 1px solid #e9e9e9;
	border-radius: 14px;
	color: #171717;
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
	padding: 18px;
	text-decoration: none;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.woocommerce-account .sdc-dashboard-kpi:hover,
.woocommerce-account .sdc-dashboard-kpi:focus-visible {
	border-color: #df2b4f;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .06);
	color: #171717;
	transform: translateY(-2px);
}

.woocommerce-account .sdc-dashboard-kpi > span {
	color: #686868;
	font-size: .76rem;
	font-weight: 800;
	letter-spacing: .045em;
	text-transform: uppercase;
}

.woocommerce-account .sdc-dashboard-kpi strong {
	font-size: 2rem;
	line-height: 1.05;
}

.woocommerce-account .sdc-dashboard-kpi small {
	color: #df2b4f;
	font-weight: 700;
	margin-top: 2px;
}

.woocommerce-account .sdc-dashboard-attention {
	align-items: center;
	background: #fff8f9;
	border: 1px solid #f2cbd3;
	border-radius: 14px;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin: 0 0 18px;
	padding: 15px 18px;
}

.woocommerce-account .sdc-dashboard-attention strong,
.woocommerce-account .sdc-dashboard-attention p {
	margin: 0;
}

.woocommerce-account .sdc-dashboard-attention p {
	color: #666;
	margin-top: 3px;
}

.woocommerce-account .sdc-dashboard-main-grid,
.woocommerce-account .sdc-dashboard-secondary-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(0, 1.55fr) minmax(260px, .85fr);
	margin-bottom: 16px;
}

.woocommerce-account .sdc-dashboard-secondary-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce-account .sdc-dashboard-panel,
.woocommerce-account .sdc-dashboard-quick-actions {
	background: #fff;
	border: 1px solid #e9e9e9;
	border-radius: 16px;
	min-width: 0;
	padding: 20px;
}

.woocommerce-account .sdc-dashboard-panel-heading {
	align-items: flex-start;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.woocommerce-account .sdc-dashboard-panel-heading h3 {
	font-size: 1.25rem;
	line-height: 1.2;
	margin: 2px 0 0;
}

.woocommerce-account .sdc-dashboard-panel-heading > a {
	color: #df2b4f;
	font-size: .84rem;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

.woocommerce-account .sdc-dashboard-booking-list,
.woocommerce-account .sdc-dashboard-memberships {
	display: grid;
	gap: 10px;
}

.woocommerce-account .sdc-dashboard-booking {
	align-items: center;
	background: #fafafa;
	border: 1px solid #ececec;
	border-radius: 12px;
	display: grid;
	gap: 12px;
	grid-template-columns: 58px minmax(0, 1fr) 34px;
	padding: 12px;
}

.woocommerce-account .sdc-dashboard-booking-date {
	align-items: center;
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 58px;
	padding: 6px;
	text-align: center;
}

.woocommerce-account .sdc-dashboard-booking-date span {
	font-size: .68rem;
	font-weight: 800;
	text-transform: uppercase;
}

.woocommerce-account .sdc-dashboard-booking-date strong {
	font-size: 1.35rem;
	line-height: 1;
}

.woocommerce-account .sdc-dashboard-booking-copy {
	min-width: 0;
}

.woocommerce-account .sdc-dashboard-booking-copy h4,
.woocommerce-account .sdc-dashboard-booking-copy p,
.woocommerce-account .sdc-dashboard-booking-copy small {
	margin: 0;
}

.woocommerce-account .sdc-dashboard-booking-copy h4 {
	font-size: 1rem;
	margin: 5px 0 3px;
}

.woocommerce-account .sdc-dashboard-booking-copy p,
.woocommerce-account .sdc-dashboard-booking-copy small {
	color: #666;
	font-size: .82rem;
}

.woocommerce-account .sdc-dashboard-booking-link {
	align-items: center;
	background: #171717;
	border-radius: 999px;
	color: #fff;
	display: flex;
	height: 32px;
	justify-content: center;
	text-decoration: none;
	width: 32px;
}

.woocommerce-account .sdc-dashboard-memberships article {
	background: #fafafa;
	border: 1px solid #ececec;
	border-radius: 12px;
	padding: 14px;
}

.woocommerce-account .sdc-dashboard-memberships h4,
.woocommerce-account .sdc-dashboard-memberships p,
.woocommerce-account .sdc-dashboard-memberships small {
	margin: 0;
}

.woocommerce-account .sdc-dashboard-memberships h4 {
	font-size: 1rem;
	margin: 8px 0 4px;
}

.woocommerce-account .sdc-dashboard-memberships p,
.woocommerce-account .sdc-dashboard-memberships small {
	color: #666;
	font-size: .82rem;
}

.woocommerce-account .sdc-dashboard-attendance-stats {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.woocommerce-account .sdc-dashboard-attendance-stats > div {
	background: #fafafa;
	border: 1px solid #ececec;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 12px;
}

.woocommerce-account .sdc-dashboard-attendance-stats strong {
	font-size: 1.35rem;
	line-height: 1;
}

.woocommerce-account .sdc-dashboard-attendance-stats span {
	color: #666;
	font-size: .72rem;
	font-weight: 700;
}

.woocommerce-account .sdc-dashboard-credit-total {
	align-items: baseline;
	display: flex;
	gap: 9px;
	margin: 4px 0 8px;
}

.woocommerce-account .sdc-dashboard-credit-total strong {
	font-size: 2.7rem;
	line-height: 1;
}

.woocommerce-account .sdc-dashboard-credit-total span,
.woocommerce-account .sdc-dashboard-credit-panel > p {
	color: #666;
}

.woocommerce-account .sdc-dashboard-credit-panel > p {
	font-size: .86rem;
	margin: 0;
}

.woocommerce-account .sdc-dashboard-empty {
	background: #fafafa;
	border: 1px dashed #dedede;
	border-radius: 12px;
	padding: 18px;
}

.woocommerce-account .sdc-dashboard-empty.is-compact {
	padding: 16px;
}

.woocommerce-account .sdc-dashboard-empty strong,
.woocommerce-account .sdc-dashboard-empty p {
	margin: 0;
}

.woocommerce-account .sdc-dashboard-empty p {
	color: #666;
	margin: 5px 0 12px;
}

.woocommerce-account .sdc-dashboard-quick-actions {
	margin-top: 0;
}

.woocommerce-account .sdc-dashboard-action-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.woocommerce-account .sdc-dashboard-action-grid > a {
	background: #fafafa;
	border: 1px solid #e9e9e9;
	border-radius: 12px;
	color: #171717;
	display: grid;
	gap: 3px;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: 14px;
	text-decoration: none;
	transition: border-color .18s ease, transform .18s ease;
}

.woocommerce-account .sdc-dashboard-action-grid > a:hover,
.woocommerce-account .sdc-dashboard-action-grid > a:focus-visible {
	border-color: #df2b4f;
	color: #171717;
	transform: translateY(-1px);
}

.woocommerce-account .sdc-dashboard-action-grid strong,
.woocommerce-account .sdc-dashboard-action-grid span {
	min-width: 0;
}

.woocommerce-account .sdc-dashboard-action-grid strong {
	font-size: .9rem;
}

.woocommerce-account .sdc-dashboard-action-grid span {
	color: #6a6a6a;
	font-size: .76rem;
	grid-column: 1 / 2;
}

.woocommerce-account .sdc-dashboard-action-grid i {
	font-style: normal;
	grid-column: 2;
	grid-row: 1 / span 2;
	place-self: center;
}

@media (max-width: 1100px) {
	.woocommerce-account .sdc-dashboard-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce-account .sdc-dashboard-main-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.woocommerce-account .sdc-dashboard-secondary-grid,
	.woocommerce-account .sdc-dashboard-action-grid {
		grid-template-columns: 1fr 1fr;
	}

	.woocommerce-account .sdc-dashboard-attention,
	.woocommerce-account .sdc-dashboard-heading {
		align-items: stretch;
		flex-direction: column;
	}

	.woocommerce-account .sdc-dashboard-heading .sdc-button,
	.woocommerce-account .sdc-dashboard-attention .sdc-button {
		width: 100%;
	}
}

@media (max-width: 520px) {
	.woocommerce-account .sdc-dashboard-kpis,
	.woocommerce-account .sdc-dashboard-secondary-grid,
	.woocommerce-account .sdc-dashboard-action-grid {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .sdc-dashboard-panel,
	.woocommerce-account .sdc-dashboard-quick-actions {
		border-radius: 12px;
		padding: 16px;
	}

	.woocommerce-account .sdc-dashboard-booking {
		grid-template-columns: 52px minmax(0, 1fr);
	}

	.woocommerce-account .sdc-dashboard-booking-link {
		grid-column: 1 / -1;
		height: 36px;
		width: 100%;
	}

	.woocommerce-account .sdc-dashboard-attendance-stats {
		grid-template-columns: 1fr 1fr;
	}
}

/* v1.8.22: My Account field rhythm, filter alignment and dashboard CTA polish. */
.woocommerce-account .sdc-dashboard-empty > a.sdc-button:not(.sdc-button-secondary),
.woocommerce-account .sdc-dashboard-empty > a.sdc-button:not(.sdc-button-secondary):visited {
	background: #e62b4f !important;
	border-color: #e62b4f !important;
	color: #fff !important;
}

.woocommerce-account .sdc-dashboard-empty > a.sdc-button:not(.sdc-button-secondary):hover,
.woocommerce-account .sdc-dashboard-empty > a.sdc-button:not(.sdc-button-secondary):focus-visible {
	background: #c92042 !important;
	border-color: #c92042 !important;
	color: #fff !important;
}

/* Keep customer filters on one clean baseline regardless of theme form-control defaults. */
.woocommerce-account .sdc-booking-filter,
.woocommerce-account .sdc-account-attendance .sdc-attendance-filter {
	align-items: end;
	column-gap: 12px;
	row-gap: 10px;
}

.woocommerce-account .sdc-booking-filter {
	grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(96px, auto);
}

.woocommerce-account .sdc-account-attendance .sdc-attendance-filter {
	grid-template-columns: minmax(0, 1fr) minmax(0, .72fr) minmax(96px, auto);
}

.woocommerce-account .sdc-account-filter label {
	align-self: stretch;
	display: flex;
	flex-direction: column;
	gap: 8px;
	justify-content: flex-end;
	min-width: 0;
}

.woocommerce-account .sdc-account-filter select {
	display: block;
	height: 50px !important;
	line-height: normal;
	margin: 0 !important;
	min-height: 50px !important;
	padding-bottom: 0;
	padding-top: 0;
	width: 100%;
}

.woocommerce-account .sdc-account-filter .sdc-button {
	align-self: end;
	height: 50px;
	margin: 0 !important;
	min-height: 50px;
	padding-bottom: 0;
	padding-top: 0;
	white-space: nowrap;
}

/* Consistent label-to-control spacing throughout customer-owned My Account forms. */
.woocommerce-account .sdc-account-section .sdc-form-grid label,
.woocommerce-account .sdc-account-section .sdc-cancel-booking-form label,
.woocommerce-account .sdc-account-section .sdc-waitlist-accept-form label {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
}

.woocommerce-account .sdc-account-section .sdc-form-grid label > input,
.woocommerce-account .sdc-account-section .sdc-form-grid label > select,
.woocommerce-account .sdc-account-section .sdc-form-grid label > textarea,
.woocommerce-account .sdc-account-section .sdc-cancel-booking-form label > input,
.woocommerce-account .sdc-account-section .sdc-cancel-booking-form label > select,
.woocommerce-account .sdc-account-section .sdc-cancel-booking-form label > textarea,
.woocommerce-account .sdc-account-section .sdc-waitlist-accept-form label > select {
	margin: 0 !important;
	width: 100%;
}

.woocommerce-account .sdc-account-section .sdc-waiver-sign-form p > label > input:not([type="checkbox"]):not([type="radio"]) {
	display: block;
	margin-top: 8px !important;
	width: 100%;
}

.woocommerce-account .sdc-account-section .sdc-waiver-sign-form p > label > input[type="checkbox"],
.woocommerce-account .sdc-account-section .sdc-waiver-sign-form p > label > input[type="radio"] {
	margin-right: 7px;
}

/* Prevent theme rules from adding inconsistent spacing around customer controls. */
.woocommerce-account .sdc-account-section label > input:not([type="checkbox"]):not([type="radio"]),
.woocommerce-account .sdc-account-section label > select,
.woocommerce-account .sdc-account-section label > textarea {
	box-sizing: border-box;
}

@media (max-width: 900px) {
	.woocommerce-account .sdc-booking-filter,
	.woocommerce-account .sdc-account-attendance .sdc-attendance-filter {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce-account .sdc-booking-filter .sdc-button,
	.woocommerce-account .sdc-account-attendance .sdc-attendance-filter .sdc-button {
		grid-column: 1 / -1;
		justify-self: start;
		min-width: 120px;
	}
}

@media (max-width: 700px) {
	.woocommerce-account .sdc-booking-filter,
	.woocommerce-account .sdc-account-attendance .sdc-attendance-filter {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .sdc-booking-filter .sdc-button,
	.woocommerce-account .sdc-account-attendance .sdc-attendance-filter .sdc-button {
		grid-column: auto;
		justify-self: stretch;
		width: 100%;
	}

	.woocommerce-account .sdc-account-filter select,
	.woocommerce-account .sdc-account-filter .sdc-button {
		height: 48px;
		min-height: 48px !important;
	}
}

/* v1.8.23: compatibility layer for the site's pre-existing My Account CSS.
 *
 * The legacy site stylesheet targets main#content.post-1692 with !important,
 * which can outrank the plugin's component-scoped rules. Keep these overrides
 * deliberately narrow: only the logged-in WooCommerce My Account page and
 * Sol Dance customer components are normalized. No public WooCommerce/shop
 * layout or non-account website section is touched.
 */
body.woocommerce-account {
	overflow-x: hidden !important;
	overflow-y: auto !important;
}

/* Restore the current two-column account shell when legacy flex rules are present. */
body.logged-in.woocommerce-account main#content.post-1692 .woocommerce {
	align-items: start !important;
	display: grid !important;
	gap: clamp(24px, 3vw, 42px) !important;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1440px !important;
	width: 100% !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation {
	flex: none !important;
	max-width: none !important;
	min-width: 0 !important;
	width: 100% !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-content {
	flex: none !important;
	max-width: none !important;
	min-width: 0 !important;
	width: 100% !important;
}

/* The legacy stylesheet globally forces all account links red and underlined on hover. */
body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation a,
body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation a:visited,
body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation a:hover,
body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation a:focus-visible {
	color: #fff !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation li.is-active a {
	background: #e62b4f !important;
	color: #fff !important;
}

/* Preserve Sol Dance button semantics despite the old generic .woocommerce a rule. */
body.logged-in.woocommerce-account main#content.post-1692 .sdc-button:not(.sdc-button-secondary):not(.sdc-button-danger),
body.logged-in.woocommerce-account main#content.post-1692 .sdc-button:not(.sdc-button-secondary):not(.sdc-button-danger):visited {
	background: #e62b4f !important;
	border-color: #e62b4f !important;
	color: #fff !important;
	text-decoration: none !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-button:not(.sdc-button-secondary):not(.sdc-button-danger):hover,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-button:not(.sdc-button-secondary):not(.sdc-button-danger):focus-visible {
	background: #c92042 !important;
	border-color: #c92042 !important;
	color: #fff !important;
	text-decoration: none !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-secondary,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-secondary:visited {
	background: #fff !important;
	border-color: #d9d9d9 !important;
	color: #151515 !important;
	text-decoration: none !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-secondary:hover,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-secondary:focus-visible {
	background: #f6f6f6 !important;
	border-color: #cfcfcf !important;
	color: #151515 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-danger,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-danger:visited {
	background: #a00 !important;
	border-color: #a00 !important;
	color: #fff !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-danger:hover,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-button-danger:focus-visible {
	background: #7a0000 !important;
	border-color: #7a0000 !important;
	color: #fff !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-action-grid > a,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-action-grid > a:visited,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-action-grid > a:hover,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-action-grid > a:focus-visible {
	color: #171717 !important;
	font-weight: 400 !important;
	text-decoration: none !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-booking-link,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-booking-link:visited,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-booking-link:hover,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-booking-link:focus-visible {
	color: #fff !important;
	text-decoration: none !important;
}

/* Legacy label rules use display:block!important and margin-bottom, which breaks
 * the current grid/flex form rhythm. Normalize only Sol Dance customer forms. */
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-filter label,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section .sdc-form-grid label,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section .sdc-cancel-booking-form label,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section .sdc-waitlist-accept-form label,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-classes .sdc-booking-form .sdc-booking-participant-label {
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
	margin: 0 !important;
	min-width: 0 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-classes .sdc-booking-methods label {
	align-items: center !important;
	display: flex !important;
	flex-direction: row !important;
	gap: 8px !important;
	margin: 0 !important;
}

/* Keep checkbox/radio acknowledgements inline instead of inheriting block-label spacing. */
body.logged-in.woocommerce-account main#content.post-1692 .sdc-waiver-sign-form p:last-of-type > label {
	align-items: flex-start !important;
	display: inline-flex !important;
	flex-direction: row !important;
	gap: 8px !important;
	margin-bottom: 0 !important;
	text-transform: none !important;
}

/* The old form CSS forces every input/select to min-height:52px!important.
 * Use one predictable control height for current Sol Dance account panels. */
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-filter select,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section select,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-classes .sdc-booking-form select {
	box-sizing: border-box !important;
	height: 50px !important;
	margin: 0 !important;
	min-height: 50px !important;
	width: 100% !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section textarea {
	box-sizing: border-box !important;
	height: auto !important;
	margin: 0 !important;
	min-height: 112px !important;
	width: 100% !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-filter .sdc-button {
	align-self: end !important;
	height: 50px !important;
	margin: 0 !important;
	min-height: 50px !important;
	padding-bottom: 0 !important;
	padding-top: 0 !important;
}

/* Prevent the legacy generic paragraph rule from inflating compact dashboard UI. */
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-dashboard p,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-dashboard small {
	line-height: 1.55 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-heading p {
	margin: 7px 0 0 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-attention p {
	margin: 3px 0 0 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-booking-copy p,
body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-memberships p {
	font-size: .82rem !important;
	margin: 0 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-credit-panel > p {
	font-size: .86rem !important;
	margin: 0 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .sdc-dashboard-empty p {
	font-size: .9rem !important;
	margin: 5px 0 12px !important;
}

@media (max-width: 1180px) {
	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce {
		gap: 24px !important;
		grid-template-columns: minmax(210px, 240px) minmax(0, 1fr) !important;
	}
}

@media (max-width: 900px) {
	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce {
		display: grid !important;
		gap: 20px !important;
		grid-template-columns: minmax(0, 1fr) !important;
		max-width: 100% !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation {
		min-width: 0 !important;
		width: 100% !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation ul {
		display: flex !important;
		gap: 6px !important;
		grid-template-columns: none !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		padding-bottom: 2px !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation li {
		flex: 0 0 auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-content {
		max-width: 100% !important;
		width: 100% !important;
	}
}

@media (max-width: 700px) {
	body.logged-in.woocommerce-account main#content.post-1692 .sdc-booking-filter,
	body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-attendance .sdc-attendance-filter {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-filter .sdc-button {
		justify-self: stretch !important;
		width: 100% !important;
	}
}

@media (max-width: 480px) {
	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-content {
		padding: 18px 12px !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce-MyAccount-navigation ul {
		display: flex !important;
		grid-template-columns: none !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-filter select,
	body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
	body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-section select,
	body.logged-in.woocommerce-account main#content.post-1692 .sdc-account-filter .sdc-button {
		height: 48px !important;
		min-height: 48px !important;
	}
}

/* v1.8.24: final legacy My Account shell specificity correction.
 * The site's historical rule uses :not(:has(#customer_login)), so the ID inside
 * :has() participates in specificity. Mirror that selector only on the logged-in
 * My Account shell so the current grid layout can reliably win without touching
 * login/register or any other WooCommerce/frontend page. */
body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) {
	align-items: start !important;
	display: grid !important;
	gap: clamp(24px, 3vw, 40px) !important;
	grid-template-columns: minmax(240px, 300px) minmax(0, 1fr) !important;
	justify-content: stretch !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1280px !important;
	width: 100% !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) > .woocommerce-MyAccount-navigation {
	align-self: start !important;
	box-sizing: border-box !important;
	flex: none !important;
	height: auto !important;
	max-height: none !important;
	max-width: 300px !important;
	min-height: 0 !important;
	min-width: 0 !important;
	position: relative !important;
	width: 100% !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) > .woocommerce-MyAccount-navigation ul {
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) > .woocommerce-MyAccount-content {
	box-sizing: border-box !important;
	flex: none !important;
	max-width: 100% !important;
	min-width: 0 !important;
	overflow: hidden !important;
	width: 100% !important;
}

body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) .sdc-account-dashboard,
body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) .sdc-account-section {
	max-width: 100% !important;
	min-width: 0 !important;
	width: 100% !important;
}

@media (max-width: 1180px) {
	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) {
		gap: 24px !important;
		grid-template-columns: minmax(220px, 250px) minmax(0, 1fr) !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) > .woocommerce-MyAccount-navigation {
		max-width: 250px !important;
	}
}

@media (max-width: 900px) {
	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) {
		gap: 20px !important;
		grid-template-columns: minmax(0, 1fr) !important;
		max-width: 100% !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) > .woocommerce-MyAccount-navigation {
		max-width: 100% !important;
		width: 100% !important;
	}

	body.logged-in.woocommerce-account main#content.post-1692 .woocommerce:not(:has(#customer_login)) > .woocommerce-MyAccount-content {
		max-width: 100% !important;
		width: 100% !important;
	}
}
