/**
 * WP EasyCart Tabs — the tab area ( 3.0 ) and the primitives the blocks use.
 *
 * WP EasyCart's classic tabs ( 2.0's rules ) are in wp-easycart-tabs-classic.css; this file loads only where a tab area or a
 * blocks tab prints ( and in the designer's and the Design settings' previews ).
 *
 * 1. Tab area ( .wpt ): one markup for every style ( includes/class-wp-easycart-tabs-layout.php ). wp-easycart-tabs.js
 *    measures the area and sets data-mode ( desktop | phone, below 600px of the area's own width ), data-look ( the style
 *    in use: data-style on desktop, data-phone on phones, "same" = data-style ) and data-kind ( tabs | accordion | sections |
 *    drawer ). Every mode rule keys off those, never a viewport media query. Without the script ( .wpt without .is-ready )
 *    everything shows in order, like Stacked sections.
 * 2. Shared primitives the blocks use ( .wpt-block, .wpt-h, .wpt-btn … ) and the custom properties they read: --wpt-accent,
 *    --wpt-accent-text ( the accent where it is text: readable on the background ), --wpt-on-accent, --wpt-ink, --wpt-muted,
 *    --wpt-line, --wpt-soft, --wpt-bg, --wpt-focus, --wpt-radius, --wpt-gap, --wpt-star. Colours come from the theme and the
 *    store ( WP EasyCart's --wpec-main-color ); the only colour the store picks is the accent. The script works out the
 *    real colours around the area ( readTheme() ) and writes them on it; these are the defaults without it.
 * 3. Theme-proofing: themes style links, buttons, headings, tables, details and lists heavily. The area's own controls
 *    ( tabs, rows, Close, .wpt-btn ) take their colours from --wpt-c-bg / -fg / -bc / -sh through one rule per control that
 *    no theme selector outranks ( :not(#wpt-0) weighs as an id ), in every state; the looks set those variables.
 * 4. The jump bar and side tabs stay under a theme's fixed or sticky header: --wpt-sticky-top ( the script measures the
 *    header; a theme may set it on .wpt itself, or set --wpt-sticky-auto: 0 to stop the measuring ) and the admin bar
 *    ( --wpt-admin-bar ).
 */

/* ============================================================== 1. The tab area */

.wpt {
	--wpt-ink: currentColor;
	--wpt-bg: Canvas;
	--wpt-accent: var(--wpec-accent, var(--wpec-main-color, #222));
	--wpt-accent-text: var(--wpt-accent);
	--wpt-on-accent: var(--wpt-bg);
	--wpt-radius: 10px;
	--wpt-gap: 22px;
	--wpt-muted: currentColor;
	--wpt-line: rgba(128, 128, 128, .32);
	--wpt-soft: rgba(128, 128, 128, .08);
	--wpt-star: #b86e00;
	--wpt-focus: var(--wpt-ink);
	--wpt-sticky-top: 0px;
	--wpt-admin-bar: 0px;
	--wpt-nav-h: 60px;
	--wpt-scrim: rgba(10, 12, 16, .42);
	display: block;
	position: relative;
	clear: both;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	text-align: start;
	scroll-margin-top: calc( var(--wpt-sticky-top) + var(--wpt-admin-bar) + 12px );
}
@supports ( color: color-mix( in srgb, red 50%, blue ) ) {
	.wpt {
		--wpt-muted: color-mix( in srgb, var(--wpt-ink) 85%, transparent );
		--wpt-line: color-mix( in srgb, var(--wpt-ink) 16%, transparent );
		--wpt-soft: color-mix( in srgb, var(--wpt-ink) 5%, transparent );
	}
}
body.admin-bar .wpt { --wpt-admin-bar: 32px; }
@media screen and ( max-width: 782px ) {
	body.admin-bar .wpt { --wpt-admin-bar: 46px; }
}
@media screen and ( max-width: 600px ) {
	body.admin-bar .wpt { --wpt-admin-bar: 0px; }
}
.wpt.wpt-d-compact { --wpt-gap: 14px; }
.wpt.wpt-d-airy { --wpt-gap: 32px; }
.wpt,
.wpt *,
.wpt *::before,
.wpt *::after { box-sizing: border-box; }
.wpt[data-place="column"] { margin-top: 24px; }

/* The parts. */
.wpt .wpt-toggle,
.wpt .wpt-close {
	-webkit-appearance: none;
	appearance: none;
	width: auto;
	min-width: 0;
	max-width: 100%;
	height: auto;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	text-align: inherit;
	line-height: inherit;
	filter: none;
	transform: none;
	cursor: pointer;
}
.wpt .wpt-close { text-transform: none; letter-spacing: normal; }
.wpt .wpt-head {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-size: inherit;
	line-height: 1.25;
}
.wpt .wpt-head::before,
.wpt .wpt-head::after { content: none; display: none; }
.wpt .wpt-nav { position: relative; display: flex; flex-wrap: wrap; gap: 4px 6px; margin: 0 0 calc( var(--wpt-gap) * .5 ); padding: 0 0 10px; border: 0; border-bottom: 1px solid var(--wpt-line); background: none; list-style: none; }
.wpt .wpt-nav-item {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
	min-height: 0;
	margin: 0;
	padding: 6px 12px;
	border: 0;
	border-radius: 999px;
	font-size: .9em;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: normal;
	text-transform: none;
	white-space: nowrap;
	cursor: pointer;
}
.wpt .wpt-nav-item .wpt-ic { display: none; width: 18px; height: 18px; }
.wpt .wpt-count { font-size: .8em; font-weight: 500; color: var(--wpt-muted); }
.wpt .wpt-items { display: block; margin: 0; padding: 0; container: wpt / inline-size; }
.wpt .wpt-item { display: block; min-width: 0; margin: 0; padding: var(--wpt-gap) 0; border: 0; background: none; }
.wpt .wpt-item + .wpt-item { border-top: 1px solid var(--wpt-line); }
.wpt .wpt-toggle { position: relative; display: none; }
.wpt .wpt-heading { display: block; font-size: 1.45em; line-height: 1.2; }
.wpt .wpt-body { display: flex; flex-direction: column; gap: var(--wpt-gap); min-width: 0; margin: 0; padding: calc( var(--wpt-gap) * .6 ) 0 0; }
.wpt .wpt-body > * { min-width: 0; max-width: 100%; margin-top: 0; margin-bottom: 0; }
.wpt .wpt-body-head { display: none; }
.wpt .wpt-item[hidden],
.wpt .wpt-body[hidden],
.wpt .wpt-backdrop[hidden],
.wpt.is-ready [data-wpt-slot] { display: none !important; }
.wpt[data-count="1"]:not([data-kind="tabs"]) > .wpt-nav { display: none; }

/* WP EasyCart's own panels and other plugins' panels inside a tab: always shown ( the tab decides ), floats contained. */
.wpt .wpt-item[data-wpt-builtin] > .wpt-body > div:not(.wpt-body-head),
.wpt .wpt-item[data-wpt-addon] > .wpt-body > :not(.wpt-body-head):not(script):not(style):not(template):not(link) { display: flow-root !important; float: none !important; width: auto !important; max-width: 100%; margin-left: 0; margin-right: 0; }

/* "Beside the photos": WP EasyCart's panels printed below until they move into the column ( without a script they stay
   here, readable, even the ones WP EasyCart's stylesheet hides until their tab is picked ). */
.wpt-slot-src { display: flow-root; clear: both; }
.wpt-slot-src > div { display: flow-root !important; float: none !important; width: auto !important; }

/* Text, FAQ and Downloads tabs in a tab area. */
.wpt .wpt-block-legacy > :first-child { margin-top: 0; }
.wpt .wpt-block-legacy > :last-child { margin-bottom: 0; }

/* Other plugins' tabs this could not pair, after the area. */
.wpt-addons.ec_details_extra_area { margin-top: 24px; }

/* The sign in accordion and drawer rows. */
.wpt .wpt-sign { position: relative; display: inline-block; width: 14px; height: 14px; flex: 0 0 auto; color: var(--wpt-muted); transition: transform .2s ease; }

/* ---------------------------------------------------------------- Sections ( with the script ) */
.wpt[data-kind="sections"] > .wpt-nav {
	position: -webkit-sticky;
	position: sticky;
	top: calc( var(--wpt-sticky-top) + var(--wpt-admin-bar) );
	z-index: 3;
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: thin;
	padding: 10px 0;
	background: var(--wpt-bg);
}
.wpt[data-kind="sections"] .wpt-item { scroll-margin-top: calc( var(--wpt-sticky-top) + var(--wpt-admin-bar) + var(--wpt-nav-h) + 12px ); }
.wpt[data-kind="sections"] .wpt-item:focus { outline: 0; }
.wpt[data-kind="sections"] .wpt-item:focus-visible { outline: 2px solid var(--wpt-focus); outline-offset: 4px; }
.wpt .wpt-toggle { scroll-margin-top: calc( var(--wpt-sticky-top) + var(--wpt-admin-bar) + 12px ); }

/* ---------------------------------------------------------------- Tabs */
.wpt[data-kind="tabs"] > .wpt-nav { flex-wrap: nowrap; gap: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; margin: 0; padding: 0; border: 0; }
.wpt[data-kind="tabs"] .wpt-head { display: none; }
.wpt[data-kind="tabs"] .wpt-item { padding: var(--wpt-gap) 0 0; border: 0; }
.wpt[data-kind="tabs"] .wpt-item:focus { outline: 0; }
.wpt[data-kind="tabs"] .wpt-item:focus-visible { outline: 2px solid var(--wpt-focus); outline-offset: 4px; }
.wpt[data-kind="tabs"] .wpt-body { padding-top: 0; }
.wpt[data-kind="tabs"] .wpt-nav-item { --wpt-c-ring: -3px; font-size: 1em; border-radius: 0; }
.wpt[data-kind="tabs"] .wpt-nav-item .wpt-ic:not(.wpt-ic-fallback) { display: inline-block; }

/* Underline */
.wpt[data-look="underline"] > .wpt-nav { gap: 26px; box-shadow: inset 0 -1px 0 var(--wpt-line); }
.wpt[data-look="underline"] .wpt-nav-item { padding: 12px 0; border-bottom: 2px solid transparent; }
.wpt[data-look="underline"] .wpt-nav-item[aria-selected="true"] { --wpt-c-fg: var(--wpt-ink); --wpt-c-bc: var(--wpt-accent); }

/* Pills */
.wpt[data-look="pills"] > .wpt-nav { flex-wrap: wrap; gap: 8px; overflow: visible; }
.wpt[data-look="pills"] .wpt-nav-item { --wpt-c-ring: 2px; --wpt-c-sh: inset 0 0 0 1px var(--wpt-line); padding: 8px 16px; border-radius: 999px; font-size: .9375em; }
.wpt[data-look="pills"] .wpt-nav-item[aria-selected="true"] { --wpt-c-bg: var(--wpt-accent); --wpt-c-fg: var(--wpt-on-accent); --wpt-c-sh: inset 0 0 0 1px var(--wpt-accent); }
.wpt[data-look="pills"] .wpt-nav-item[aria-selected="true"] .wpt-count { color: inherit; opacity: .8; }

/* Segmented */
.wpt[data-look="segmented"] > .wpt-nav { display: inline-flex; max-width: 100%; gap: 2px; padding: 4px; border-radius: calc( var(--wpt-radius) + 4px ); background: var(--wpt-soft); }
.wpt[data-mode="phone"][data-look="segmented"] > .wpt-nav { display: flex; }
.wpt[data-look="segmented"] .wpt-nav-item { padding: 9px 18px; border-radius: var(--wpt-radius); font-size: .9375em; }
.wpt[data-mode="phone"][data-look="segmented"] .wpt-nav-item { flex: 1 0 auto; justify-content: center; padding: 9px 12px; }
.wpt[data-look="segmented"] .wpt-nav-item[aria-selected="true"] { --wpt-c-bg: var(--wpt-bg); --wpt-c-fg: var(--wpt-ink); --wpt-c-sh: 0 1px 2px rgba(0, 0, 0, .08), 0 2px 8px rgba(0, 0, 0, .06); }

/* Folder cards */
.wpt[data-look="cards"] > .wpt-nav { position: relative; z-index: 1; gap: 4px; margin-bottom: -1px; }
.wpt[data-look="cards"] .wpt-nav-item { --wpt-c-bg: var(--wpt-soft); --wpt-c-bc: var(--wpt-line); padding: 11px 18px; border: 1px solid; border-bottom: 0; border-radius: var(--wpt-radius) var(--wpt-radius) 0 0; }
.wpt[data-look="cards"] .wpt-nav-item[aria-selected="true"] { --wpt-c-bg: var(--wpt-bg); --wpt-c-fg: var(--wpt-ink); --wpt-c-sh: inset 0 3px 0 var(--wpt-accent); }
.wpt[data-look="cards"] .wpt-item { padding: var(--wpt-gap); border: 1px solid var(--wpt-line); border-radius: 0 var(--wpt-radius) var(--wpt-radius) var(--wpt-radius); background: var(--wpt-bg); }

/* Icon tabs */
.wpt[data-look="icons"] > .wpt-nav { display: grid; grid-auto-flow: column; grid-auto-columns: minmax( 92px, 1fr ); box-shadow: inset 0 -1px 0 var(--wpt-line); }
.wpt[data-look="icons"] .wpt-nav-item { flex-direction: column; justify-content: center; gap: 6px; padding: 12px 8px 14px; border-bottom: 2px solid transparent; font-size: .8125em; text-align: center; white-space: normal; }
.wpt[data-look="icons"] .wpt-nav-item .wpt-ic { display: block; width: 26px; height: 26px; }
.wpt[data-look="icons"] .wpt-nav-item[aria-selected="true"] { --wpt-c-fg: var(--wpt-accent-text); --wpt-c-bc: var(--wpt-accent); }
.wpt[data-look="icons"] .wpt-nav-item[aria-selected="true"] .wpt-nav-label { color: var(--wpt-ink); }

/* Side tabs */
.wpt[data-look="side"] { display: grid; grid-template-columns: minmax( 140px, 220px ) minmax( 0, 1fr ); gap: 28px; align-items: start; }
.wpt[data-look="side"] > .wpt-nav { position: -webkit-sticky; position: sticky; top: calc( var(--wpt-sticky-top) + var(--wpt-admin-bar) + 12px ); flex-direction: column; gap: 2px; overflow: visible; box-shadow: inset 1px 0 0 var(--wpt-line); }
.wpt[data-look="side"] .wpt-nav-item { --wpt-c-ring: -2px; gap: 8px; padding: 10px 14px; border-left: 2px solid transparent; text-align: start; white-space: normal; }
.wpt[data-look="side"] .wpt-nav-label { flex: 1 1 auto; }
.wpt[data-look="side"] .wpt-nav-item[aria-selected="true"] { --wpt-c-fg: var(--wpt-ink); --wpt-c-bc: var(--wpt-accent); --wpt-c-bg: var(--wpt-soft); }
.wpt[data-look="side"] .wpt-item { padding-top: 0; }
.wpt[data-mode="phone"][data-look="side"] { display: block; }
.wpt[data-mode="phone"][data-look="side"] > .wpt-nav { position: relative; top: auto; flex-direction: row; overflow-x: auto; box-shadow: inset 0 -1px 0 var(--wpt-line); }
.wpt[data-mode="phone"][data-look="side"] .wpt-nav-item { border-left: 0; border-bottom: 2px solid transparent; white-space: nowrap; }
.wpt[data-mode="phone"][data-look="side"] .wpt-nav-item[aria-selected="true"] { --wpt-c-bg: transparent; }
.wpt[data-mode="phone"][data-look="side"] .wpt-item { padding-top: var(--wpt-gap); }

/* ---------------------------------------------------------------- Accordions and drawer rows */
.wpt[data-kind="accordion"] > .wpt-nav,
.wpt[data-kind="drawer"] > .wpt-nav,
.wpt[data-kind="accordion"] .wpt-heading,
.wpt[data-kind="drawer"] .wpt-heading { display: none; }
.wpt[data-kind="accordion"] .wpt-item,
.wpt[data-kind="drawer"] .wpt-item { padding: 0; }
.wpt[data-kind="accordion"] .wpt-toggle,
.wpt[data-kind="drawer"] .wpt-toggle {
	display: grid;
	grid-template-columns: auto minmax( 0, 1fr ) auto auto;
	grid-template-areas: "ic title count sign" "ic summary count sign";
	align-items: center;
	width: 100%;
	text-align: start;
	--wpt-c-ring: -2px;
}
.wpt .wpt-toggle > .wpt-ic { grid-area: ic; margin-inline-end: 12px; }
.wpt .wpt-toggle > .wpt-title { grid-area: title; min-width: 0; overflow-wrap: anywhere; }
.wpt .wpt-toggle > .wpt-summary { grid-area: summary; display: none; }
.wpt .wpt-toggle > .wpt-count { grid-area: count; margin-inline-start: 10px; }
.wpt .wpt-toggle > .wpt-sign { grid-area: sign; margin-inline-start: 14px; }

/* Boxed accordion */
.wpt[data-look="accordion"] .wpt-items { display: flex; flex-direction: column; gap: 10px; }
.wpt[data-look="accordion"] .wpt-item,
.wpt[data-look="accordion"] .wpt-item + .wpt-item { border: 1px solid var(--wpt-line); border-radius: var(--wpt-radius); background: var(--wpt-bg); }
.wpt[data-look="accordion"] .wpt-item.is-open { border-color: var(--wpt-accent); }
@supports ( color: color-mix( in srgb, red 50%, blue ) ) {
	.wpt[data-look="accordion"] .wpt-item.is-open { border-color: color-mix( in srgb, var(--wpt-accent) 45%, var(--wpt-line) ); }
}
.wpt[data-look="accordion"] .wpt-toggle { padding: 16px 18px; border-radius: var(--wpt-radius); font-size: 1.0625em; }
.wpt[data-look="accordion"] .wpt-toggle > .wpt-ic { color: var(--wpt-accent-text); }
.wpt[data-look="accordion"] .wpt-body { padding: 0 18px 20px; }
.wpt[data-look="accordion"] .wpt-sign::before,
.wpt[data-look="accordion"] .wpt-sign::after { content: ""; position: absolute; top: 50%; left: 0; right: 0; height: 2px; margin-top: -1px; border-radius: 1px; background: currentColor; transition: transform .2s ease; }
.wpt[data-look="accordion"] .wpt-sign::after { transform: rotate( 90deg ); }
.wpt[data-look="accordion"] .wpt-toggle[aria-expanded="true"] .wpt-sign::after { transform: rotate( 0deg ); }

/* Lined accordion */
.wpt[data-look="lines"] .wpt-items { border-top: 1px solid var(--wpt-line); }
.wpt[data-look="lines"] .wpt-item,
.wpt[data-look="lines"] .wpt-item + .wpt-item { border: 0; border-bottom: 1px solid var(--wpt-line); }
.wpt[data-look="lines"] .wpt-toggle { padding: calc( var(--wpt-gap) * .8 ) 2px; font-size: 1.0625em; }
.wpt[data-look="lines"] .wpt-body { padding: 0 2px var(--wpt-gap); }
.wpt[data-look="lines"] .wpt-sign::before { content: ""; position: absolute; top: 1px; left: 3px; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate( 45deg ); }
.wpt[data-look="lines"] .wpt-toggle[aria-expanded="true"] .wpt-sign { transform: rotate( 180deg ); }

/* Drawer rows */
.wpt[data-kind="drawer"] .wpt-items { container-type: normal; border-top: 1px solid var(--wpt-line); }
.wpt[data-kind="drawer"] .wpt-item,
.wpt[data-kind="drawer"] .wpt-item + .wpt-item { border: 0; border-bottom: 1px solid var(--wpt-line); }
.wpt[data-kind="drawer"] .wpt-toggle { padding: calc( var(--wpt-gap) * .75 ) 4px; font-size: 1.0625em; }
.wpt[data-kind="drawer"] .wpt-toggle > .wpt-ic { color: var(--wpt-accent-text); }
.wpt[data-kind="drawer"] .wpt-toggle > .wpt-summary { display: block; margin-top: 2px; font-size: .8125em; font-weight: 400; line-height: 1.4; color: var(--wpt-muted); text-transform: none; letter-spacing: normal; }
.wpt[data-kind="drawer"] .wpt-sign::before { content: ""; position: absolute; top: 3px; left: 1px; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate( -45deg ); }
.wpt[data-kind="drawer"] .wpt-toggle:hover .wpt-sign { color: var(--wpt-ink); transform: translateX( 3px ); }

/* The open drawer: a side panel over the page ( inside the designer's canvas in its preview ). */
.wpt .wpt-body.is-drawer-open {
	position: fixed;
	z-index: 100001;
	top: 0;
	right: 0;
	bottom: 0;
	width: 460px;
	max-width: 92vw;
	margin: 0;
	padding: 0 22px 22px;
	overflow-y: auto;
	overscroll-behavior: contain;
	border-radius: 0;
	background: var(--wpt-bg);
	color: var(--wpt-ink);
	box-shadow: -14px 0 40px rgba(0, 0, 0, .18);
	container: wpt / inline-size;
	animation: wpt-drawer-in .25s ease;
}
[dir="rtl"] .wpt .wpt-body.is-drawer-open { right: auto; left: 0; box-shadow: 14px 0 40px rgba(0, 0, 0, .18); }
.wpt .wpt-body.is-drawer-open:focus { outline: 0; }
.wpt .wpt-body.is-drawer-open > .wpt-body-head {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	max-width: none;
	margin: 0 -22px;
	padding: 16px 22px;
	border-bottom: 1px solid var(--wpt-line);
	background: var(--wpt-bg);
}
.wpt .wpt-body-title { min-width: 0; font-size: 1.25em; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
.wpt .wpt-close { display: inline-grid; place-items: center; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 50%; }
.wpt .wpt-close .wpt-ic { width: 20px; height: 20px; }
.wpt .wpt-backdrop { position: fixed; z-index: 100000; top: 0; right: 0; bottom: 0; left: 0; background: var(--wpt-scrim); animation: wpt-fade-in .2s ease; }
.wpt[data-preview][data-kind="drawer"] { position: static; min-height: 260px; }
.wpt[data-preview] .wpt-body.is-drawer-open { position: absolute; z-index: 6; max-width: 92%; }
.wpt[data-preview] .wpt-backdrop { position: absolute; z-index: 5; }
html.wpt-lock { overflow: hidden; scrollbar-gutter: stable; }
@keyframes wpt-drawer-in { from { transform: translateX( 24px ); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes wpt-fade-in { from { opacity: 0; } to { opacity: 1; } }

/* ---------------------------------------------------------------- Panels on a card */
.wpt.wpt-surface-card .wpt-body { padding: var(--wpt-gap); border-radius: var(--wpt-radius); background: var(--wpt-soft); }
.wpt.wpt-surface-card[data-kind="accordion"] .wpt-body { margin: 0 0 calc( var(--wpt-gap) * .75 ); }
.wpt.wpt-surface-card[data-look="accordion"] .wpt-body { margin: 0 12px 12px; }
.wpt.wpt-surface-card:not(.is-ready) .wpt-body,
.wpt.wpt-surface-card[data-kind="sections"] .wpt-body { margin-top: calc( var(--wpt-gap) * .6 ); }
.wpt.wpt-surface-card .wpt-body.is-drawer-open { margin: 0; padding: 0 22px 22px; border-radius: 0; background: var(--wpt-bg); }
.wpt.wpt-inline .wpt-body { padding: 0; border-radius: 0; background: none; }

/* ---------------------------------------------------------------- Focus */
.wpt :focus-visible { outline: 2px solid var(--wpt-focus, currentColor); outline-offset: 2px; }

/* ---------------------------------------------------------------- The size guide link ( beside the first product option ) */
.wpt-size-link { float: right; display: inline-flex; align-items: center; gap: 5px; margin: 0 0 0 12px; padding: 0; border: 0; font-size: .875em; font-weight: 600; text-underline-offset: 3px; cursor: pointer; }
.wpt-size-link:not(#wpt-0),
.wpt-size-link:not(#wpt-0):visited,
.wpt-size-link:not(#wpt-0):hover,
.wpt-size-link:not(#wpt-0):focus,
.wpt-size-link:not(#wpt-0):active { background: transparent; box-shadow: none; color: inherit; text-decoration: underline; outline: 0; }
.wpt-size-link:not(#wpt-0):focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
[dir="rtl"] .wpt-size-link { float: left; margin: 0 12px 0 0; }
.wpt-size-link[hidden] { display: none !important; }
.wpt-size-link .wpt-ic { width: 16px; height: 16px; flex: 0 0 auto; }

/* ============================================================== 2. Shared primitives ( blocks ) */

.wpt img { max-width: 100%; height: auto; }
.wpt .wpt-block { min-width: 0; }
.wpt .wpt-ic { display: inline-block; flex: 0 0 auto; width: 20px; height: 20px; vertical-align: -.2em; overflow: visible; }
.wpt .wpt-bhead { display: block; margin: 0 0 14px; }
.wpt .wpt-bhead:last-child { margin-bottom: 0; }
.wpt .wpt-eyebrow { display: block; margin: 0 0 6px; color: var(--wpt-accent-text); font-size: .75em; font-weight: 700; letter-spacing: .09em; line-height: 1.3; text-transform: uppercase; }
.wpt .wpt-h { margin: 0; padding: 0; border: 0; font-size: 1.3125em; line-height: 1.2; }
.wpt .wpt-h::before,
.wpt .wpt-h::after { content: none; display: none; }
.wpt .wpt-lead { max-width: 62ch; margin: 8px 0 0; color: var(--wpt-muted); font-size: 1.0625em; }
.wpt .wpt-note { margin: 10px 0 0; color: var(--wpt-muted); font-size: .8125em; }
.wpt .wpt-prose { max-width: 70ch; overflow-wrap: break-word; }
.wpt .wpt-prose > :first-child { margin-top: 0; }
.wpt .wpt-prose > :last-child { margin-bottom: 0; }
.wpt .wpt-prose p { margin: 0 0 .75em; }
.wpt .wpt-prose ul,
.wpt .wpt-prose ol { margin: 0 0 .75em; padding-inline-start: 1.35em; }
.wpt .wpt-prose ul { list-style: disc; }
.wpt .wpt-prose ol { list-style: decimal; }
.wpt .wpt-prose li { margin: 0 0 .3em; padding: 0; }
.wpt .wpt-prose li::before { content: none; }
.wpt .wpt-prose h3,
.wpt .wpt-prose h4 { margin: 1.1em 0 .4em; font-size: 1.0625em; line-height: 1.3; }
.wpt .wpt-prose blockquote { margin: 0 0 .75em; padding: 0 0 0 1em; border-left: 3px solid var(--wpt-line); color: var(--wpt-muted); }
.wpt .wpt-prose a:not(#wpt-0),
.wpt .wpt-prose a:not(#wpt-0):visited { background: transparent; color: var(--wpt-accent-text); text-decoration: underline; text-underline-offset: 2px; }
.wpt .wpt-prose a:not(#wpt-0):hover,
.wpt .wpt-prose a:not(#wpt-0):focus,
.wpt .wpt-prose a:not(#wpt-0):active { background: transparent; color: var(--wpt-ink); text-decoration: underline; outline: 0; }
.wpt .wpt-prose a:not(#wpt-0):focus-visible { outline: 2px solid var(--wpt-focus); outline-offset: 2px; }
.wpt .wpt-chip { display: inline-flex; align-items: center; padding: 2px 8px; border-radius: 999px; background: var(--wpt-soft); color: var(--wpt-accent-text); font-size: .72em; font-weight: 700; letter-spacing: .02em; line-height: 1.5; vertical-align: middle; }
.wpt .wpt-scroll { position: relative; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.wpt .wpt-scroll:focus-visible { outline-offset: 0; }
.wpt .wpt-stars { display: inline-flex; gap: 2px; color: var(--wpt-star); vertical-align: middle; }
.wpt .wpt-stars .wpt-ic { width: 17px; height: 17px; color: var(--wpt-star); }
.wpt .wpt-stars .wpt-ic.is-on,
.wpt .wpt-stars .wpt-ic.is-on * { fill: currentColor; }
.wpt .wpt-stars .wpt-ic.is-off,
.wpt .wpt-stars .wpt-ic.is-off * { fill: none; }
.wpt .wpt-chev { transition: transform .2s ease; }
.wpt details[open] > summary .wpt-chev,
.wpt [aria-expanded="true"] > .wpt-chev { transform: rotate( 180deg ); }
.wpt .wpt-pf { padding: 0 3px; border-radius: 4px; background: var(--wpt-soft); box-shadow: inset 0 -1px 0 var(--wpt-accent); }
.wpt .wpt-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 0;
	margin: 14px 0 0;
	padding: 11px 18px;
	border: 0;
	border-radius: var(--wpt-radius);
	font: inherit;
	font-size: .875em;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: normal;
	text-transform: none;
	cursor: pointer;
}
.wpt .wpt-btn .wpt-ic { width: 18px; height: 18px; }
.wpt .wpt-visually-hidden,
.wpt .wpt-sr { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; overflow: hidden !important; clip: rect( 0 0 0 0 ) !important; clip-path: inset( 50% ) !important; border: 0 !important; white-space: nowrap !important; }
.wpt .wpt-empty { margin: 0; padding: 14px 16px; border: 1px dashed var(--wpt-line); border-radius: var(--wpt-radius); color: var(--wpt-muted); font-size: .875em; text-align: center; }
/* The designer's preview: WP EasyCart's own tabs drawn as stand-ins. */
.wpt .wpt-standin { margin: 0; padding: 14px 16px; border: 1px dashed var(--wpt-line); border-radius: var(--wpt-radius); color: var(--wpt-muted); }
.wpt .wpt-standin > :first-child { margin-top: 0; }
.wpt .wpt-standin > :last-child { margin-bottom: 0; }
@supports ( color: color-mix( in srgb, red 50%, blue ) ) {
	.wpt .wpt-chip { background: color-mix( in srgb, var(--wpt-accent) 13%, transparent ); }
	.wpt .wpt-pf { background: color-mix( in srgb, var(--wpt-accent) 12%, transparent ); }
}

/* Text, FAQ and Downloads tabs ( 2.0's markup ) in a tab area: 2.0's look, above the resets below. */
.wpt .wpt-block .wpec-tabs-faq { margin: 0; }
.wpt .wpt-block .wpec-tabs-faq-item { margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--wpt-line); background: none; }
.wpt .wpt-block .wpec-tabs-faq-item:first-child { border-top: 1px solid var(--wpt-line); }
.wpt .wpt-block .wpec-tabs-faq-item > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0; padding: 12px 2px; background: none; font-weight: bold; cursor: pointer; list-style: none; }
.wpt .wpt-block .wpec-tabs-faq-item > summary::-webkit-details-marker { display: none; }
.wpt .wpt-block .wpec-tabs-faq-item > summary::after { content: "+"; flex: 0 0 auto; font-size: 18px; font-weight: normal; line-height: 1; }
.wpt .wpt-block .wpec-tabs-faq-item[open] > summary::after { content: "\2212"; }
.wpt .wpt-block .wpec-tabs-faq-answer { padding: 0 2px 12px; }
.wpt .wpt-block .wpec-tabs-faq-answer > :last-child { margin-bottom: 0; }
.wpt .wpt-block .wpec-tabs-downloads { list-style: none; margin: 0; padding: 0; }
.wpt .wpt-block .wpec-tabs-download { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin: 0 0 8px; padding: 10px 12px; border: 1px solid var(--wpt-line); border-radius: 6px; list-style: none; }
.wpt .wpt-block .wpec-tabs-download a { display: inline-flex; align-items: center; gap: 10px; flex: 1 1 220px; min-width: 0; text-decoration: none; }
.wpt .wpt-block .wpec-tabs-download a:hover .wpec-tabs-download-name,
.wpt .wpt-block .wpec-tabs-download a:focus .wpec-tabs-download-name { text-decoration: underline; }
.wpt .wpt-block .wpec-tabs-download-ext { flex: 0 0 auto; min-width: 38px; padding: 6px 4px; border-radius: 4px; background: var(--wpt-soft); font-size: 10px; font-weight: bold; letter-spacing: .04em; text-align: center; }
.wpt .wpt-block .wpec-tabs-download-name { overflow-wrap: anywhere; }
.wpt .wpt-block .wpec-tabs-download-meta { font-size: 12px; color: var(--wpt-muted); white-space: nowrap; }

/* ============================================================== 3. Theme-proofing */

/* The area's controls: one rule per control, stronger than any theme selector, in every state. The looks above set
   --wpt-c-bg ( background ), --wpt-c-fg ( text ), --wpt-c-bc ( border colour ), --wpt-c-sh ( shadow ), --wpt-c-ring
   ( focus ring offset: inside where a strip scrolls ). */
.wpt .wpt-nav-item { --wpt-c-bg: transparent; --wpt-c-fg: var(--wpt-muted); --wpt-c-bc: transparent; --wpt-c-sh: none; --wpt-c-ring: 2px; }
.wpt .wpt-nav-item:hover,
.wpt .wpt-nav-item:focus,
.wpt .wpt-nav-item:active { --wpt-c-fg: var(--wpt-ink); }
.wpt[data-kind="sections"] .wpt-nav-item { --wpt-c-ring: -3px; }
.wpt[data-kind="sections"] .wpt-nav-item[aria-current] { --wpt-c-fg: var(--wpt-ink); --wpt-c-bg: var(--wpt-soft); --wpt-c-sh: inset 0 0 0 1px var(--wpt-line); }
.wpt .wpt-toggle { --wpt-c-bg: transparent; --wpt-c-fg: currentColor; --wpt-c-bc: transparent; --wpt-c-sh: none; --wpt-c-ring: 2px; }
.wpt .wpt-close { --wpt-c-bg: var(--wpt-soft); --wpt-c-fg: currentColor; --wpt-c-bc: transparent; --wpt-c-sh: none; --wpt-c-ring: 2px; }
.wpt .wpt-close:hover { --wpt-c-bg: var(--wpt-line); }
.wpt .wpt-btn { --wpt-c-bg: var(--wpt-accent); --wpt-c-fg: var(--wpt-on-accent); --wpt-c-bc: transparent; --wpt-c-sh: none; --wpt-c-ring: 2px; }
.wpt .wpt-btn:hover,
.wpt .wpt-btn:focus { --wpt-c-sh: inset 0 0 0 999px rgba(0, 0, 0, .08); }
.wpt .wpt-btn.is-ghost,
.wpt .wpt-btn.is-secondary { --wpt-c-bg: transparent; --wpt-c-fg: var(--wpt-ink); --wpt-c-sh: inset 0 0 0 1px var(--wpt-line); }
.wpt .wpt-btn.is-ghost:hover,
.wpt .wpt-btn.is-ghost:focus,
.wpt .wpt-btn.is-secondary:hover,
.wpt .wpt-btn.is-secondary:focus { --wpt-c-bg: var(--wpt-soft); }
.wpt .wpt-nav-item:not(#wpt-0),
.wpt .wpt-nav-item:not(#wpt-0):visited,
.wpt .wpt-nav-item:not(#wpt-0):hover,
.wpt .wpt-nav-item:not(#wpt-0):focus,
.wpt .wpt-nav-item:not(#wpt-0):active,
.wpt .wpt-toggle:not(#wpt-0),
.wpt .wpt-toggle:not(#wpt-0):hover,
.wpt .wpt-toggle:not(#wpt-0):focus,
.wpt .wpt-toggle:not(#wpt-0):active,
.wpt .wpt-close:not(#wpt-0),
.wpt .wpt-close:not(#wpt-0):hover,
.wpt .wpt-close:not(#wpt-0):focus,
.wpt .wpt-close:not(#wpt-0):active,
.wpt .wpt-btn:not(#wpt-0),
.wpt .wpt-btn:not(#wpt-0):visited,
.wpt .wpt-btn:not(#wpt-0):hover,
.wpt .wpt-btn:not(#wpt-0):focus,
.wpt .wpt-btn:not(#wpt-0):active {
	background: var(--wpt-c-bg);
	border-color: var(--wpt-c-bc);
	box-shadow: var(--wpt-c-sh);
	color: var(--wpt-c-fg);
	text-decoration: none;
	text-shadow: none;
	opacity: 1;
	outline: 0;
}
.wpt .wpt-nav-item:not(#wpt-0):focus-visible,
.wpt .wpt-toggle:not(#wpt-0):focus-visible,
.wpt .wpt-close:not(#wpt-0):focus-visible,
.wpt .wpt-btn:not(#wpt-0):focus-visible { outline: 2px solid var(--wpt-focus); outline-offset: var(--wpt-c-ring); }

/* Blocks ( their .wpt-b-<type> containers; a text tab's own HTML keeps the theme's look ): tables without the theme's
   stripes, details and summaries without its boxes, lists without its bullets drawn in ::before. Blocks' own rules ( the
   same weight, loaded after ) still win. */
.wpt [class*="wpt-b-"] tr:nth-child(n) { background: transparent; }
.wpt [class*="wpt-b-"] tr > th,
.wpt [class*="wpt-b-"] tr > td { background-color: transparent; }
.wpt [class*="wpt-b-"] details { margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.wpt [class*="wpt-b-"] summary { margin: 0; padding: 0; border: 0; background: none; }
.wpt [class*="wpt-b-"] li::before { content: none; }

/* No container queries ( iOS 15 and older ): narrow areas stack the blocks' columns by the area's mode, or the screen. */
@supports not ( container-type: inline-size ) {
	.wpt[data-mode="phone"] .wpt-block [class*="wpt-b-"],
	.wpt[data-mode="phone"] .wpt-block .wpt-grid { grid-template-columns: minmax( 0, 1fr ) !important; }
	@media screen and ( max-width: 600px ) {
		.wpt .wpt-block [class*="wpt-b-"],
		.wpt .wpt-block .wpt-grid { grid-template-columns: minmax( 0, 1fr ) !important; }
	}
}

/* ============================================================== Motion and print */

@media ( prefers-reduced-motion: reduce ) {
	.wpt *,
	.wpt *::before,
	.wpt *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

@media print {
	.wpt > .wpt-nav,
	.wpt .wpt-toggle,
	.wpt .wpt-body-head,
	.wpt .wpt-backdrop,
	.wpt-size-link { display: none !important; }
	.wpt,
	.wpt[data-look="side"] { display: block !important; }
	.wpt .wpt-item,
	.wpt .wpt-item[hidden] { display: block !important; padding: 12px 0 !important; border: 0 !important; }
	.wpt .wpt-head,
	.wpt .wpt-heading { display: block !important; }
	.wpt .wpt-body,
	.wpt .wpt-body[hidden] { display: flex !important; position: static !important; width: auto !important; max-width: none !important; overflow: visible !important; box-shadow: none !important; animation: none !important; }
}
