/*
Theme Name: StoreCrafted
Theme URI: https://storecrafted.com
Author: StoreCrafted
Author URI: https://storecrafted.com
Description: Block theme for StoreCrafted — premium WooCommerce plugins. Converted from design-mockup with theme.json tokens and filesystem patterns.
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 8.0
Version: 0.1.13
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: storecrafted
Tags: full-site-editing, block-patterns, block-styles, e-commerce, wide-blocks, custom-colors, custom-font-sizes, editor-style, sticky-post
*/

/*
 * Minimal custom CSS — only allowlisted exceptions from the theme skill.
 * Prefer theme.json and block attributes for colour, type, spacing, radius.
 */

/* Root template stack sits flush (header / main / footer). WooCommerce wraps
 * single-product content in .woocommerce.product, which otherwise inherits the
 * theme root blockGap as margin-block-start under the header. */
.wp-site-blocks > * {
	margin-block-start: 0;
}

/* Brand lockup: Store + blue Crafted */
.sc-brand {
	display: inline-flex;
	align-items: baseline;
	font-family: var(--wp--preset--font-family--plus-jakarta-sans);
	font-size: 1.2rem;
	font-weight: 800;
	letter-spacing: -0.03em;
	color: var(--wp--preset--color--slate-900);
	text-decoration: none;
}

.sc-brand span,
.sc-brand a span {
	color: var(--wp--preset--color--accent);
}

.sc-brand a {
	color: inherit;
	text-decoration: none;
}

/* Header scrolled state + mobile nav
 * Sticky must live on the template-part wrapper — the inner .sc-site-header's
 * parent is only as tall as the header, so sticky there never engages. */
.wp-block-template-part:has(> .sc-site-header) {
	position: sticky;
	top: 0;
	z-index: 40;
}

.admin-bar .wp-block-template-part:has(> .sc-site-header) {
	top: 32px;
}

@media screen and (max-width: 782px) {
	.admin-bar .wp-block-template-part:has(> .sc-site-header) {
		top: 46px;
	}
}

.sc-site-header {
	position: relative;
	/* Keep backdrop blur on a pseudo — putting it on the header itself
	   creates a containing block that traps the Navigation overlay. */
	background: transparent;
	border-bottom: 1px solid transparent;
	transition: border-color 200ms ease;
}

.sc-site-header::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: color-mix(in srgb, var(--wp--preset--color--background) 86%, transparent);
	backdrop-filter: blur(14px);
	transition: background 200ms ease;
	pointer-events: none;
}

.sc-site-header.is-scrolled {
	border-bottom-color: var(--wp--preset--color--slate-200);
}

.sc-site-header.is-scrolled::before {
	background: color-mix(in srgb, var(--wp--preset--color--background) 94%, transparent);
}

/* Open mobile menu must sit above hero isolation / page content */
.wp-block-template-part:has(.wp-block-navigation__responsive-container.is-menu-open) {
	z-index: 100001;
}

.sc-header-cta .wp-block-button__link {
	min-height: 2.25rem;
	white-space: nowrap;
}

/*
 * Header layout — mockup is brand | nav | actions.
 * CSS grid beats Navigation overlay + flex space-between fights below 880px.
 */
.sc-site-header > .alignwide.is-layout-flex {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	column-gap: 0.75rem;
	row-gap: 0;
}

.sc-site-header > .alignwide > .sc-brand {
	grid-column: 1;
	grid-row: 1;
}

.sc-site-header > .alignwide > .wp-block-navigation {
	grid-column: 2;
	grid-row: 1;
	justify-self: center;
}

.sc-site-header > .alignwide > .wp-block-group {
	grid-column: 3;
	grid-row: 1;
	justify-self: end;
}

@media (max-width: 879px) {
	.sc-site-header > .alignwide.is-layout-flex {
		grid-template-columns: auto minmax(0, 1fr) auto;
		column-gap: 0.5rem;
	}

	.sc-site-header > .alignwide > .wp-block-group {
		grid-column: 2;
		justify-self: end;
	}

	.sc-site-header > .alignwide > .wp-block-navigation {
		grid-column: 3;
		justify-self: end;
	}

	.sc-site-header .sc-header-cta .wp-block-button__link {
		padding-left: 0.7rem !important;
		padding-right: 0.7rem !important;
	}

	/* WP overlay default is ~600px; mockup switches at 880px */
	.sc-site-header .wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 2.5rem;
		height: 2.5rem;
		padding: 0;
		border: 1px solid var(--wp--preset--color--slate-200);
		border-radius: 6px;
		background: var(--wp--preset--color--white);
		color: var(--wp--preset--color--slate-800);
	}

	.sc-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}
}

/* Mobile drawer — match design-mockup .mobile-nav (left-aligned list + CTA) */
.sc-site-header .wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--slate-700);
	padding: 1.25rem clamp(1.25rem, 5vw, 1.75rem) 1.75rem !important;
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--slate-800);
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog,
.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: 100%;
	text-align: left;
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 3.25rem !important;
	gap: 0 !important;
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	gap: 0 !important;
	border-top: 1px solid var(--wp--preset--color--slate-100);
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(.sc-nav-cta) {
	width: 100%;
	margin: 0;
	border-bottom: 1px solid var(--wp--preset--color--slate-100);
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(.sc-nav-cta) .wp-block-navigation-item__content {
	display: block;
	width: 100%;
	padding: 0.85rem 0;
	font-size: 1.05rem;
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--slate-700);
	text-decoration: none;
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(.sc-nav-cta) .wp-block-navigation-item__content:hover,
.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(.sc-nav-cta) .wp-block-navigation-item__content:focus {
	color: var(--wp--preset--color--slate-900);
}

/* Drawer CTA — hidden in desktop nav row */
.sc-site-header .wp-block-navigation__container > .sc-nav-cta {
	display: none;
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .sc-nav-cta {
	display: block;
	width: 100%;
	max-width: 100%;
	margin-top: 1.25rem;
	border: 0;
	box-sizing: border-box;
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .sc-nav-cta .wp-block-navigation-item__content {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-height: 2.5rem;
	padding: 0.55rem 1rem;
	border-radius: 6px;
	background-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white) !important;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .sc-nav-cta .wp-block-navigation-item__content:hover,
.sc-site-header .wp-block-navigation__responsive-container.is-menu-open .sc-nav-cta .wp-block-navigation-item__content:focus {
	background-color: var(--wp--preset--color--accent-hover);
	color: var(--wp--preset--color--white) !important;
}

@media (min-width: 880px) {
	.sc-site-header .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: none;
	}
}

/* Buttons — mockup min-height + hover (WooCommerce/button styles can win over theme.json) */
.wp-block-button__link.wp-element-button {
	min-height: 3rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: none;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link.wp-element-button:hover,
.wp-block-button:not(.is-style-outline) .wp-block-button__link.wp-element-button:active {
	background-color: var(--wp--preset--color--accent-hover) !important;
	color: var(--wp--preset--color--white) !important;
}

.sc-header-cta .wp-block-button__link.wp-element-button {
	min-height: 2.25rem;
}

.sc-hero .sc-hero__layout.is-layout-flex {
	width: 100%;
	align-items: center !important;
}

/* Hero atmosphere — decorative background blocks cannot express */
.sc-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: min(92vh, 52rem);
	display: flex;
	align-items: center;
	background:
		radial-gradient(120% 90% at 12% 8%, rgba(147, 197, 253, 0.55) 0%, transparent 55%),
		radial-gradient(90% 70% at 88% 18%, rgba(37, 99, 235, 0.22) 0%, transparent 50%),
		radial-gradient(70% 60% at 50% 100%, rgba(219, 234, 254, 0.9) 0%, transparent 55%),
		linear-gradient(165deg, #f0f7ff 0%, var(--wp--preset--color--white) 42%, var(--wp--preset--color--slate-50) 100%);
}

.sc-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image:
		linear-gradient(rgba(37, 99, 235, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(37, 99, 235, 0.045) 1px, transparent 1px);
	background-size: 48px 48px;
	mask-image: radial-gradient(ellipse 70% 60% at 50% 30%, #000 20%, transparent 75%);
	pointer-events: none;
}

.sc-hero .sc-hero__layout.is-layout-flex,
.sc-hero > .wp-block-columns.is-layout-flex {
	width: 100%;
	align-items: center;
}

/* Hero product panel chrome */
.sc-hero-panel {
	background: linear-gradient(165deg, #0f172a 0%, #1e293b 100%) !important;
	box-shadow:
		0 24px 60px rgba(37, 99, 235, 0.14),
		0 8px 20px rgba(15, 23, 42, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.06) !important;
}

@media (min-width: 980px) {
	.sc-hero-panel {
		border-radius: 6px 0 0 6px !important;
		border-right: 0 !important;
	}

	.sc-hero .wp-block-column:last-child {
		margin-right: calc(-1 * var(--wp--style--root--padding-right, var(--wp--preset--spacing--gutter)));
	}
}

/* Final CTA atmosphere — mockup blue-700 + grid/orbs */
.sc-final-cta {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background-color: var(--wp--preset--color--blue-700) !important;
	background-image:
		radial-gradient(80% 100% at 0% 0%, rgba(59, 130, 246, 0.35), transparent 55%),
		radial-gradient(70% 80% at 100% 100%, rgba(30, 64, 175, 0.45), transparent 50%) !important;
	color: var(--wp--preset--color--white);
}

.sc-final-cta::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 40px 40px;
	mask-image: radial-gradient(ellipse at center, #000 10%, transparent 70%);
	pointer-events: none;
}

.sc-final-cta > * {
	position: relative;
	z-index: 1;
}

/* White primary on blue band — global accent-hover blends into the section */
.sc-final-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link.wp-element-button:hover,
.sc-final-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link.wp-element-button:active {
	background-color: var(--wp--preset--color--slate-100) !important;
	color: var(--wp--preset--color--slate-900) !important;
}

.sc-final-cta .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button:hover,
.sc-final-cta .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button:active {
	background-color: rgba(255, 255, 255, 0.1) !important;
	border-color: rgba(255, 255, 255, 0.55) !important;
	color: var(--wp--preset--color--white) !important;
}

/* --------------------------------------------------------------------------
   Blog — layout block supports cannot express
   -------------------------------------------------------------------------- */

.sc-blog-archive-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(ellipse 50% 60% at 100% 0%, rgba(37, 99, 235, 0.08), transparent 55%),
		radial-gradient(ellipse 40% 50% at 0% 100%, rgba(96, 165, 250, 0.06), transparent 50%),
		var(--wp--preset--color--white);
}

.sc-blog-archive-hero h1 {
	max-width: 18ch;
}

.sc-blog-filters .wp-block-categories,
.sc-blog-filters .wp-block-categories-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sc-blog-filters .wp-block-categories .cat-item {
	display: flex;
	margin: 0;
	line-height: 1;
}

.sc-blog-filters .wp-block-button {
	margin: 0;
}

.sc-blog-filters .wp-block-button__link.wp-element-button,
.sc-blog-filters .wp-block-categories a {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	min-height: 2.25rem;
	padding: 0.4rem 0.85rem;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--slate-200);
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--slate-600) !important;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

.sc-blog-filters .wp-block-button__link.wp-element-button:hover,
.sc-blog-filters .wp-block-button__link.wp-element-button:focus,
.sc-blog-filters .wp-block-categories a:hover,
.sc-blog-filters .wp-block-categories a:focus {
	border-color: var(--wp--preset--color--blue-200);
	color: var(--wp--preset--color--slate-900) !important;
	background: var(--wp--preset--color--white) !important;
}

body.blog .sc-blog-filters .sc-blog-filter-all .wp-block-button__link.wp-element-button,
body.blog .sc-blog-filters .sc-blog-filter-all .wp-block-button__link.wp-element-button:hover,
body.blog .sc-blog-filters .sc-blog-filter-all .wp-block-button__link.wp-element-button:focus,
.sc-blog-filters .wp-block-categories .current-cat a,
.sc-blog-filters .wp-block-categories .current-cat a:hover,
.sc-blog-filters .wp-block-categories .current-cat a:focus {
	background: var(--wp--preset--color--accent) !important;
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white) !important;
}

.sc-blog-latest {
	display: inline-block;
	width: fit-content;
}

.sc-blog-featured__body .wp-block-post-title {
	font-weight: 800;
	letter-spacing: -0.035em;
	line-height: 1.15;
}

.sc-blog-cover {
	position: relative;
	overflow: hidden;
	border-radius: 6px;
}

.sc-blog-cover .wp-block-post-featured-image,
.sc-blog-cover .wp-block-post-featured-image a,
.sc-blog-cover .wp-block-post-featured-image img {
	display: block;
	width: 100%;
	border-radius: 6px;
}

.sc-blog-cover::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	border-radius: inherit;
	background:
		radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.12) 0 1px, transparent 1.5px),
		radial-gradient(circle at 70% 60%, rgba(255, 255, 255, 0.1) 0 40%, transparent 55%),
		radial-gradient(circle at 40% 80%, rgba(255, 255, 255, 0.08) 0 25%, transparent 40%);
	background-size: 18px 18px, auto, auto;
	opacity: 0.9;
}

.sc-blog-cover .wp-block-post-featured-image:not(:has(img)) {
	display: none;
}

.sc-blog-cover:not(:has(img)) {
	aspect-ratio: 16 / 10;
	background: linear-gradient(145deg, #0f172a 0%, #1e3a8a 55%, #2563eb 100%);
}

.sc-blog-featured .sc-blog-cover:not(:has(img)),
.single-post .sc-post-hero__cover:not(:has(img)) {
	background: linear-gradient(145deg, #0f172a 0%, #1e3a8a 55%, #2563eb 100%);
}

.sc-blog-grid .wp-block-post:nth-child(7n + 1) .sc-blog-cover:not(:has(img)) {
	background: linear-gradient(145deg, #1d4ed8 0%, #3b82f6 100%);
}

.sc-blog-grid .wp-block-post:nth-child(7n + 2) .sc-blog-cover:not(:has(img)) {
	background: linear-gradient(145deg, #065f46 0%, #10b981 100%);
}

.sc-blog-grid .wp-block-post:nth-child(7n + 3) .sc-blog-cover:not(:has(img)) {
	background: linear-gradient(145deg, #92400e 0%, #f59e0b 100%);
}

.sc-blog-grid .wp-block-post:nth-child(7n + 4) .sc-blog-cover:not(:has(img)) {
	background: linear-gradient(145deg, #1e293b 0%, #64748b 100%);
}

.sc-blog-grid .wp-block-post:nth-child(7n + 5) .sc-blog-cover:not(:has(img)) {
	background: linear-gradient(145deg, #0369a1 0%, #38bdf8 100%);
}

.sc-blog-grid .wp-block-post:nth-child(7n + 6) .sc-blog-cover:not(:has(img)) {
	background: linear-gradient(145deg, #9f1239 0%, #fb7185 100%);
}

.sc-blog-grid .wp-block-post:nth-child(7n + 7) .sc-blog-cover:not(:has(img)) {
	background: linear-gradient(145deg, #1d4ed8 0%, #3b82f6 100%);
}

.sc-post-hero__cover:not(:has(img)) {
	aspect-ratio: 21 / 9;
	min-height: 14rem;
}

.sc-blog-cat-tag {
	position: absolute;
	left: 0.75rem;
	bottom: 0.75rem;
	z-index: 1;
	margin: 0;
	padding: 0.2rem 0.5rem;
	border-radius: 6px;
	background: rgba(15, 23, 42, 0.72);
	backdrop-filter: blur(4px);
	pointer-events: none;
}

.sc-blog-cat-tag a,
.sc-blog-cat-tag .wp-block-post-terms a {
	color: var(--wp--preset--color--white) !important;
	text-decoration: none;
}

.sc-blog-meta {
	font-size: var(--wp--preset--font-size--meta);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--slate-400);
}

.sc-blog-meta p,
.sc-blog-meta .wp-block-post-author-name,
.sc-blog-meta .wp-block-post-date,
.sc-blog-meta .sc-read-time {
	margin: 0;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	color: inherit;
	line-height: 1.4;
}

.sc-blog-post {
	height: 100%;
}

.sc-blog-post .wp-block-post-title {
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.3;
}

.sc-blog-post__excerpt,
.sc-blog-post .wp-block-post-excerpt {
	color: var(--wp--preset--color--slate-500);
}

.sc-blog-post__excerpt .wp-block-post-excerpt__excerpt,
.sc-blog-post .wp-block-post-excerpt__excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sc-blog-read-link,
.wp-block-read-more.sc-blog-read-link {
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--wp--preset--color--accent);
	text-decoration: none;
}

.sc-blog-read-link:hover,
.wp-block-read-more.sc-blog-read-link:hover,
.sc-blog-read-link a:hover {
	color: var(--wp--preset--color--accent-hover);
}

.sc-blog-divider__mark {
	width: 0.55rem;
	height: 0.55rem;
	min-width: 0.55rem;
	min-height: 0.55rem;
	flex-shrink: 0;
	padding: 0 !important;
}

.sc-blog-divider__label {
	margin: 0;
}

@media (max-width: 979px) {
	.sc-blog-grid .wp-block-post-template.is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 639px) {
	.sc-blog-grid .wp-block-post-template.is-layout-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

.sc-blog-pagination.wp-block-query-pagination {
	gap: 1rem;
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid var(--wp--preset--color--slate-200);
}

.sc-blog-pagination .wp-block-query-pagination-numbers {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.35rem;
}

.sc-blog-pagination .wp-block-query-pagination-previous,
.sc-blog-pagination .wp-block-query-pagination-next {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 2rem;
	height: 2rem;
	padding: 0 0.75rem;
	line-height: 1;
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	color: var(--wp--preset--color--slate-700);
	text-decoration: none;
}

.sc-blog-pagination .wp-block-query-pagination-previous:hover,
.sc-blog-pagination .wp-block-query-pagination-next:hover {
	border-color: var(--wp--preset--color--blue-200);
	color: var(--wp--preset--color--accent);
}

.sc-blog-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 2rem;
	height: 2rem;
	padding: 0 0.4rem;
	line-height: 1;
	border-radius: 6px;
	color: var(--wp--preset--color--slate-500);
	text-decoration: none;
}

.sc-blog-pagination .page-numbers.current {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white);
}

/* Single post */
.sc-post-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(ellipse 45% 55% at 100% 0%, rgba(37, 99, 235, 0.07), transparent 55%),
		var(--wp--preset--color--white);
}

.sc-breadcrumb.wp-block-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem 0.55rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sc-breadcrumb.wp-block-breadcrumbs li:nth-child(3):not(:last-child) {
	display: none !important;
}

.sc-breadcrumb [aria-current="page"] {
	max-width: 18ch;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: var(--wp--preset--color--slate-800);
}

.sc-post-hero__lead,
.sc-post-hero__lead .wp-block-post-excerpt__excerpt {
	font-size: 1.125rem !important;
	line-height: 1.65;
	color: var(--wp--preset--color--slate-500);
}

.sc-post-cat.wp-block-post-terms {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: normal;
	text-transform: none;
	line-height: 1;
}

.sc-post-cat .wp-block-post-terms__separator {
	display: none;
}

.sc-post-cat a {
	display: inline-flex;
	align-items: center;
	padding: 0.25rem 0.55rem;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--blue-200);
	background: var(--wp--preset--color--blue-50);
	color: var(--wp--preset--color--blue-700) !important;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
	line-height: 1.2;
}

.sc-post-cat a:hover {
	border-color: var(--wp--preset--color--blue-300);
	color: var(--wp--preset--color--blue-800) !important;
}

.sc-post-cat--muted a {
	background: var(--wp--preset--color--slate-50);
	border-color: var(--wp--preset--color--slate-200);
	color: var(--wp--preset--color--slate-600) !important;
}

.sc-post-cat--muted a:hover {
	border-color: var(--wp--preset--color--slate-300);
	color: var(--wp--preset--color--slate-800) !important;
}

.sc-post-hero__read {
	font-weight: 500;
}

.sc-post-hero__lead .wp-block-post-excerpt__excerpt,
.sc-post-hero__lead {
	font-size: 1.125rem;
	line-height: 1.65;
	color: var(--wp--preset--color--slate-500);
}

.sc-post-hero .wp-block-post-excerpt__more-text {
	display: none;
}

.sc-post-author__avatar,
.sc-post-author__avatar img {
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	flex-shrink: 0;
	object-fit: cover;
}

.sc-post-author__name {
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--wp--preset--color--slate-800);
}

.sc-post-author__date,
.sc-post-author-row .wp-block-post-date {
	font-size: 0.8rem;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	color: var(--wp--preset--color--slate-400);
}

.sc-post-hero__cover {
	margin-top: 0;
}

.sc-post-layout {
	align-items: start;
}

@media (min-width: 960px) {
	.sc-post-sidebar {
		position: sticky;
		top: 5.5rem;
	}

	.sc-post-toc--mobile {
		display: none !important;
	}
}

@media (max-width: 959px) {
	.sc-post-toc--desktop {
		display: none !important;
	}
}

.sc-post-toc__list {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: toc;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.sc-post-toc--desktop .sc-post-toc__list {
	gap: 0.45rem;
}

.sc-post-toc--mobile .sc-post-toc__list li {
	counter-increment: toc;
	display: flex;
	align-items: baseline;
	gap: 0.65rem;
}

.sc-post-toc--mobile .sc-post-toc__list li::before {
	content: counter(toc);
	flex-shrink: 0;
	width: 1.25rem;
	height: 1.25rem;
	border-radius: 50%;
	background: var(--wp--preset--color--blue-100);
	color: var(--wp--preset--color--accent);
	font-size: 0.65rem;
	font-weight: 700;
	display: grid;
	place-items: center;
}

.sc-post-toc--mobile .sc-post-toc__list a {
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--wp--preset--color--blue-700);
	text-decoration: none;
	line-height: 1.4;
}

.sc-post-toc--desktop .sc-post-toc__list a {
	font-size: 0.84rem;
	font-weight: 500;
	color: var(--wp--preset--color--slate-600);
	text-decoration: none;
	line-height: 1.4;
}

.sc-post-toc--desktop .sc-post-toc__list a:hover,
.sc-post-toc--mobile .sc-post-toc__list a:hover {
	color: var(--wp--preset--color--accent);
}

.sc-post-content h2 {
	margin-top: 2.5rem;
	scroll-margin-top: 5.5rem;
}

.sc-post-content h2:first-child {
	margin-top: 0;
}

.sc-post-content ul,
.sc-post-content ol {
	padding-left: 1.25rem;
}

.sc-post-content li::marker {
	color: var(--wp--preset--color--blue-500);
}

.sc-post-callout {
	margin: 1.75rem 0;
}

.sc-post-sidebar-card__btn .wp-block-button__link.wp-element-button {
	min-height: 2.5rem;
	width: 100%;
	justify-content: center;
}

.sc-sidebar-related__cat,
.sc-sidebar-related__cat a {
	display: block;
	margin: 0;
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--slate-400) !important;
	text-decoration: none;
	background: none;
	border: 0;
	padding: 0;
}

.sc-sidebar-related__title,
.sc-sidebar-related__title a {
	font-size: 0.84rem !important;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0;
	color: var(--wp--preset--color--slate-800);
	text-decoration: none;
}

.sc-sidebar-related__title a:hover {
	color: var(--wp--preset--color--accent);
}

.sc-sidebar-related .wp-block-post:first-child .wp-block-group {
	padding-top: 0 !important;
}

.sc-sidebar-related .wp-block-post:last-child .wp-block-group {
	padding-bottom: 0 !important;
	border-bottom: 0 !important;
}

.sc-post-footer .sc-post-cat {
	margin: 0;
}

/* --------------------------------------------------------------------------
   Shop — layout block supports cannot express
   -------------------------------------------------------------------------- */

.sc-shop-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(90% 80% at 100% 0%, rgba(147, 197, 253, 0.4) 0%, transparent 55%),
		radial-gradient(70% 60% at 0% 100%, rgba(219, 234, 254, 0.7) 0%, transparent 50%),
		linear-gradient(180deg, #f0f7ff 0%, var(--wp--preset--color--white) 70%);
}

.sc-shop-hero h1 {
	max-width: 16ch;
	text-wrap: balance;
}

.sc-shop-toolbar {
	position: sticky;
	top: 4.25rem;
	z-index: 30;
	backdrop-filter: blur(12px);
}

.admin-bar .sc-shop-toolbar {
	top: calc(4.25rem + 32px);
}

@media screen and (max-width: 782px) {
	.admin-bar .sc-shop-toolbar {
		top: calc(4.25rem + 46px);
	}
}

.sc-shop-filters {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
}

.sc-shop-filter-all-wrap,
.sc-shop-filters .wc-block-product-categories,
.sc-shop-filters .wc-block-product-categories-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sc-shop-filters .wp-block-button,
.sc-shop-filters .wc-block-product-categories-list-item {
	margin: 0;
}

.sc-shop-filters .wc-block-product-categories-list-item {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-height: 2.25rem;
	padding: 0.4rem 0.85rem;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--slate-200);
	background: var(--wp--preset--color--white);
	line-height: 1.2;
}

.sc-shop-filters .wp-block-button__link.wp-element-button,
.sc-shop-filters .wc-block-product-categories-list-item a {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-height: 2.25rem;
	padding: 0.4rem 0.85rem;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--slate-200);
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--slate-600) !important;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	box-shadow: none;
}

.sc-shop-filters .wc-block-product-categories-list-item a {
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent !important;
	color: inherit !important;
}

.sc-shop-filters .wp-block-button__link.wp-element-button:hover,
.sc-shop-filters .wp-block-button__link.wp-element-button:focus,
.sc-shop-filters .wc-block-product-categories-list-item:hover,
.sc-shop-filters .wc-block-product-categories-list-item:focus-within {
	border-color: var(--wp--preset--color--blue-200);
	color: var(--wp--preset--color--slate-900) !important;
	background: var(--wp--preset--color--white) !important;
}

.sc-shop-filters .wc-block-product-categories-list-item__name {
	font-size: 0.875rem;
	font-weight: 600;
}

.sc-shop-filters .wc-block-product-categories-list-item-count {
	font-size: 0.75rem;
	font-weight: 700;
	opacity: 0.75;
	font-variant-numeric: tabular-nums;
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	color: inherit !important;
}

body.post-type-archive-product .sc-shop-filters .sc-shop-filter-all .wp-block-button__link.wp-element-button,
body.post-type-archive-product .sc-shop-filters .sc-shop-filter-all .wp-block-button__link.wp-element-button:hover,
body.post-type-archive-product .sc-shop-filters .sc-shop-filter-all .wp-block-button__link.wp-element-button:focus,
.sc-shop-filters .wc-block-product-categories-list-item.is-active,
.sc-shop-filters .wc-block-product-categories-list-item.is-active:hover,
.sc-shop-filters .wc-block-product-categories-list-item.is-active:focus-within {
	background: var(--wp--preset--color--accent) !important;
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white) !important;
}

.sc-shop-filters .wc-block-product-categories-list-item.is-active a,
.sc-shop-filters .wc-block-product-categories-list-item.is-active .wc-block-product-categories-list-item-count {
	color: var(--wp--preset--color--white) !important;
	opacity: 0.95;
}

.sc-shop-toolbar__inner > .sc-shop-search {
	box-sizing: border-box;
	flex: 0 0 auto;
	width: min(100%, 16rem);
	max-width: 100%;
	margin-inline-start: auto;
}

.sc-shop-search.wp-block-search {
	box-sizing: border-box;
}

.sc-shop-search .wp-block-search__inside-wrapper {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	width: 100%;
	min-width: 0;
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	background: var(--wp--preset--color--slate-50);
	padding: 0.45rem 0.75rem;
}

.sc-shop-search .wp-block-search__input {
	flex: 1;
	min-width: 0;
	border: 0 !important;
	background: transparent;
	color: var(--wp--preset--color--slate-800);
	font-size: 0.875rem;
	outline: none;
	box-shadow: none;
	padding: 0;
	min-height: 0;
}

.sc-shop-search .wp-block-search__input::placeholder {
	color: var(--wp--preset--color--slate-400);
}

.sc-shop-search .wp-block-search__button {
	margin: 0;
	padding: 0;
	border: 0 !important;
	background: transparent !important;
	color: var(--wp--preset--color--slate-500);
	min-height: auto;
	box-shadow: none;
}

.sc-shop-search .wp-block-search__button:hover {
	background: transparent;
	color: var(--wp--preset--color--slate-700);
}

@media (max-width: 779px) {
	.sc-shop-toolbar__inner {
		flex-direction: column;
		align-items: stretch;
	}

	.sc-shop-filters {
		width: 100%;
	}

	.sc-shop-toolbar__inner > .sc-shop-search {
		width: 100%;
		max-width: none;
		margin-inline-start: 0;
	}
}

.sc-shop-results-bar .woocommerce-result-count,
.sc-shop-results-bar .wc-block-product-results-count {
	margin: 0;
	font-size: 0.875rem;
	color: var(--wp--preset--color--slate-500);
}

.sc-shop-results-bar .woocommerce-result-count strong,
.sc-shop-results-bar .wc-block-product-results-count strong {
	color: var(--wp--preset--color--slate-800);
	font-weight: 700;
}

.sc-shop-collection .wc-block-product-template {
	display: grid;
	gap: 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
	grid-template-columns: minmax(0, 1fr) !important;
}

.sc-shop-collection .wc-block-product-template > .wc-block-product,
.sc-shop-collection .wc-block-product-template > li {
	margin: 0;
	padding-left: 0 !important;
	padding-right: 0 !important;
	list-style: none;
}

@media (min-width: 780px) {
	.sc-shop-collection .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 1100px) {
	.sc-shop-collection .wc-block-product-template {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

.sc-shop-product {
	overflow: hidden;
	height: 100%;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.sc-shop-product__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-height: 0;
}

.sc-shop-product__desc,
.sc-shop-product__desc .wc-block-components-product-summary,
.sc-shop-product__desc .wc-block-components-product-summary p {
	flex: 1;
	margin-bottom: 0;
}

.sc-shop-product__footer {
	margin-top: auto;
	width: 100%;
}

.sc-shop-product__image,
.sc-shop-product__preview {
	aspect-ratio: 16 / 10;
	background: var(--wp--preset--color--slate-100);
	border-bottom: 1px solid var(--wp--preset--color--slate-100);
	overflow: hidden;
	margin: 0 !important;
}

.sc-shop-product__image img,
.sc-shop-product__preview img,
.sc-shop-product .wc-block-components-product-image img,
.sc-shop-product .wp-block-woocommerce-product-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 280ms ease;
}

.sc-shop-product:hover {
	border-color: var(--wp--preset--color--blue-200) !important;
	box-shadow: var(--wp--preset--shadow--md);
	transform: translateY(-2px);
}

.sc-shop-product:hover .wc-block-components-product-image img,
.sc-shop-product:hover .sc-shop-product__preview img,
.sc-shop-product:hover .wp-block-woocommerce-product-image img {
	transform: scale(1.03);
}

.sc-shop-product__category,
.sc-shop-product__category a {
	margin: 0;
	color: var(--wp--preset--color--blue-700) !important;
	text-decoration: none;
}

.sc-shop-product__category .wp-block-post-terms__separator {
	display: none;
}

.sc-shop-product__title,
.sc-shop-product__title a {
	color: var(--wp--preset--color--slate-900);
	text-decoration: none;
}

.sc-shop-product__title a:hover {
	color: var(--wp--preset--color--slate-900);
}

.sc-shop-product__price,
.sc-shop-product__price .woocommerce-Price-amount {
	font-weight: 800;
}

.sc-shop-product__price .sc-shop-price-suffix {
	font-size: 0.8rem;
	font-weight: 500;
	color: var(--wp--preset--color--slate-500);
}

.sc-shop-product__footer .wc-block-components-product-price {
	margin: 0;
}

.sc-shop-product__footer .wc-block-components-product-button,
.sc-shop-product__footer .wp-block-woocommerce-product-button {
	margin: 0;
	flex-shrink: 0;
}

.sc-shop-product__footer .wc-block-components-product-button__button,
.sc-shop-product__footer .wp-block-button.wc-block-components-product-button .wp-block-button__link {
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent !important;
	box-shadow: none;
	color: var(--wp--preset--color--blue-700) !important;
	font-size: 0.875rem;
	font-weight: 600;
}

.sc-shop-product__footer .wc-block-components-product-button__button:hover,
.sc-shop-product__footer .wp-block-button.wc-block-components-product-button .wp-block-button__link:hover {
	background: transparent !important;
	color: var(--wp--preset--color--blue-800) !important;
}

.sc-shop-product__footer .wc-block-components-product-summary,
.sc-shop-product__footer .wc-block-components-product-summary p {
	margin: 0;
}

.sc-shop-product__footer .wc-block-components-product-summary a {
	text-decoration: none;
}

.sc-shop-product__footer .wc-block-components-product-summary a:hover {
	color: var(--wp--preset--color--accent-hover) !important;
}

.sc-shop-pagination.wp-block-query-pagination {
	gap: 1rem;
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid var(--wp--preset--color--slate-200);
}

.sc-shop-pagination .wp-block-query-pagination-numbers {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.35rem;
}

.sc-shop-pagination .wp-block-query-pagination-previous,
.sc-shop-pagination .wp-block-query-pagination-next {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 2rem;
	height: 2rem;
	padding: 0 0.75rem;
	line-height: 1;
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	color: var(--wp--preset--color--slate-700);
	text-decoration: none;
}

.sc-shop-pagination .wp-block-query-pagination-previous:hover,
.sc-shop-pagination .wp-block-query-pagination-next:hover {
	border-color: var(--wp--preset--color--blue-200);
	color: var(--wp--preset--color--accent);
}

.sc-shop-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 2rem;
	height: 2rem;
	padding: 0 0.4rem;
	line-height: 1;
	border-radius: 6px;
	color: var(--wp--preset--color--slate-500);
	text-decoration: none;
}

.sc-shop-pagination .page-numbers.current {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white);
}

.sc-shop-trust .wp-block-column p:last-child {
	margin-bottom: 0;
}

@media (max-width: 719px) {
	.sc-shop-trust .wp-block-columns {
		gap: 1.5rem !important;
	}
}

/* --------------------------------------------------------------------------
   Single product — layout block supports cannot express
   -------------------------------------------------------------------------- */

.sc-product-single {
	position: relative;
	isolation: isolate;
	/* overflow must stay visible — sticky purchase column is contained by this section */
	background:
		radial-gradient(80% 60% at 100% 0%, rgba(219, 234, 254, 0.55), transparent 55%),
		var(--wp--preset--color--slate-50) !important;
}

.sc-product-single__grid {
	align-items: flex-start;
}

.sc-product-cat.wp-block-post-terms {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	padding: 0.35rem 0.75rem;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--blue-100);
	background: var(--wp--preset--color--blue-50);
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	line-height: 1.2;
}

.sc-product-cat a {
	color: var(--wp--preset--color--blue-700) !important;
	text-decoration: none;
}

.sc-product-cat .wp-block-post-terms__separator {
	display: none;
}

.sc-product-single__info .wp-block-post-title {
	text-wrap: balance;
}

.sc-product-single__lead,
.sc-product-single__lead .wp-block-post-excerpt__excerpt {
	font-size: 1.0625rem;
	line-height: 1.7;
	color: var(--wp--preset--color--slate-600);
}

.sc-product-single__info .wc-block-components-product-rating,
.sc-product-single__info .wp-block-woocommerce-product-rating {
	margin-top: 0;
}

/* Product proof row — stars, review link, HPOS badge */
.sc-product-proof {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem 1rem;
}

.sc-product-proof__rating.wp-block-woocommerce-product-rating,
.sc-product-proof__rating .wc-block-components-product-rating {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem 1rem;
	margin: 0;
}

.sc-product-proof__rating .wc-block-components-product-rating__container {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem 1rem;
}

.sc-product-proof__rating .wc-block-components-product-rating__stars {
	color: #f59e0b;
	font-size: 0.9rem;
	letter-spacing: 0.08em;
}

.sc-product-proof__rating .wc-block-components-product-rating__reviews_count,
.sc-product-proof__rating .wc-block-components-product-rating__reviews_count a {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--wp--preset--color--blue-700);
	text-decoration: none;
}

.sc-product-proof__rating .wc-block-components-product-rating__reviews_count a:hover,
.sc-product-proof__rating .wc-block-components-product-rating__reviews_count a:focus {
	color: var(--wp--preset--color--blue-800);
}

.sc-product-verified {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.25rem 0.55rem;
	border-radius: 6px;
	background: #f0fdf4;
	color: #15803d;
	font-size: 0.75rem;
	font-weight: 600;
	border: 1px solid #dcfce7;
	line-height: 1.2;
}

.sc-product-verified svg {
	flex-shrink: 0;
	color: #16a34a;
}

@media (min-width: 960px) {
	.sc-product-purchase {
		position: sticky;
		top: 5.5rem;
		align-self: flex-start;
		z-index: 2;
	}

	.admin-bar .sc-product-purchase {
		top: calc(5.5rem + 32px);
	}
}

@media screen and (max-width: 782px) {
	.admin-bar .sc-product-purchase {
		top: calc(5.5rem + 46px);
	}
}

.sc-product-details__layout {
	align-items: start;
}

.sc-product-side-list {
	margin: 0;
	padding-left: 0;
	list-style: none;
	display: grid;
	gap: 0.55rem;
}

.sc-product-side-list li {
	position: relative;
	padding-left: 1.35rem;
}

.sc-product-side-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.45em;
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: var(--wp--preset--color--accent);
}

/* Product reviews tab — classic WC markup, mockup layout */
.woocommerce-Reviews ol.commentlist {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-Reviews ol.commentlist li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-Reviews .reviews-summary {
	display: flex;
	flex-wrap: wrap;
	gap: 2.5rem;
	align-items: center;
	margin-bottom: 2.25rem;
	padding: 2rem;
	background: var(--wp--preset--color--blue-50);
	border: 1px solid var(--wp--preset--color--blue-100);
	border-radius: 6px;
}

.woocommerce-Reviews .reviews-big-num {
	font-size: clamp(2.75rem, 6vw, 4rem);
	font-weight: 800;
	letter-spacing: -0.05em;
	line-height: 1;
	color: var(--wp--preset--color--slate-900);
}

.woocommerce-Reviews .reviews-big-stars {
	color: #f59e0b;
	font-size: 1.35rem;
	letter-spacing: 0.15em;
	margin: 0.35rem 0 0.25rem;
}

.woocommerce-Reviews .reviews-big-count {
	font-size: 0.84rem;
	color: var(--wp--preset--color--slate-500);
}

.woocommerce-Reviews .rating-bars {
	flex: 1;
	min-width: 12rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.woocommerce-Reviews .rating-bar-row {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	font-size: 0.8rem;
	color: var(--wp--preset--color--slate-500);
}

.woocommerce-Reviews .rating-bar-track {
	flex: 1;
	height: 0.5rem;
	background: var(--wp--preset--color--blue-100);
	border-radius: 6px;
	overflow: hidden;
}

.woocommerce-Reviews .rating-bar-fill {
	height: 100%;
	background: #f59e0b;
	border-radius: 6px;
}

.woocommerce-Reviews .rating-bar-count {
	width: 1.5rem;
	text-align: right;
	font-weight: 600;
	color: var(--wp--preset--color--slate-600);
}

.woocommerce-Reviews .review-card {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	padding: 1.5rem;
	margin-bottom: 1rem;
}

.woocommerce-Reviews .review-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1rem;
	margin-bottom: 0.75rem;
}

.woocommerce-Reviews .reviewer-info {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.woocommerce-Reviews .reviewer-avatar {
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--wp--preset--color--blue-400), var(--wp--preset--color--blue-700));
	color: var(--wp--preset--color--white);
	font-size: 0.875rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.woocommerce-Reviews .reviewer-name {
	font-weight: 600;
	font-size: 0.875rem;
	color: var(--wp--preset--color--slate-800);
}

.woocommerce-Reviews .reviewer-verified {
	font-size: 0.75rem;
	color: var(--wp--preset--color--green-600);
	margin-top: 0.15rem;
}

.woocommerce-Reviews .review-meta {
	text-align: right;
	flex-shrink: 0;
}

.woocommerce-Reviews .review-stars {
	color: #f59e0b;
	font-size: 0.875rem;
	letter-spacing: 0.05em;
}

.woocommerce-Reviews .review-date {
	font-size: 0.78rem;
	color: var(--wp--preset--color--slate-400);
	margin-top: 0.2rem;
}

.woocommerce-Reviews .review-text {
	font-size: 0.9rem;
	color: var(--wp--preset--color--slate-500);
	line-height: 1.7;
}

.woocommerce-Reviews .review-text p {
	margin: 0;
}

.woocommerce-Reviews #review_form_wrapper {
	margin-top: 2.5rem;
	padding-top: 2rem;
	border-top: 1px solid var(--wp--preset--color--slate-100);
}

.woocommerce-Reviews #review_form .comment-reply-title {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--slate-900);
	margin-bottom: 1.5rem;
}

.woocommerce-Reviews #review_form .comment-notes,
.woocommerce-Reviews #review_form .comment-form-cookies-consent {
	display: none;
}

.woocommerce-Reviews #review_form p,
.woocommerce-Reviews #review_form .comment-form-rating {
	margin-bottom: 1rem;
}

.woocommerce-Reviews #review_form label {
	display: block;
	font-size: 0.8rem;
	font-weight: 600;
	color: var(--wp--preset--color--slate-600);
	margin-bottom: 0.4rem;
}

.woocommerce-Reviews #review_form .required {
	color: var(--wp--preset--color--blue-600);
}

.woocommerce-Reviews #review_form textarea,
.woocommerce-Reviews #review_form input[type="text"],
.woocommerce-Reviews #review_form input[type="email"] {
	width: 100%;
	padding: 0.65rem 0.85rem;
	font: inherit;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--wp--preset--color--slate-800);
	background: var(--wp--preset--color--white);
	border: 1.5px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.woocommerce-Reviews #review_form textarea {
	min-height: 7.5rem;
	resize: vertical;
}

.woocommerce-Reviews #review_form textarea:focus,
.woocommerce-Reviews #review_form input[type="text"]:focus,
.woocommerce-Reviews #review_form input[type="email"]:focus {
	border-color: var(--wp--preset--color--blue-600);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.woocommerce-Reviews #review_form .sc-rating-select {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* WooCommerce injects its own .stars UI from the select — hide it in favour of mockup stars */
.woocommerce-Reviews #review_form .comment-form-rating p.stars {
	display: none !important;
}

.woocommerce-Reviews .star-rating-input {
	display: flex;
	gap: 0.15rem;
}

.woocommerce-Reviews .star-rating-input__star {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--slate-300);
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
}

.woocommerce-Reviews .star-rating-input__star.is-active,
.woocommerce-Reviews .star-rating-input__star.is-hover {
	color: #f59e0b;
}

.woocommerce-Reviews #review_form .form-submit .submit,
.woocommerce-Reviews #review_form .form-submit .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.65rem;
	padding: 0.65rem 1.35rem;
	border: 0;
	border-radius: 6px;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white);
	font-size: 0.875rem;
	font-weight: 600;
	cursor: pointer;
}

.woocommerce-Reviews #review_form .form-submit .submit:hover,
.woocommerce-Reviews #review_form .form-submit .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent-hover);
}

@media (max-width: 560px) {
	.woocommerce-Reviews .review-header {
		flex-direction: column;
	}

	.woocommerce-Reviews .review-meta {
		text-align: left;
	}
}

/* Coming soon — sticky header, launch form, login chip (WC template; not expressible in blocks alone) */
.sc-coming-soon {
	background: linear-gradient(180deg, #f0f7ff 0%, #fff 280px, var(--wp--preset--color--slate-50) 100%) !important;
	position: relative;
	overflow: clip;
}

.sc-coming-soon__header {
	position: sticky;
	top: 0;
	z-index: 40;
	backdrop-filter: blur(12px);
}

.sc-coming-soon__header a {
	text-decoration: none;
}

.sc-coming-soon__header a:hover {
	color: var(--wp--preset--color--accent);
}

.sc-coming-soon__badge,
.sc-badge {
	display: inline-flex !important;
	align-items: center;
	gap: 0.5rem;
	width: fit-content;
}

.sc-coming-soon__badge::before,
.sc-badge::before {
	content: "";
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: var(--wp--preset--color--accent);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.2);
	flex-shrink: 0;
}

.sc-coming-soon__hero {
	position: relative;
}

.sc-coming-soon__hero::before {
	content: "";
	position: absolute;
	top: -5rem;
	right: -6rem;
	width: 32rem;
	height: 32rem;
	background: radial-gradient(circle, rgba(37, 99, 235, 0.1) 0%, transparent 70%);
	pointer-events: none;
}

.sc-coming-soon__layout.is-layout-flex {
	width: 100%;
	align-items: center;
}

.sc-coming-soon__panel {
	position: relative;
	z-index: 1;
	background: linear-gradient(165deg, #0f172a 0%, #1e293b 100%) !important;
	box-shadow:
		0 24px 60px rgba(37, 99, 235, 0.14),
		0 8px 20px rgba(15, 23, 42, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.sc-coming-soon__checklist {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1.5rem;
}

.sc-coming-soon__checklist li {
	padding-left: 1.5rem;
	position: relative;
}

.sc-coming-soon__checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--wp--preset--color--blue-400);
}

.sc-coming-soon__checklist strong {
	color: var(--wp--preset--color--white);
	font-weight: 600;
}

.sc-coming-soon__footer-brand.sc-brand span {
	color: var(--wp--preset--color--blue-300);
}

.sc-coming-soon__form {
	display: flex;
	gap: 0.5rem;
	margin-top: 1.75rem;
	padding: 0.35rem;
	border: 1.5px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	background: var(--wp--preset--color--white);
}

.sc-coming-soon__form:focus-within {
	border-color: var(--wp--preset--color--blue-300);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.sc-coming-soon__email {
	flex: 1;
	min-width: 0;
	border: 0;
	outline: none;
	background: transparent;
	padding: 0.65rem 0.85rem;
	font: inherit;
	font-size: 0.9375rem;
	color: var(--wp--preset--color--slate-800);
}

.sc-coming-soon__email::placeholder {
	color: var(--wp--preset--color--slate-400);
}

.sc-coming-soon__submit {
	flex-shrink: 0;
	border: 0;
	border-radius: 6px;
	padding: 0.65rem 1.25rem;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white);
	font: inherit;
	font-size: 0.875rem;
	font-weight: 600;
	cursor: pointer;
}

.sc-coming-soon__submit:hover {
	background: var(--wp--preset--color--accent-hover);
}

@media (max-width: 639px) {
	.sc-coming-soon__form {
		flex-direction: column;
	}

	.sc-coming-soon__submit {
		width: 100%;
	}
}

/* Product description tables (classic HTML in WC tabs — not block supports) */
.sc-product-details__main .woocommerce-Tabs-panel,
.sc-product-details__main .wc-tab {
	overflow-x: auto;
}

.sc-product-details__main .woocommerce-Tabs-panel table,
.sc-product-details__main .wc-tab table {
	width: 100%;
	max-width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 0.875rem;
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	overflow: hidden;
	background: var(--wp--preset--color--white);
	margin: 0.5rem 0 2rem;
}

.sc-product-details__main .woocommerce-Tabs-panel table th,
.sc-product-details__main .wc-tab table th {
	background: var(--wp--preset--color--slate-50);
	padding: 0.875rem 1.25rem;
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--slate-500);
	text-align: center;
	border-bottom: 1px solid var(--wp--preset--color--slate-200);
	white-space: nowrap;
}

.sc-product-details__main .woocommerce-Tabs-panel table th:first-child,
.sc-product-details__main .wc-tab table th:first-child {
	text-align: left;
}

.sc-product-details__main .woocommerce-Tabs-panel table th:last-child,
.sc-product-details__main .wc-tab table th:last-child {
	background: var(--wp--preset--color--blue-50);
	color: var(--wp--preset--color--blue-700);
	border-bottom-color: var(--wp--preset--color--blue-100);
}

.sc-product-details__main .woocommerce-Tabs-panel table td,
.sc-product-details__main .wc-tab table td {
	padding: 0.8rem 1.25rem;
	color: var(--wp--preset--color--slate-600);
	border-bottom: 1px solid var(--wp--preset--color--slate-100);
	vertical-align: middle;
	text-align: center;
	font-size: 0.875rem;
	line-height: 1.5;
}

.sc-product-details__main .woocommerce-Tabs-panel table td:first-child,
.sc-product-details__main .wc-tab table td:first-child {
	text-align: left;
	font-weight: 500;
	color: var(--wp--preset--color--slate-700);
}

.sc-product-details__main .woocommerce-Tabs-panel table td:last-child,
.sc-product-details__main .wc-tab table td:last-child {
	background: var(--wp--preset--color--blue-50);
}

.sc-product-details__main .woocommerce-Tabs-panel table tbody tr:last-child td,
.sc-product-details__main .wc-tab table tbody tr:last-child td {
	border-bottom: none;
}

.sc-product-details__main .woocommerce-Tabs-panel table tbody tr:hover td,
.sc-product-details__main .wc-tab table tbody tr:hover td {
	background: var(--wp--preset--color--slate-50);
}

.sc-product-details__main .woocommerce-Tabs-panel table tbody tr:hover td:last-child,
.sc-product-details__main .wc-tab table tbody tr:hover td:last-child {
	background: var(--wp--preset--color--blue-100);
}

/* -------------------------------------------------------------------------
 * Better Docs — StoreCrafted alignment
 * Scoped under .sc-docs (theme FSE templates). Overrides plugin chrome
 * colours (#528ffe, #19ca9e, #24cc8f) with theme tokens.
 * ---------------------------------------------------------------------- */

.sc-docs-archive-hero {
	border-bottom: 1px solid var(--wp--preset--color--slate-200);
}

/* Search */
.sc-docs .betterdocs-search-form-wrapper,
.sc-docs .betterdocs-searchbox-wrapper {
	background: transparent !important;
	padding: 0 !important;
	margin: 0 0 0.5rem !important;
	border: 0 !important;
}

.sc-docs .betterdocs-search-layout-1,
.sc-docs .betterdocs-search-modal-layout-1 .betterdocs-search-layout-1 {
	background: transparent !important;
	/* Kill plugin 57px top / 50px padding; keep modest top only. */
	margin: 0.75rem 0 0 !important;
	padding: 0 !important;
	align-items: stretch !important;
	text-align: left !important;
}

/* Explicit space under search — do not rely on blockGap (often collapsed / overridden). */
.sc-docs .sc-docs-search {
	margin-bottom: 3rem !important;
}

.sc-docs .betterdocs-searchform {
	background: var(--wp--preset--color--white) !important;
	border: 1px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	padding: 0.85rem 1rem !important;
	box-shadow: none !important;
	transition: border-color 150ms ease, box-shadow 150ms ease;
}

.sc-docs .betterdocs-searchform:focus-within {
	border-color: var(--wp--preset--color--accent) !important;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--wp--preset--color--accent) 18%, transparent);
}

.sc-docs .betterdocs-searchform .betterdocs-search-field {
	color: var(--wp--preset--color--slate-900) !important;
	font-family: var(--wp--preset--font-family--plus-jakarta-sans);
	font-size: 0.9375rem !important;
}

.sc-docs .betterdocs-searchform .betterdocs-search-field::placeholder {
	color: var(--wp--preset--color--slate-400) !important;
}

.sc-docs .betterdocs-searchform svg.docs-search-icon {
	fill: var(--wp--preset--color--slate-400) !important;
	width: 1.25rem !important;
	height: auto !important;
	opacity: 1 !important;
	margin-left: 0 !important;
}

.sc-docs .betterdocs-searchform .search-submit,
.sc-docs .betterdocs-searchform .betterdocs-search-submit {
	background: var(--wp--preset--color--accent) !important;
	border-radius: 6px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	font-weight: 600 !important;
	font-size: 0.875rem !important;
}

.sc-docs .betterdocs-searchform .search-submit:hover,
.sc-docs .betterdocs-searchform .betterdocs-search-submit:hover {
	background: var(--wp--preset--color--accent-hover) !important;
}

.sc-docs .betterdocs-live-search .docs-search-result {
	border: 1px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	box-shadow: 0 12px 32px color-mix(in srgb, var(--wp--preset--color--slate-900) 8%, transparent);
}

.sc-docs .betterdocs-live-search .docs-search-result li a,
.sc-docs .betterdocs-live-search .docs-search-result li a span {
	color: var(--wp--preset--color--slate-700) !important;
}

.sc-docs .betterdocs-live-search .docs-search-result li:hover {
	background: var(--wp--preset--color--blue-50) !important;
}

/*
 * Search modal is portaled to body (outside .sc-docs). Restyle Better Docs teal.
 */
.betterdocs-search-wrapper .betterdocs-search-info-tab .betterdocs-tab-items.active {
	border-bottom-color: var(--wp--preset--color--accent) !important;
}

.betterdocs-search-wrapper .betterdocs-search-info-tab .betterdocs-tab-items.active span {
	color: var(--wp--preset--color--accent) !important;
}

.betterdocs-search-wrapper .betterdocs-search-info-tab .betterdocs-tab-items.active span svg path {
	fill: var(--wp--preset--color--accent) !important;
}

.betterdocs-search-wrapper .betterdocs-search-item-content .betterdocs-search-item-list:hover,
.betterdocs-search-wrapper .betterdocs-search-item-content .betterdocs-search-item-list.active,
.betterdocs-search-wrapper .betterdocs-search-item-content .betterdocs-search-item-list:focus {
	background: var(--wp--preset--color--blue-50) !important;
}

.betterdocs-search-wrapper .betterdocs-search-item-content .betterdocs-search-item-list:hover .betterdocs-search-item-content-title,
.betterdocs-search-wrapper .betterdocs-search-item-content .betterdocs-search-item-list.active .betterdocs-search-item-content-title {
	color: var(--wp--preset--color--accent) !important;
}

.betterdocs-search-wrapper .betterdocs-search-item-list svg path,
.betterdocs-search-wrapper .betterdocs-search-item-list svg [fill]:not([fill="none"]) {
	fill: var(--wp--preset--color--slate-400) !important;
}

.betterdocs-search-wrapper .betterdocs-search-item-list:hover svg path,
.betterdocs-search-wrapper .betterdocs-search-item-list.active svg path {
	fill: var(--wp--preset--color--accent) !important;
}

/* Category grid cards */
.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-grid-inner-wrapper {
	gap: 1.25rem !important;
	--column: 3;
	--gap: 20;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-single-category-inner {
	background: var(--wp--preset--color--white) !important;
	border: 1px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	overflow: hidden;
	height: 100%;
	transition: border-color 150ms ease, box-shadow 150ms ease;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-single-category-wrapper:hover .betterdocs-single-category-inner {
	border-color: var(--wp--preset--color--blue-200) !important;
	box-shadow: 0 10px 28px color-mix(in srgb, var(--wp--preset--color--slate-900) 6%, transparent);
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-header {
	background: var(--wp--preset--color--white) !important;
	padding: 1.15rem 1.25rem 0.85rem !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-header-inner {
	border-bottom: 1px solid var(--wp--preset--color--slate-200) !important;
	padding-bottom: 0.85rem !important;
	gap: 0.65rem;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-title,
.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-title a {
	color: var(--wp--preset--color--slate-900) !important;
	font-family: var(--wp--preset--font-family--plus-jakarta-sans);
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em;
	line-height: 1.3 !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-title a:hover {
	color: var(--wp--preset--color--accent) !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-items-counts {
	background: var(--wp--preset--color--blue-50) !important;
	padding: 0.2rem !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-items-counts span {
	background: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--white) !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	min-height: 1.65rem;
	min-width: 1.65rem;
	height: 1.65rem !important;
	width: 1.65rem !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-icon .betterdocs-folder-icon,
.sc-docs .betterdocs-category-grid-wrapper .betterdocs-category-icon img {
	width: 1.35rem !important;
	height: 1.35rem !important;
	background: var(--wp--preset--color--slate-100) !important;
	border-radius: 6px !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-body {
	background: var(--wp--preset--color--white) !important;
	padding: 0.65rem 1.15rem 0.35rem !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-articles-list li a {
	color: var(--wp--preset--color--slate-600) !important;
	font-size: 0.9rem !important;
	font-weight: 500;
	line-height: 1.45 !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-articles-list li a:hover {
	color: var(--wp--preset--color--accent) !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-articles-list li svg,
.sc-docs .betterdocs-category-grid-wrapper .betterdocs-articles-list li i {
	fill: var(--wp--preset--color--slate-400) !important;
	color: var(--wp--preset--color--slate-400) !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-footer {
	padding: 0.5rem 1.25rem 1.15rem !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-footer a,
.sc-docs .betterdocs-category-grid-wrapper .betterdocs-footer button {
	border: 0 !important;
	border-radius: 6px !important;
	background: transparent !important;
	color: var(--wp--preset--color--accent) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
	padding: 0.35rem 0 !important;
}

.sc-docs .betterdocs-category-grid-wrapper .betterdocs-footer a:hover,
.sc-docs .betterdocs-category-grid-wrapper .betterdocs-footer button:hover {
	background: transparent !important;
	color: var(--wp--preset--color--accent-hover) !important;
}

/* Sidebar */
.sc-docs .betterdocs-sidebar,
.sc-docs .betterdocs-sidebar .betterdocs-sidebar-content {
	background: var(--wp--preset--color--white) !important;
	width: 100% !important;
	max-width: none !important;
}

.sc-docs .betterdocs-sidebar.betterdocs-sidebar-layout-7 .betterdocs-sidebar-content {
	padding: 0 !important;
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
}

.sc-docs .betterdocs-sidebar .betterdocs-sidebar-content .betterdocs-category-grid-wrapper .betterdocs-category-grid-inner-wrapper .betterdocs-single-category-wrapper {
	margin-top: 0 !important;
	margin-bottom: 0.75rem !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-sidebar-content .betterdocs-category-grid-wrapper .betterdocs-category-grid-inner-wrapper .betterdocs-single-category-wrapper:last-child {
	margin-bottom: 0 !important;
}

.sc-docs .betterdocs-sidebar.betterdocs-sidebar-layout-7 .betterdocs-category-header {
	padding: 0.75rem 0.85rem !important;
	background: transparent !important;
	border-radius: 0;
}

.sc-docs .betterdocs-sidebar .betterdocs-category-header-inner,
.sc-docs .betterdocs-sidebar .betterdocs-category-header {
	border-bottom: 0 !important;
	box-shadow: none !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-category-header,
.sc-docs #betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-category-header {
	background: var(--wp--preset--color--blue-50) !important;
	border-left: 3px solid var(--wp--preset--color--accent) !important;
	border-right: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-body,
.sc-docs .betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-single-category-inner {
	background: var(--wp--preset--color--blue-50) !important;
	border-top: 0 !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-category-title,
.sc-docs .betterdocs-sidebar .betterdocs-category-title a {
	color: var(--wp--preset--color--slate-800) !important;
	font-size: 0.84rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: -0.01em;
}

.sc-docs .betterdocs-sidebar .betterdocs-folder-icon {
	width: 1.1rem !important;
	height: 1.1rem !important;
	background: var(--wp--preset--color--slate-100) !important;
	border-radius: 4px !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-category-items-counts,
.sc-docs .betterdocs-sidebar .betterdocs-category-items-counts span {
	background: var(--wp--preset--color--slate-100) !important;
	color: var(--wp--preset--color--slate-600) !important;
	font-size: 0.7rem !important;
	font-weight: 600 !important;
}

/* Active category sits on blue-50 — use accent badge for clear contrast. */
.sc-docs .betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-category-items-counts,
.sc-docs .betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-category-items-counts span,
.sc-docs #betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-category-items-counts,
.sc-docs #betterdocs-sidebar .betterdocs-single-category-wrapper.active .betterdocs-category-items-counts span {
	background: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--white) !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-articles-list li a {
	color: var(--wp--preset--color--slate-600) !important;
	font-size: 0.8125rem !important;
	border-radius: 6px !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-articles-list li a:hover,
.sc-docs .betterdocs-sidebar .betterdocs-articles-list li a.active,
.sc-docs .betterdocs-sidebar.betterdocs-sidebar-layout-7 .betterdocs-articles-list li a:hover,
.sc-docs .betterdocs-sidebar.betterdocs-sidebar-layout-7 .betterdocs-articles-list li a.active,
.sc-docs .betterdocs-sidebar.betterdocs-sidebar-layout-7 .betterdocs-articles-list li a:focus {
	background: var(--wp--preset--color--blue-50) !important;
	color: var(--wp--preset--color--accent) !important;
}

.sc-docs .betterdocs-sidebar .betterdocs-articles-list li a.active:before,
.sc-docs .betterdocs-sidebar.betterdocs-sidebar-layout-7 .betterdocs-articles-list li a.active:before {
	background: var(--wp--preset--color--accent) !important;
}

/* Breadcrumb */
.sc-docs .betterdocs-breadcrumb .betterdocs-breadcrumb-item a,
.sc-docs .betterdocs-breadcrumb .betterdocs-breadcrumb-item span,
.sc-docs .betterdocs-breadcrumb .breadcrumb-delimiter-icon {
	color: var(--wp--preset--color--slate-500) !important;
	font-size: 0.75rem !important;
}

.sc-docs .betterdocs-breadcrumb.layout-2 ul.betterdocs-breadcrumb-list {
	background: var(--wp--preset--color--slate-50) !important;
	border-radius: 6px;
	padding: 0.45rem 0.75rem;
}

/* Article title + content */
.sc-docs--single .wp-block-post-title {
	text-transform: none !important;
	color: var(--wp--preset--color--slate-900);
}

.sc-docs .reading-time.betterdocs {
	background: var(--wp--preset--color--slate-50) !important;
	border-radius: 6px !important;
	color: var(--wp--preset--color--slate-500) !important;
	margin-bottom: 1.5rem !important;
}

.sc-docs .betterdocs-entry-content,
.sc-docs #betterdocs-single-content {
	color: var(--wp--preset--color--slate-600) !important;
	font-size: 1.05rem;
	line-height: 1.7;
}

.sc-docs #betterdocs-single-content h2,
.sc-docs #betterdocs-single-content h3,
.sc-docs #betterdocs-single-content h4 {
	color: var(--wp--preset--color--slate-900) !important;
	font-family: var(--wp--preset--font-family--plus-jakarta-sans);
	letter-spacing: -0.02em;
	font-weight: 750;
}

.sc-docs #betterdocs-single-content a {
	color: var(--wp--preset--color--accent);
}

.sc-docs #betterdocs-single-content a:hover {
	color: var(--wp--preset--color--accent-hover);
}

.sc-docs #betterdocs-single-content code,
.sc-docs #betterdocs-single-content pre {
	border-radius: 6px;
}

.sc-docs .update-date {
	color: var(--wp--preset--color--slate-500) !important;
	border-color: var(--wp--preset--color--slate-200) !important;
	font-size: 0.8125rem !important;
}

.sc-docs .betterdocs-tags a {
	background: var(--wp--preset--color--slate-100) !important;
	color: var(--wp--preset--color--slate-600) !important;
	border-radius: 6px !important;
	font-size: 0.8125rem !important;
}

/* Reactions — removed from single-docs template; hide if plugin still injects */
.sc-docs .betterdocs-article-reactions,
.sc-docs .betterdocs-article-reactions-box {
	display: none !important;
}

/* Doc navigation */
.sc-docs .docs-navigation {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 1rem !important;
	background: var(--wp--preset--color--slate-50) !important;
	border: 1px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	padding: 0.85rem 1rem !important;
	margin-top: 1.75rem !important;
}

.sc-docs .docs-navigation a {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.35rem !important;
	width: auto !important;
	max-width: 48% !important;
	margin: 0 !important;
	color: var(--wp--preset--color--slate-800) !important;
	font-size: 0.875rem !important;
	font-weight: 600;
	text-decoration: none !important;
}

.sc-docs .docs-navigation a[rel="prev"] {
	justify-content: flex-start !important;
	text-align: left !important;
	margin-right: auto !important;
}

.sc-docs .docs-navigation a[rel="next"] {
	justify-content: flex-end !important;
	text-align: right !important;
	margin-left: auto !important;
}

.sc-docs .docs-navigation a:hover {
	color: var(--wp--preset--color--accent) !important;
}

.sc-docs .docs-navigation a svg {
	flex-shrink: 0;
	width: 1.1rem !important;
	height: auto !important;
	fill: var(--wp--preset--color--slate-500) !important;
}

/* Table of contents */
.sc-docs .betterdocs-toc,
.sc-docs .sticky-toc-container .betterdocs-toc {
	background: var(--wp--preset--color--white) !important;
	border: 1px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	padding: 1.1rem 1rem !important;
}

.sc-docs .betterdocs-toc > .toc-title,
.sc-docs .sticky-toc-container .toc-title {
	color: var(--wp--preset--color--slate-500) !important;
	font-size: 0.7rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	margin-bottom: 0.75rem !important;
}

.sc-docs .betterdocs-toc .toc-list li,
.sc-docs .sticky-toc-container .toc-list li,
.sc-docs .betterdocs-toc li[class*="betterdocs-toc-heading"] {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.5 !important;
	border: 0 !important;
}

.sc-docs .betterdocs-toc .toc-list li a,
.sc-docs .sticky-toc-container .toc-list li a {
	color: var(--wp--preset--color--slate-600) !important;
	font-size: 0.8125rem !important;
	line-height: 1.5 !important;
	display: block !important;
	padding: 0.45rem 0.5rem !important;
	border: 0 !important;
	border-radius: 4px;
	box-shadow: none !important;
}

.sc-docs .betterdocs-toc .toc-list ul {
	margin-top: 0.15rem !important;
	margin-bottom: 0.25rem !important;
}

.sc-docs .betterdocs-toc .toc-list li a:hover,
.sc-docs .betterdocs-toc .toc-list li a.active {
	color: var(--wp--preset--color--accent) !important;
}

.sc-docs .betterdocs-toc ul.betterdocs-hierarchial-toc {
	border-left-color: var(--wp--preset--color--slate-200) !important;
}

.sc-docs .betterdocs-toc ul.betterdocs-hierarchial-toc a.active:after {
	background: var(--wp--preset--color--accent) !important;
	border-color: var(--wp--preset--color--accent) !important;
}

/* Category archive header + list */
.sc-docs .betterdocs-main-category-folder {
	background: var(--wp--preset--color--slate-50) !important;
	border: 1px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	padding: 1.35rem 1.5rem !important;
	margin-bottom: 1.75rem !important;
}

.sc-docs .betterdocs-main-category-folder .betterdocs-folder-icon {
	width: 2rem !important;
	height: 2rem !important;
}

.sc-docs .betterdocs-main-category-folder .betterdocs-category-title {
	color: var(--wp--preset--color--slate-900) !important;
	font-size: clamp(1.5rem, 3vw, 2rem) !important;
	font-weight: 800 !important;
	letter-spacing: -0.03em;
	line-height: 1.15 !important;
}

.sc-docs .betterdocs-main-category-folder .betterdocs-sub-category-items-counts {
	color: var(--wp--preset--color--slate-500) !important;
	font-size: 0.875rem !important;
}

.sc-docs .betterdocs-title-excerpt-list .betterdocs-entry-title a,
.sc-docs .doc-category-layout-7 .betterdocs-entry-title a {
	color: var(--wp--preset--color--slate-900) !important;
	font-size: 1.125rem !important;
	font-weight: 700 !important;
}

.sc-docs .betterdocs-title-excerpt-list .betterdocs-entry-title a:hover {
	color: var(--wp--preset--color--accent) !important;
}

.sc-docs .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list:hover {
	background: var(--wp--preset--color--blue-50) !important;
	border-color: var(--wp--preset--color--blue-200) !important;
}

.sc-docs .betterdocs-title-excerpt-list p,
.sc-docs .doc-category-layout-7 .betterdocs-title-excerpt-list p {
	color: var(--wp--preset--color--slate-600) !important;
}

.sc-docs .betterdocs-title-excerpt-list .update-date {
	background: var(--wp--preset--color--blue-50) !important;
	color: var(--wp--preset--color--blue-700) !important;
	border-radius: 6px !important;
}

/* Layout helpers */
.sc-docs-sidebar-col .betterdocs-sidebar {
	position: sticky;
	top: 6.5rem;
}

.sc-docs-toc-col .betterdocs-toc-block,
.sc-docs-toc-col .betterdocs-toc {
	position: sticky;
	top: 6.5rem;
}

@media (max-width: 781px) {
	.sc-docs-sidebar-col .betterdocs-sidebar,
	.sc-docs-toc-col .betterdocs-toc-block,
	.sc-docs-toc-col .betterdocs-toc {
		position: static;
	}

	.sc-docs .betterdocs-sidebar.betterdocs-sidebar-layout-7 .betterdocs-sidebar-content {
		margin-bottom: 1rem;
	}
}

/* --------------------------------------------------------------------------
   My Account — WooCommerce shortcode layout (not expressible in blocks alone)
   -------------------------------------------------------------------------- */

.sc-account-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(90% 80% at 100% 0%, rgba(147, 197, 253, 0.4) 0%, transparent 55%),
		radial-gradient(70% 60% at 0% 100%, rgba(219, 234, 254, 0.7) 0%, transparent 50%),
		linear-gradient(180deg, #f0f7ff 0%, var(--wp--preset--color--white) 70%);
}

.sc-account-hero h1 {
	max-width: 18ch;
	text-wrap: balance;
}

/* Hide endpoint-aware lead when the current view omits copy (detail endpoints). */
.sc-account-hero .sc-account-hero__lead:empty {
	display: none;
}

.sc-account .entry-content > p:empty {
	display: none;
}

/* Logged-in: sidebar nav + content panel.
 * WooCommerce block-theme CSS caps main .woocommerce at 1000px — lift that so
 * the content panel can use the full alignwide account width. */
.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
	display: grid;
	grid-template-columns: minmax(0, 14.5rem) minmax(0, 1fr);
	gap: clamp(1.25rem, 3vw, 2rem);
	align-items: start;
	width: 100%;
	max-width: none;
}

/* Override WooCommerce float/width rules that stack nav + content vertically */
.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation,
.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content {
	float: none !important;
	width: 100% !important;
	min-width: 0;
	max-width: none;
}

.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation {
	grid-column: 1;
	grid-row: 1;
}

.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content {
	grid-column: 2;
	grid-row: 1;
}

.sc-account .woocommerce-MyAccount-navigation {
	position: sticky;
	top: 5.5rem;
}

.admin-bar .sc-account .woocommerce-MyAccount-navigation {
	top: calc(5.5rem + 32px);
}

.sc-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0.4rem;
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	box-shadow: var(--wp--preset--shadow--sm, 0 1px 3px rgba(15, 23, 42, 0.06));
}

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

.sc-account .woocommerce-MyAccount-navigation-link a {
	display: block;
	padding: 0.6rem 0.8rem;
	border-radius: 6px;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--wp--preset--color--slate-600);
	text-decoration: none;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.sc-account .woocommerce-MyAccount-navigation-link a:hover {
	background: var(--wp--preset--color--blue-50);
	color: var(--wp--preset--color--accent);
}

.sc-account .woocommerce-MyAccount-navigation-link.is-active a {
	background: var(--wp--preset--color--blue-50);
	color: var(--wp--preset--color--accent);
}

.sc-account .woocommerce-MyAccount-navigation-link--customer-logout a {
	color: var(--wp--preset--color--slate-500);
}

.sc-account .woocommerce-MyAccount-navigation-link--customer-logout a:hover {
	background: var(--wp--preset--color--slate-50);
	color: var(--wp--preset--color--slate-800);
}

.sc-account .woocommerce-MyAccount-content {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	padding: clamp(1.25rem, 3vw, 2rem);
	box-shadow: var(--wp--preset--shadow--sm, 0 1px 3px rgba(15, 23, 42, 0.06));
	min-width: 0;
	box-sizing: border-box;
}

/* Dashboard: drop the outer content card — inner cards provide structure */
.sc-account .woocommerce-MyAccount-content:has(.sc-dashboard) {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
	border-radius: 0;
}

.sc-dashboard {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.sc-dashboard__greeting {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.5rem 1.5rem;
	padding: 1.15rem 1.25rem;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	box-shadow: var(--wp--preset--shadow--sm, 0 1px 3px rgba(15, 23, 42, 0.06));
}

.sc-account .woocommerce-MyAccount-content .sc-dashboard__greeting h2 {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: var(--wp--preset--color--slate-900);
}

.sc-dashboard__greeting p {
	margin: 0.2rem 0 0;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--slate-600);
	max-width: 40rem;
}

.sc-dashboard__greeting-meta {
	margin: 0 !important;
	font-size: 0.8125rem;
	font-weight: 700;
	color: var(--wp--preset--color--slate-500);
	letter-spacing: 0.02em;
}

.sc-dashboard__card {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	box-shadow: var(--wp--preset--shadow--sm, 0 1px 3px rgba(15, 23, 42, 0.06));
	padding: 1.35rem 1.4rem 1.45rem;
}

.sc-account .woocommerce-MyAccount-content .sc-dashboard__label {
	margin: 0 0 0.4rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	line-height: 1.3;
	color: var(--wp--preset--color--accent);
}

.sc-dashboard__card > p {
	margin: 0.45rem 0 0;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--slate-600);
}

.sc-dashboard__steps {
	list-style: none;
	margin: 1.15rem 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	counter-reset: sc-dash-step;
}

.sc-dashboard__steps li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.75rem;
	align-items: start;
	counter-increment: sc-dash-step;
}

.sc-dashboard__steps li::before {
	content: counter(sc-dash-step);
	display: grid;
	place-items: center;
	width: 1.65rem;
	height: 1.65rem;
	margin-top: 0.05rem;
	border-radius: 50%;
	background: var(--wp--preset--color--blue-50);
	color: var(--wp--preset--color--blue-700, #1d4ed8);
	font-size: 0.75rem;
	font-weight: 800;
	flex-shrink: 0;
}

.sc-dashboard__steps strong {
	display: block;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--slate-900);
}

.sc-dashboard__steps span {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--slate-600);
}

.sc-dashboard__cta {
	margin-top: 1.25rem;
}

.sc-dashboard__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.sc-dashboard__link-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	box-shadow: var(--wp--preset--shadow--sm, 0 1px 3px rgba(15, 23, 42, 0.06));
	padding: 1.35rem 1.4rem 1.45rem;
	text-decoration: none;
	color: inherit;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.sc-dashboard__link-card:hover {
	border-color: var(--wp--preset--color--blue-300, #93c5fd);
	box-shadow: var(--wp--preset--shadow--md, 0 4px 16px rgba(15, 23, 42, 0.08));
	text-decoration: none;
}

.sc-dashboard__link-icon {
	display: grid;
	place-items: center;
	width: 2.25rem;
	height: 2.25rem;
	margin-bottom: 0.9rem;
	border-radius: 6px;
	background: var(--wp--preset--color--blue-50);
	color: var(--wp--preset--color--accent);
}

.sc-account .woocommerce-MyAccount-content .sc-dashboard__link-card h3 {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: var(--wp--preset--color--slate-900);
}

.sc-dashboard__link-card p {
	margin: 0.4rem 0 0;
	flex: 1;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--slate-600);
}

.sc-dashboard__link-action {
	display: inline-flex;
	align-items: center;
	margin-top: 1.1rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--wp--preset--color--accent);
}

.sc-dashboard__link-card:hover .sc-dashboard__link-action {
	color: var(--wp--preset--color--accent-hover, #1d4ed8);
}

.sc-account .woocommerce-MyAccount-content > .woocommerce-info:has(+ .sc-dashboard),
.sc-account .woocommerce-MyAccount-content > .woocommerce-message:has(+ .sc-dashboard),
.sc-account .woocommerce-MyAccount-content > .woocommerce-error:has(+ .sc-dashboard) {
	margin-bottom: 1.25rem;
}

.sc-account .woocommerce-MyAccount-content > p,
.sc-account .woocommerce-MyAccount-content > .woocommerce-info,
.sc-account .woocommerce-MyAccount-content > .woocommerce-message {
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--wp--preset--color--slate-600);
}

.sc-account .woocommerce-MyAccount-content > p:first-child {
	margin-top: 0;
}

.sc-account .woocommerce-MyAccount-content mark {
	background: transparent;
	color: var(--wp--preset--color--slate-900);
	font-weight: 700;
}

/* Section headings inside account content */
.sc-account .woocommerce-MyAccount-content h2,
.sc-account .woocommerce-MyAccount-content h3,
.sc-account .woocommerce-order-details__title,
.sc-account .woocommerce-column__title,
.sc-account .woocommerce-Address-title h2,
.sc-account .woocommerce-EditAccountForm legend {
	margin: 0 0 1rem;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: var(--wp--preset--color--slate-900);
}

/* Milo list heading duplicates the page hero (“Subscriptions”). Keep detail
 * headings (Order details, Subscription Items) — only hide when the list table
 * is a direct child of the account content panel. */
.sc-account .woocommerce-MyAccount-content:has(> table.my_account_subscriptions) > h2 {
	display: none;
}

.sc-account .woocommerce-EditAccountForm legend {
	padding: 0;
	border: 0;
}

/* Tables — orders, subscriptions, downloads, licences */
.sc-account .shop_table,
.sc-account .woocommerce-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 0.875rem;
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	overflow: hidden;
	background: var(--wp--preset--color--white);
	margin: 0 0 1.5rem;
}

.sc-account .shop_table thead th,
.sc-account .woocommerce-table thead th {
	background: var(--wp--preset--color--slate-50);
	padding: 0.8rem 1rem;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--slate-500);
	border-bottom: 1px solid var(--wp--preset--color--slate-200);
	text-align: left;
}

.sc-account .shop_table tbody td,
.sc-account .shop_table tbody th,
.sc-account .woocommerce-table tbody td,
.sc-account .woocommerce-table tbody th {
	padding: 0.85rem 1rem;
	border-bottom: 1px solid var(--wp--preset--color--slate-100);
	color: var(--wp--preset--color--slate-600);
	vertical-align: middle;
}

.sc-account .shop_table tbody tr:last-child td,
.sc-account .shop_table tbody tr:last-child th,
.sc-account .woocommerce-table tbody tr:last-child td,
.sc-account .woocommerce-table tbody tr:last-child th {
	border-bottom: 0;
}

.sc-account .shop_table tbody tr:hover td,
.sc-account .shop_table tbody tr:hover th,
.sc-account .woocommerce-table tbody tr:hover td,
.sc-account .woocommerce-table tbody tr:hover th {
	background: var(--wp--preset--color--slate-50);
}

.sc-account .shop_table a,
.sc-account .woocommerce-table a {
	font-weight: 600;
	text-decoration: none;
}

.sc-account .shop_table a:hover,
.sc-account .woocommerce-table a:hover {
	text-decoration: underline;
}

.sc-account .woocommerce-Price-amount {
	font-weight: 700;
	color: var(--wp--preset--color--slate-900);
}

/* Order status row accents */
.sc-account .woocommerce-orders-table__row--status-completed td[data-title="Status"],
.sc-account .woocommerce-orders-table__row--status-active td[data-title="Status"] {
	color: var(--wp--preset--color--green-600);
	font-weight: 600;
}

.sc-account .woocommerce-orders-table__row--status-processing td[data-title="Status"] {
	color: var(--wp--preset--color--blue-700);
	font-weight: 600;
}

.sc-account .woocommerce-orders-table__row--status-on-hold td[data-title="Status"],
.sc-account .woocommerce-orders-table__row--status-pending td[data-title="Status"] {
	color: var(--wp--preset--color--amber-600);
	font-weight: 600;
}

.sc-account .woocommerce-orders-table__row--status-cancelled td[data-title="Status"],
.sc-account .woocommerce-orders-table__row--status-failed td[data-title="Status"] {
	color: var(--wp--preset--color--slate-500);
	font-weight: 600;
}

/* Buttons inside account */
.sc-account .button,
.sc-account .woocommerce-button,
.sc-account .wp-element-button {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.25rem;
	padding: 0.55rem 1rem !important;
	/* Transparent border keeps primary height aligned with secondary/quiet outlines */
	border: 1.5px solid transparent !important;
	border-radius: 6px !important;
	background: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--white) !important;
	font-family: inherit;
	font-size: 0.8125rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.sc-account .button:hover,
.sc-account .woocommerce-button:hover,
.sc-account .wp-element-button:hover {
	background: var(--wp--preset--color--accent-hover) !important;
	color: var(--wp--preset--color--white) !important;
}

/* Secondary — WC `button-secondary`, Milo/WCS BEM `button--secondary`, View actions */
.sc-account .button.button-secondary,
.sc-account .button.button--secondary,
.sc-account .woocommerce-button.button--secondary,
.sc-account .button.woocommerce-button--secondary,
.sc-account .button.button-primary + .button-secondary,
.sc-account a.button-secondary,
.sc-account a.button--secondary,
.sc-account .button.view,
.sc-account summary.button {
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--accent) !important;
	border: 1.5px solid var(--wp--preset--color--blue-200) !important;
}

.sc-account .button.button-secondary:hover,
.sc-account .button.button--secondary:hover,
.sc-account .woocommerce-button.button--secondary:hover,
.sc-account .button.woocommerce-button--secondary:hover,
.sc-account a.button-secondary:hover,
.sc-account a.button--secondary:hover,
.sc-account .button.view:hover,
.sc-account summary.button:hover {
	background: var(--wp--preset--color--blue-50) !important;
	border-color: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--accent-hover) !important;
}

/* Quiet / destructive — Cancel row actions + Milo “Yes, Cancel” (anchor .alt only) */
.sc-account .button.cancel,
.sc-account .milo-subscriptions-subscription-details a.button.alt {
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--slate-600) !important;
	border: 1.5px solid var(--wp--preset--color--slate-300) !important;
}

.sc-account .button.cancel:hover,
.sc-account .milo-subscriptions-subscription-details a.button.alt:hover {
	background: var(--wp--preset--color--slate-50) !important;
	border-color: var(--wp--preset--color--slate-400) !important;
	color: var(--wp--preset--color--slate-800) !important;
}

.sc-account .shop_table .button,
.sc-account .woocommerce-table .button {
	white-space: nowrap;
	min-height: 0;
	padding: 0.5rem 0.65rem !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
}

.sc-account .woocommerce-orders-table__cell-order-actions,
.sc-account .woocommerce-table__cell-order-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
}

/* Notices */
.sc-account .woocommerce-message,
.sc-account .woocommerce-info,
.sc-account .woocommerce-error {
	position: relative;
	margin: 0 0 1.25rem;
	padding: 0.85rem 1rem 0.85rem 2.75rem;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--slate-200);
	font-size: 0.875rem;
	line-height: 1.55;
	list-style: none;
}

.sc-account .woocommerce-message::before,
.sc-account .woocommerce-info::before,
.sc-account .woocommerce-error::before {
	top: 0.9rem;
	left: 0.95rem;
}

.sc-account .woocommerce-message {
	background: var(--wp--preset--color--blue-50);
	border-color: var(--wp--preset--color--blue-200);
	color: var(--wp--preset--color--slate-700);
}

.sc-account .woocommerce-info {
	background: var(--wp--preset--color--slate-50);
	color: var(--wp--preset--color--slate-600);
}

.sc-account .woocommerce-error {
	background: #fef2f2;
	border-color: #fecaca;
	color: #991b1b;
}

.sc-account .wc-block-components-notice-banner {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	margin: 0 0 1.25rem;
	padding: 0.85rem 1rem;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--blue-200);
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--slate-600);
	font-size: 0.8125rem;
	line-height: 1.55;
	box-shadow: var(--wp--preset--shadow--sm, 0 1px 3px rgba(15, 23, 42, 0.06));
}

.sc-account .wc-block-components-notice-banner svg {
	flex-shrink: 0;
	width: 1.125rem;
	height: 1.125rem;
	fill: var(--wp--preset--color--accent);
}

.sc-account .wc-block-components-notice-banner__content {
	display: flex;
	flex: 1;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-width: 0;
}

.sc-account .wc-block-components-notice-banner__content .button {
	order: 2;
	flex-shrink: 0;
	min-height: 0;
	margin: 0;
	padding: 0.4rem 0.75rem !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	white-space: nowrap;
}

@media (max-width: 640px) {
	.sc-account .wc-block-components-notice-banner {
		align-items: flex-start;
	}

	.sc-account .wc-block-components-notice-banner__content {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.65rem;
	}

	.sc-account .wc-block-components-notice-banner__content .button {
		order: 0;
	}
}

/* Address cards */
.sc-account .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
	width: 100%;
	max-width: 100%;
	margin-top: 1rem;
}

.sc-account .woocommerce-Addresses .woocommerce-Address,
.sc-account .woocommerce-Addresses .u-column1,
.sc-account .woocommerce-Addresses .u-column2 {
	float: none !important;
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.sc-account .woocommerce-Addresses .u-column1,
.sc-account .woocommerce-Addresses .col-1 {
	grid-column: 1;
	grid-row: 1;
}

.sc-account .woocommerce-Addresses .u-column2,
.sc-account .woocommerce-Addresses .col-2 {
	grid-column: 2;
	grid-row: 1;
}

.sc-account .woocommerce-Address {
	background: var(--wp--preset--color--slate-50);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	padding: 1.25rem;
}

.sc-account .woocommerce-Address-title {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.75rem;
}

/* Beat WooCommerce clearfix on .title (otherwise ::before becomes a flex item + gap) */
.woocommerce-account .sc-account .addresses .title::before,
.woocommerce-account .sc-account .addresses .title::after {
	content: none !important;
	display: none !important;
}

.sc-account .woocommerce-Address-title h2 {
	margin: 0;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	flex: 1;
	min-width: 0;
}

.sc-account .woocommerce-Address-title .edit {
	flex-shrink: 0;
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--wp--preset--color--accent);
	text-decoration: none;
	white-space: nowrap;
}

.sc-account .woocommerce-Address-title .edit:hover {
	color: var(--wp--preset--color--accent-hover);
	text-decoration: underline;
}

.sc-account .woocommerce-Address address,
.sc-account .milo-subscriptions-shipping-address {
	margin: 0 0 1rem;
	font-style: normal;
	font-size: 0.9rem;
	line-height: 1.65;
	color: var(--wp--preset--color--slate-600);
}

.sc-account .milo-subscriptions-change-address {
	margin-top: 0;
}

/* Order details view */
.sc-account .woocommerce-order-details,
.sc-account .woocommerce-customer-details {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--wp--preset--color--slate-200);
}

.sc-account .woocommerce-order-details__title,
.sc-account .woocommerce-column__title {
	margin-bottom: 1rem;
}

.sc-account .woocommerce-order-details header {
	margin: 1.5rem 0 1rem;
}

.sc-account .woocommerce-order-details header h2 {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: var(--wp--preset--color--slate-900);
}

.sc-account .order-again {
	margin-top: 1.25rem;
}

.sc-account .order-again .button {
	min-height: 0;
	padding: 0.45rem 0.85rem !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
}

.sc-account .woocommerce-customer-details address {
	box-sizing: border-box;
	width: 100%;
	max-width: 22rem;
	margin: 0;
	/* Extra left padding so the email/phone icon can sit inset without escaping the border. */
	padding: 0.85rem 1rem 0.85rem 2.35rem;
	border: 1.5px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	background: var(--wp--preset--color--slate-50);
	font-style: normal;
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--wp--preset--color--slate-600);
}

.sc-account .woocommerce-customer-details .woocommerce-column__title {
	margin-bottom: 0.65rem;
}

.sc-account .woocommerce-customer-details--email,
.sc-account .woocommerce-customer-details--phone {
	display: block;
	position: relative;
	margin: 0.65rem 0 0;
	padding: 0 !important;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--wp--preset--color--slate-800);
}

/*
 * Replace Woo’s icon-font glyphs (negative side bearings + -1.5em margin escape
 * the card). Park the SVG in the address left padding so text aligns with lines above.
 */
.sc-account .woocommerce .woocommerce-customer-details .woocommerce-customer-details--email::before,
.sc-account .woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone::before {
	content: "" !important;
	position: absolute !important;
	top: 0.2em !important;
	left: -1.35em !important;
	width: 0.875em;
	height: 0.875em;
	margin: 0 !important;
	background-color: currentColor;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.sc-account .woocommerce .woocommerce-customer-details .woocommerce-customer-details--email::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M2 6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6zm2 0v.28l8 5.14 8-5.14V6H4zm16 2.47-7.45 4.79a1 1 0 0 1-1.1 0L4 8.47V18h16V8.47z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M2 6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6zm2 0v.28l8 5.14 8-5.14V6H4zm16 2.47-7.45 4.79a1 1 0 0 1-1.1 0L4 8.47V18h16V8.47z'/%3E%3C/svg%3E");
}

.sc-account .woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M6.6 3h2.2c.5 0 .9.3 1 .8l.7 3a1 1 0 0 1-.3 1l-1.4 1.4a12.1 12.1 0 0 0 5.3 5.3l1.4-1.4a1 1 0 0 1 1-.3l3 .7c.5.1.8.5.8 1v2.2a1 1 0 0 1-1 1A15.6 15.6 0 0 1 5.6 4a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M6.6 3h2.2c.5 0 .9.3 1 .8l.7 3a1 1 0 0 1-.3 1l-1.4 1.4a12.1 12.1 0 0 0 5.3 5.3l1.4-1.4a1 1 0 0 1 1-.3l3 .7c.5.1.8.5.8 1v2.2a1 1 0 0 1-1 1A15.6 15.6 0 0 1 5.6 4a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

/* Licence manager badges */
.sc-account .wlsm-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.55rem;
	border-radius: 6px;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.3;
}

.sc-account .wlsm-status-active {
	background: #dcfce7;
	color: #166534;
}

.sc-account .wlsm-status-revoked,
.sc-account .wlsm-status-expired {
	background: var(--wp--preset--color--slate-100);
	color: var(--wp--preset--color--slate-600);
}

.sc-account .wlsm-inactive-notice {
	font-size: 0.8125rem;
	color: var(--wp--preset--color--slate-500);
}

/* WLSM licenses list — equal-width Action buttons without breaking table layout.
 * Scope to real Action cells only — colspan rows (Development sites) stay left-aligned. */
body.woocommerce-licenses .sc-account .shop_table td:last-child:not([colspan]) {
	text-align: right;
	vertical-align: middle;
}

body.woocommerce-licenses .sc-account .shop_table td:last-child:not([colspan]) > div {
	margin-top: 0.5rem !important;
}

body.woocommerce-licenses .sc-account .shop_table td:last-child:not([colspan]) .button {
	display: inline-flex !important;
	justify-content: center;
	text-align: center;
	/* Match natural width of "+ Connect a site" at account table button size */
	min-width: 7.5rem;
	box-sizing: border-box;
}

/* WLSM — connect site & confirmation flows */
.sc-account .wlsm-connect-wrap > p:first-child,
.sc-account .wlsm-confirm-wrap > p:first-child {
	margin: 0 0 1.25rem;
	line-height: 1;
}

.sc-account .wlsm-connect-wrap .button-secondary,
.sc-account .wlsm-connect-wrap form .button-primary,
.sc-account .wlsm-confirm-wrap .button,
.sc-account .wlsm-confirm-wrap .button-primary {
	display: inline-flex;
	align-items: center;
	min-height: 0;
	padding: 0.4rem 0.75rem !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
}

.sc-account .wlsm-connect-wrap h2,
.sc-account .wlsm-confirm-wrap h2 {
	margin: 0 0 0.35rem;
}

.sc-account .wlsm-connect-wrap h3 {
	margin: 1.25rem 0 0.5rem;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--slate-900);
}

.sc-account .wlsm-connect-wrap > h2 + p {
	margin: 0 0 1rem !important;
	font-size: 0.9375rem !important;
	color: var(--wp--preset--color--slate-500) !important;
}

.sc-account .wlsm-connect-wrap > p[style],
.sc-account .wlsm-connect-wrap form > p:first-of-type {
	margin: 0 0 1rem !important;
	font-size: 0.8125rem !important;
	line-height: 1.55;
	color: var(--wp--preset--color--slate-500) !important;
}

.sc-account .wlsm-connect-wrap label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--wp--preset--color--slate-700);
}

.sc-account .wlsm-connect-wrap input:not([type="hidden"]),
.sc-account .wlsm-confirm-wrap input:not([type="hidden"]) {
	width: 100%;
	max-width: 26.25rem;
	padding: 0.65rem 0.85rem;
	font: inherit;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--wp--preset--color--slate-800);
	background: var(--wp--preset--color--white);
	border: 1.5px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
	box-sizing: border-box;
}

.sc-account .wlsm-connect-wrap input:not([type="hidden"]):focus,
.sc-account .wlsm-confirm-wrap input:not([type="hidden"]):focus {
	border-color: var(--wp--preset--color--blue-600);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.sc-account .wlsm-connect-wrap textarea {
	width: 100%;
	padding: 0.65rem 0.85rem;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: 0.75rem;
	line-height: 1.5;
	color: var(--wp--preset--color--slate-800);
	background: var(--wp--preset--color--slate-50);
	border: 1.5px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	resize: vertical;
	min-height: 5rem;
	box-sizing: border-box;
}

.sc-account .wlsm-connect-wrap form p {
	margin: 0 0 1rem;
}

.sc-account .wlsm-confirm-wrap table {
	width: auto;
	margin-bottom: 1rem;
}

.sc-account .wlsm-confirm-wrap form .button + .button {
	margin-left: 0.5rem;
}

/* Forms — account details, addresses, login/register */
.sc-account .woocommerce-form-row {
	margin: 0 0 1rem;
}

.sc-account .woocommerce-form-row label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--wp--preset--color--slate-700);
}

.sc-account .woocommerce-form-row .required {
	color: var(--wp--preset--color--blue-600);
}

.sc-account .woocommerce-form-row .optional,
.sc-account .woocommerce-form-row em,
.sc-account .woocommerce-form-row span.description {
	font-size: 0.8125rem;
	color: var(--wp--preset--color--slate-500);
	font-weight: 400;
}

.sc-account .woocommerce form .form-row .input-text,
.sc-account .woocommerce form .form-row .woocommerce-Input,
.sc-account .woocommerce form .form-row select,
.sc-account .woocommerce form .form-row textarea,
.sc-account .woocommerce-Input,
.sc-account .woocommerce-Input.input-text,
.sc-account .woocommerce-address-fields .woocommerce-Input,
.sc-account .woocommerce-address-fields .input-text,
.sc-account .woocommerce-EditAccountForm .woocommerce-Input,
.sc-account .woocommerce-EditAccountForm .input-text,
.sc-account .input-text,
.sc-account select,
.sc-account textarea {
	width: 100%;
	padding: 0.65rem 0.85rem;
	font: inherit;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--wp--preset--color--slate-800);
	background: var(--wp--preset--color--white);
	border: 1.5px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
	box-sizing: border-box;
}

.sc-account .woocommerce form .form-row .input-text:focus,
.sc-account .woocommerce form .form-row .woocommerce-Input:focus,
.sc-account .woocommerce form .form-row select:focus,
.sc-account .woocommerce form .form-row textarea:focus,
.sc-account .woocommerce-Input:focus,
.sc-account .input-text:focus,
.sc-account select:focus,
.sc-account textarea:focus {
	border-color: var(--wp--preset--color--blue-600);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.sc-account .password-input {
	display: block;
	position: relative;
}

.sc-account .password-input .woocommerce-Input {
	padding-right: 2.75rem;
}

.sc-account .show-password-input {
	position: absolute;
	top: 50%;
	right: 0.65rem;
	transform: translateY(-50%);
	width: 1.75rem;
	height: 1.75rem;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: transparent;
	cursor: pointer;
	opacity: 0.55;
}

.sc-account .show-password-input:hover {
	opacity: 1;
}

.sc-account .form-row-first,
.sc-account .form-row-last {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	display: block;
}

/* Pair first/last name (and address halves) on a 0.75rem grid — no Woo float gap. */
.sc-account .woocommerce-EditAccountForm,
.sc-account .woocommerce-address-fields__field-wrapper {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	column-gap: 0.75rem;
	align-items: start;
}

.sc-account .woocommerce-EditAccountForm > .form-row-wide,
.sc-account .woocommerce-EditAccountForm > .woocommerce-form-row--wide,
.sc-account .woocommerce-EditAccountForm > fieldset,
.sc-account .woocommerce-EditAccountForm > .clear,
.sc-account .woocommerce-EditAccountForm > p:not(.form-row-first):not(.form-row-last),
.sc-account .woocommerce-address-fields__field-wrapper > .form-row-wide,
.sc-account .woocommerce-address-fields__field-wrapper > .woocommerce-form-row--wide,
.sc-account .woocommerce-address-fields__field-wrapper > .form-row:not(.form-row-first):not(.form-row-last),
.sc-account .woocommerce-address-fields__field-wrapper > .clear {
	grid-column: 1 / -1;
}

.sc-account .clear {
	display: none;
}

.sc-account fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

/* Password change: hairline + breathing room after the email field. */
.sc-account .woocommerce-EditAccountForm > fieldset {
	margin-top: 0.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--wp--preset--color--slate-200);
}

.sc-account .woocommerce-EditAccountForm > fieldset legend {
	margin: 0 0 1rem;
}

.sc-account .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--wp--preset--color--slate-600);
	cursor: pointer;
}

.sc-account .woocommerce-form__input-checkbox {
	width: 1rem;
	height: 1rem;
	margin: 0.15rem 0 0;
	accent-color: var(--wp--preset--color--accent);
	flex-shrink: 0;
}

.sc-account .woocommerce-EditAccountForm button[type="submit"],
.sc-account .woocommerce-address-fields button[type="submit"],
.sc-account .woocommerce-form-login button[type="submit"],
.sc-account .woocommerce-form-register button[type="submit"] {
	margin-top: 0.5rem;
}

/* Login / register — logged-out state */
.sc-account .woocommerce:has(#customer_login) {
	max-width: 52rem;
	margin-inline: auto;
}

.sc-account #customer_login {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
}

.sc-account #customer_login .col-1,
.sc-account #customer_login .col-2 {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--slate-200);
	border-radius: 6px;
	padding: clamp(1.25rem, 3vw, 2rem);
	box-shadow: var(--wp--preset--shadow--sm, 0 1px 3px rgba(15, 23, 42, 0.06));
}

.sc-account #customer_login h2 {
	margin: 0 0 1.25rem;
	font-size: 1.25rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--slate-900);
}

.sc-account .woocommerce-LostPassword {
	margin-top: 0.75rem;
	font-size: 0.875rem;
}

.sc-account .woocommerce-LostPassword a {
	font-weight: 600;
}

.sc-account .woocommerce-privacy-policy-text {
	margin-top: 1rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: var(--wp--preset--color--slate-500);
}

/* Select2 (country/state fields) — match native input height */
.sc-account .select2-container {
	width: 100% !important;
}

.sc-account .select2-container--default .select2-selection--single {
	display: flex;
	align-items: center;
	height: auto !important;
	min-height: 0 !important;
	padding: 0.65rem 2.25rem 0.65rem 0.85rem !important;
	border: 1.5px solid var(--wp--preset--color--slate-200) !important;
	border-radius: 6px !important;
	background: var(--wp--preset--color--white) !important;
	box-sizing: border-box;
}

.sc-account .select2-container--default .select2-selection--single .select2-selection__rendered {
	padding: 0 !important;
	line-height: 1.6 !important;
	color: var(--wp--preset--color--slate-800);
	font-size: 0.875rem;
}

.sc-account .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 0;
	bottom: 0;
	height: auto;
	right: 0.5rem;
}

.sc-account .select2-container--default.select2-container--open .select2-selection--single,
.sc-account .select2-container--default.select2-container--focus .select2-selection--single {
	border-color: var(--wp--preset--color--blue-600) !important;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

/* Responsive tables */
@media (max-width: 781px) {
	.admin-bar .sc-account .woocommerce-MyAccount-navigation {
		top: calc(5.5rem + 46px);
	}

	.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
		grid-template-columns: minmax(0, 1fr);
		gap: 1rem;
	}

	.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation {
		grid-column: 1;
		grid-row: 1;
		width: 100% !important;
		min-width: 0;
	}

	.sc-account .woocommerce:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content {
		grid-column: 1;
		grid-row: 2;
		width: 100% !important;
		min-width: 0;
	}

	.sc-account .woocommerce-MyAccount-navigation {
		position: static;
		width: 100%;
		margin-bottom: 0.25rem;
	}

	.sc-account .woocommerce-MyAccount-navigation ul {
		flex-direction: row;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		width: 100%;
		padding: 0.35rem;
	}

	.sc-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
		display: none;
	}

	.sc-account .woocommerce-MyAccount-navigation-link a {
		white-space: nowrap;
	}

	.sc-dashboard__grid {
		grid-template-columns: 1fr;
	}

	.sc-account .woocommerce-MyAccount-content:has(table:not(.shop_table_responsive):not(.woocommerce-table)) {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.sc-account .woocommerce-MyAccount-content table:not(.shop_table_responsive):not(.woocommerce-table) {
		min-width: 34rem;
	}

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

	.sc-account .woocommerce-Addresses .u-column1,
	.sc-account .woocommerce-Addresses .u-column2,
	.sc-account .woocommerce-Addresses .col-1,
	.sc-account .woocommerce-Addresses .col-2 {
		grid-column: 1;
		grid-row: auto;
	}

	.sc-account .woocommerce-Address-title {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.35rem;
	}

	.sc-account .woocommerce-Address-title .edit {
		white-space: normal;
	}

	.sc-account .woocommerce-EditAccountForm,
	.sc-account .woocommerce-address-fields__field-wrapper {
		grid-template-columns: minmax(0, 1fr);
	}

	.sc-account .form-row-first,
	.sc-account .form-row-last {
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.sc-account .shop_table.shop_table_responsive thead,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) thead {
		display: none;
	}

	.sc-account .shop_table.shop_table_responsive tbody tr,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody tr {
		display: block;
		margin-bottom: 1rem;
		border: 1px solid var(--wp--preset--color--slate-200);
		border-radius: 6px;
		overflow: hidden;
	}

	.sc-account .shop_table.shop_table_responsive tbody tr:hover td,
	.sc-account .shop_table.shop_table_responsive tbody tr:hover th,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody tr:hover td,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody tr:hover th {
		background: transparent;
	}

	.sc-account .shop_table.shop_table_responsive tbody td,
	.sc-account .shop_table.shop_table_responsive tbody th,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody th {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 1rem;
		padding: 0.7rem 1rem;
		border-bottom: 1px solid var(--wp--preset--color--slate-100);
		text-align: right;
	}

	.sc-account .shop_table.shop_table_responsive tbody td::before,
	.sc-account .shop_table.shop_table_responsive tbody th::before,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td::before,
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody th::before {
		content: attr(data-title);
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		color: var(--wp--preset--color--slate-500);
		text-align: left;
	}

	/* WLSM licenses table has no data-title; label columns from header order. */
	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td:nth-child(1)::before {
		content: "Product";
	}

	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td:nth-child(2)::before {
		content: "Subscription";
	}

	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td:nth-child(3)::before {
		content: "Status";
	}

	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td:nth-child(4)::before {
		content: "Sites";
	}

	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td:nth-child(5)::before {
		content: "Expires";
	}

	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td:nth-child(6)::before {
		content: "Action";
	}

	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td[colspan] {
		display: block;
		text-align: left;
	}

	.sc-account .woocommerce-table.shop_table:not(.shop_table_responsive) tbody td[colspan]::before {
		content: none;
	}
}
