.woocommerce-account .pp-account-navigation {
	float: left;
	width: 28%;
	margin: 0 0 2rem;
}
.woocommerce-account .woocommerce-MyAccount-content {
	float: right;
	width: 68%;
	min-width: 0;
}
.pp-account-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.pp-account-navigation li {
	margin: 0 0 .25rem;
	border: 0;
}
.pp-account-navigation li a {
	display: block;
	padding: .75rem 1rem;
	border-radius: .5rem;
	text-decoration: none;
	color: var(--wp--preset--color--purple, #302244);
}
.pp-account-navigation li a:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.pp-account-navigation li.is-active a {
	background: var(--wp--preset--color--pink, #f69b99);
	color: var(--wp--preset--color--purple, #302244);
}
.pp-account-profile { margin-bottom: 1.25rem; text-align: center; }
.pp-account-profile summary { cursor: pointer; padding: .5rem; }
.pp-account-profile summary img { display: block; border-radius: 50%; margin: 0 auto .5rem; object-fit: cover; width: 96px; height: 96px; }
.pp-account-profile summary span { display: block; }
.pp-account-profile form { text-align: left; padding: .75rem 0; }
.pp-account-profile input[type=file] { display: block; width: 100%; min-width: 0; margin: .5rem 0; }
.pp-account-profile button { margin: .25rem 0; }
.woocommerce-account .pp-account-profile button,
.woocommerce-account .woocommerce-MyAccount-content .button { box-sizing: border-box; min-height: 44px; }
.woocommerce-account .pp-account-navigation > .woocommerce-message {
	background: var(--wp--preset--color--soft-pink, #fff8f8);
	/* Legacy CJT sets white notice text with !important on every frontend. */
	color: var(--wp--preset--color--deep-purple, #302244) !important;
	text-align: left;
}
.pp-account-welcome { overflow-wrap: anywhere; }
.pp-account-courses ul.course-container {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.pp-account-courses ul.course-container::before,
.pp-account-courses ul.course-container::after { display: none; }
.pp-account-courses ul.course-container > li.course {
	float: none;
	width: 100%;
	min-width: 0;
	margin: 0;
}
.pp-account-courses img.wp-post-image { box-sizing: border-box; max-width: 100%; height: auto; }
/* The old theme supplied the column floats. Native Woo styles can arrive
   before site styles in FSE; own this account-only layout explicitly. */
.woocommerce-account #customer_login {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem;
	align-items: start;
}
.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after { display: none; }
.woocommerce-account #customer_login > .col-1,
.woocommerce-account #customer_login > .col-2 { float: none; width: auto; min-width: 0; }
.woocommerce-account #customer_login input:not([type=checkbox]):not([type=hidden]) { box-sizing: border-box; max-width: 100%; }
.woocommerce-account #customer_login button { min-height: 44px; }
@media (max-width: 782px) {
	.woocommerce-account #customer_login { grid-template-columns: minmax(0, 1fr); }
	.woocommerce-account .pp-account-navigation,
	.woocommerce-account .woocommerce-MyAccount-content { float: none; width: 100%; }
	.pp-account-navigation ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: .25rem; }
	.pp-account-navigation li { margin: 0; }
	/* Woo now renders the order number as a row heading, which its generic
	   small-screen stylesheet hides along with table headings. */
	.woocommerce-account .woocommerce table.shop_table_responsive tbody th.woocommerce-orders-table__cell-order-number {
		display: block;
		text-align: right;
		font-weight: normal;
	}
	.woocommerce-account .woocommerce table.shop_table_responsive tbody th.woocommerce-orders-table__cell-order-number::before {
		content: attr(data-title) ": ";
		float: left;
		font-weight: 700;
	}
}
@media (max-width: 600px) {
	.pp-account-courses ul.course-container { grid-template-columns: minmax(0, 1fr); }
}
