/* ==========================================================================
   Anilator — front-end and editor styles
   Visual vocabulary:
     • Reference look  — crisp borders, card grid, chips, callouts, sticky
                         header with "/" search hint, light/dark toggle.
     • Status look     — dark "aurora" hero with animated mesh, glass cards,
                         status pills, timelines, numbered section heads.
   Colours always come from theme.json presets so Global Styles and style
   variations keep working.
   ========================================================================== */

/* ---------- Dark mode ------------------------------------------------------ */
/* Explicit choice (toggle) wins; otherwise follow the OS preference. */
:root[data-theme="dark"] {
	--wp--preset--color--base: #0d1117;
	--wp--preset--color--surface: #161b22;
	--wp--preset--color--surface-2: #21262d;
	--wp--preset--color--border: #30363d;
	--wp--preset--color--contrast: #e6edf3;
	--wp--preset--color--contrast-2: #9198a1;
	--wp--preset--color--contrast-3: #6e7681;
	--wp--preset--color--accent: var(--wp--custom--dark--accent);
	--wp--preset--color--accent-2: var(--wp--custom--dark--accent-2);
	--wp--preset--color--accent-soft: var(--wp--custom--dark--accent-soft);
	--wp--preset--color--success: #3fb950;
	--wp--preset--color--success-soft: #0f2e1a;
	--wp--preset--color--warning: #d29922;
	--wp--preset--color--warning-soft: #3b2c02;
	--wp--preset--color--danger: #f85149;
	--wp--preset--color--danger-soft: #3c1618;
	--wp--preset--shadow--card: 0 0 0 1px rgba(240,246,252,0.02), 0 1px 3px rgba(1,4,9,0.5);
	--wp--preset--shadow--raised: 0 0 0 1px rgba(240,246,252,0.03), 0 16px 32px rgba(1,4,9,0.6);
	color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		--wp--preset--color--base: #0d1117;
		--wp--preset--color--surface: #161b22;
		--wp--preset--color--surface-2: #21262d;
		--wp--preset--color--border: #30363d;
		--wp--preset--color--contrast: #e6edf3;
		--wp--preset--color--contrast-2: #9198a1;
		--wp--preset--color--contrast-3: #6e7681;
		--wp--preset--color--accent: var(--wp--custom--dark--accent);
		--wp--preset--color--accent-2: var(--wp--custom--dark--accent-2);
		--wp--preset--color--accent-soft: var(--wp--custom--dark--accent-soft);
		--wp--preset--color--success: #3fb950;
		--wp--preset--color--success-soft: #0f2e1a;
		--wp--preset--color--warning: #d29922;
		--wp--preset--color--warning-soft: #3b2c02;
		--wp--preset--color--danger: #f85149;
		--wp--preset--color--danger-soft: #3c1618;
		--wp--preset--shadow--card: 0 0 0 1px rgba(240,246,252,0.02), 0 1px 3px rgba(1,4,9,0.5);
		--wp--preset--shadow--raised: 0 0 0 1px rgba(240,246,252,0.03), 0 16px 32px rgba(1,4,9,0.6);
		color-scheme: dark;
	}
}
:root[data-theme="light"] { color-scheme: light; }

/* ---------- Base --------------------------------------------------------- */
html { scroll-padding-top: calc(var(--wp--custom--header-height) + 16px); }
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-feature-settings: "cv11", "ss01";
	transition: background-color var(--wp--custom--transition), color var(--wp--custom--transition);
}
::selection { background: var(--wp--preset--color--accent-soft); color: var(--wp--preset--color--contrast); }
:where(code, kbd, samp):not(pre *) {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.86em;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 5px;
	padding: 0.08em 0.38em;
}
mark { background: var(--wp--preset--color--warning-soft); color: inherit; border-radius: 2px; padding: 0 1px; }
.wp-site-blocks { min-height: 100vh; display: flex; flex-direction: column; }
.wp-site-blocks > main, .wp-site-blocks > .wp-block-group:has(> main) { flex: 1 0 auto; }

/* ---------- Header (sticky, reference style) ------------------------------ */
/* The template-part wrapper is the sticky element (a sticky child of a
   same-height wrapper would never stick). */
.wp-site-blocks > * { margin-block-start: 0; }
.wp-block-template-part:has(> .anilator-header) { position: sticky; top: 0; z-index: 80; }
.admin-bar .wp-block-template-part:has(> .anilator-header) { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) { .admin-bar .wp-block-template-part:has(> .anilator-header) { top: 0; } }
.anilator-header {
	background: color-mix(in srgb, var(--wp--preset--color--base) 82%, transparent);
	-webkit-backdrop-filter: saturate(180%) blur(12px);
	backdrop-filter: saturate(180%) blur(12px);
	border-bottom: 1px solid var(--wp--preset--color--border);
}
.anilator-header > .wp-block-group { min-height: var(--wp--custom--header-height); }
.anilator-header .wp-block-site-logo img { display: block; }
.anilator-brand-divider {
	width: 1px; height: 18px; background: var(--wp--preset--color--border); flex-shrink: 0;
}
.anilator-header .wp-block-navigation-item__content {
	padding: 6px 10px; border-radius: var(--wp--preset--border-radius--sm);
	color: var(--wp--preset--color--contrast-2);
	transition: background var(--wp--custom--transition), color var(--wp--custom--transition);
}
.anilator-header .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--surface-2); color: var(--wp--preset--color--contrast); text-decoration: none;
}
.anilator-header .current-menu-item > .wp-block-navigation-item__content,
.anilator-header .wp-block-navigation-item__content[aria-current="page"] {
	background: var(--wp--preset--color--accent-soft); color: var(--wp--preset--color--accent); font-weight: 600;
}

/* Header on dark aurora variant */
.anilator-header.is-dark {
	background: color-mix(in srgb, var(--wp--preset--color--night) 92%, transparent);
	border-bottom-color: rgba(255,255,255,0.08);
	color: #fff;
}
.anilator-header.is-dark .wp-block-site-title a { color: #fff; }
/* Top-level links only — dropdown items get their own panel colours below. */
.anilator-header.is-dark .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
.anilator-header.is-dark .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation__submenu-icon { color: rgba(255,255,255,0.72); }
.anilator-header.is-dark .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
.anilator-header.is-dark .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item:is(:hover, :focus-within) > .wp-block-navigation-item__content { background: rgba(255,255,255,0.08); color: #fff; }
.anilator-header.is-dark .wp-block-navigation__responsive-container-open { color: #fff; }
.anilator-header.is-dark .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > :is(.current-menu-item, .current-menu-ancestor) > .wp-block-navigation-item__content,
.anilator-header.is-dark .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"] {
	background: rgba(255,255,255,0.12); color: #fff;
}
.anilator-header.is-dark .wp-block-search__input { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.14) !important; color: #fff; }
.anilator-header.is-dark .wp-block-search__input::placeholder { color: rgba(255,255,255,0.5); }
.anilator-header.is-dark .anilator-kbd { background: transparent; border-color: rgba(255,255,255,0.2); color: rgba(255,255,255,0.6); }

/* Mobile overlay menu follows the active colour scheme */
.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: var(--wp--preset--font-size--large); }
@media (max-width: 781px) { .anilator-header-search { display: none !important; } }

/* ---------- Search with "/" hint ----------------------------------------- */
.wp-block-search .wp-block-search__inside-wrapper { position: relative; }
.wp-block-search__input {
	border: 1px solid var(--wp--preset--color--border) !important;
	border-radius: var(--wp--preset--border-radius--sm);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--contrast);
	padding: 6px 30px 6px 10px;
	transition: border-color var(--wp--custom--transition), box-shadow var(--wp--custom--transition), background var(--wp--custom--transition);
}
.wp-block-search__input:focus {
	outline: none;
	border-color: var(--wp--preset--color--accent) !important;
	background: var(--wp--preset--color--base);
	box-shadow: 0 0 0 3px var(--wp--preset--color--accent-soft);
}
.anilator-kbd {
	position: absolute; right: 8px; top: 50%; transform: translateY(-50%);
	font-family: var(--wp--preset--font-family--mono); font-size: 11px; line-height: 1.4;
	color: var(--wp--preset--color--contrast-3);
	background: var(--wp--preset--color--base); border: 1px solid var(--wp--preset--color--border);
	border-radius: 4px; padding: 0 5px; pointer-events: none;
}
.wp-block-search__button-inside .anilator-kbd,
.wp-block-search__input:focus + .anilator-kbd { display: none; }

/* ---------- Light/dark toggle -------------------------------------------- */
.anilator-toggle {
	display: inline-flex; align-items: center; justify-content: center;
	width: 34px; height: 34px; padding: 0; flex-shrink: 0;
	border-radius: var(--wp--preset--border-radius--sm);
	border: 1px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--contrast);
	cursor: pointer;
	transition: background var(--wp--custom--transition), transform var(--wp--custom--transition);
}
.anilator-toggle:hover { background: var(--wp--preset--color--surface-2); }
.anilator-toggle:active { transform: scale(0.94); }
.anilator-toggle:focus-visible { outline: 2px solid var(--wp--preset--color--accent); outline-offset: 2px; }
.anilator-toggle svg { display: block; }
.anilator-toggle__sun { display: none !important; }
:root[data-theme="dark"] .anilator-toggle__sun { display: block !important; }
:root[data-theme="dark"] .anilator-toggle__moon { display: none !important; }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .anilator-toggle__sun { display: block !important; }
	:root:not([data-theme="light"]) .anilator-toggle__moon { display: none !important; }
}
.anilator-header.is-dark .anilator-toggle { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.14); color: #fff; }

/* ---------- Group: Card --------------------------------------------------- */
.wp-block-group.is-style-card {
	background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--preset--border-radius--md);
	box-shadow: var(--wp--preset--shadow--card);
	padding: 1.1rem 1.25rem;
	transition: border-color var(--wp--custom--transition), box-shadow var(--wp--custom--transition), transform var(--wp--custom--transition);
}
.wp-block-group.is-style-card:has(a:hover) { border-color: color-mix(in srgb, var(--wp--preset--color--accent) 45%, var(--wp--preset--color--border)); }
.wp-block-group.is-style-card > :first-child { margin-top: 0; }

/* ---------- Group: Inset (hero / filter-bar panel) ----------------------- */
.wp-block-group.is-style-inset {
	background: var(--wp--preset--gradient--surface-fade);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--preset--border-radius--lg);
	padding: clamp(1.25rem, 3vw, 1.75rem) clamp(1.25rem, 3vw, 2rem);
}

/* ---------- Group: Callout ("Considerations") ---------------------------- */
.wp-block-group.is-style-callout {
	background: var(--wp--preset--color--warning-soft);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--warning) 22%, transparent);
	border-radius: var(--wp--preset--border-radius--sm);
	padding: 0.75rem 0.9rem;
	font-size: var(--wp--preset--font-size--small);
}
.wp-block-group.is-style-callout > .is-style-eyebrow:first-child,
.wp-block-group.is-style-callout > .wp-block-heading:first-child { color: var(--wp--preset--color--warning); }

/* ---------- Group: Accent bar (status "overall" banner / incident) ------- */
.wp-block-group.is-style-accent-bar {
	background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--border);
	border-left: 4px solid var(--wp--preset--color--success);
	border-radius: var(--wp--preset--border-radius--md);
	padding: 1.1rem 1.4rem;
	box-shadow: var(--wp--preset--shadow--card);
}
.wp-block-group.is-style-accent-bar:has(.is-style-pill-warn) { border-left-color: var(--wp--preset--color--warning); }
.wp-block-group.is-style-accent-bar:has(.is-style-pill-down) { border-left-color: var(--wp--preset--color--danger); }
.wp-block-group.is-style-accent-bar:has(.is-style-pill-info) { border-left-color: var(--wp--preset--color--accent-2); }

/* ---------- Group: Aurora (dark hero with mesh) -------------------------- */
.wp-block-group.is-style-aurora {
	--aurora-text-hi: #f5f3ff;
	--aurora-text-mid: rgba(245,243,255,0.72);
	--aurora-text-low: rgba(245,243,255,0.48);
	position: relative;
	isolation: isolate;
	overflow: hidden;
	color: var(--aurora-text-hi);
	background: var(--wp--preset--gradient--night-sky);
	padding-top: var(--wp--preset--spacing--70);
	padding-bottom: var(--wp--preset--spacing--70);
}
.wp-block-group.is-style-aurora::after {
	/* the status page's darkening veil */
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: radial-gradient(ellipse at 50% 0%, rgba(6,10,20,0) 0%, rgba(6,10,20,0.4) 100%);
}
.wp-block-group.is-style-aurora > .anilator-mesh {
	position: absolute !important; inset: 0; width: 100%; height: 100%;
	z-index: -1; margin: 0 !important; max-width: none !important; opacity: 0.5; pointer-events: none;
}
.wp-block-group.is-style-aurora :where(h1, h2, h3, h4, h5, h6) { color: #fff; }
.wp-block-group.is-style-aurora :where(p) { color: var(--aurora-text-mid); }
.wp-block-group.is-style-aurora a:where(:not(.wp-element-button)) { color: var(--wp--custom--dark--accent); }
.wp-block-group.is-style-aurora .is-style-eyebrow { color: var(--wp--custom--dark--accent); }
.wp-block-group.is-style-aurora .wp-block-button.is-style-ghost .wp-block-button__link,
.wp-block-group.is-style-aurora .wp-block-button.is-style-outline .wp-block-button__link {
	color: #fff; border-color: rgba(255,255,255,0.24); background: rgba(255,255,255,0.04);
}
.wp-block-group.is-style-aurora .wp-block-button.is-style-ghost .wp-block-button__link:hover,
.wp-block-group.is-style-aurora .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: rgba(255,255,255,0.12);
}
.wp-block-group.is-style-aurora .wp-block-button:not(.is-style-ghost):not(.is-style-outline) .wp-block-button__link:hover {
	background: #fff; color: var(--wp--preset--color--night);
}
.wp-block-group.is-style-aurora .wp-block-separator { color: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.1); }
@media (prefers-reduced-motion: reduce) {
	.wp-block-group.is-style-aurora > .anilator-mesh { display: none; }
}

/* ---------- Group: Glass (status cards) ---------------------------------- */
.wp-block-group.is-style-glass {
	position: relative;
	overflow: hidden;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 70%, transparent);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--preset--border-radius--lg);
	padding: 1.35rem 1.35rem 1.1rem;
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
}
.wp-block-group.is-style-glass::before {
	content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px;
	background: var(--wp--preset--color--contrast-3);
}
.wp-block-group.is-style-glass:has(.is-style-pill-ok)::before   { background: var(--wp--preset--color--success); }
.wp-block-group.is-style-glass:has(.is-style-pill-warn)::before { background: var(--wp--preset--color--warning); }
.wp-block-group.is-style-glass:has(.is-style-pill-down)::before { background: var(--wp--preset--color--danger); }
.wp-block-group.is-style-glass:has(.is-style-pill-info)::before { background: var(--wp--preset--color--accent-2); }
.wp-block-group.is-style-glass:not(:has([class*="is-style-pill"]))::before { background: var(--wp--preset--gradient--aurora); }
.is-style-aurora .wp-block-group.is-style-glass {
	background: var(--wp--custom--glass--background);
	border-color: var(--wp--custom--glass--border);
	border-radius: 20px;
	box-shadow: var(--wp--custom--glass--shadow);
	-webkit-backdrop-filter: blur(22px) saturate(140%);
	backdrop-filter: blur(22px) saturate(140%);
	color: var(--aurora-text-hi);
}
.is-style-aurora .wp-block-group.is-style-glass .is-style-mono-label { color: var(--aurora-text-low); }

/* Metric row inside a glass card */
.anilator-metrics {
	border-top: 1px solid var(--wp--preset--color--border);
	padding-top: 0.75rem;
	margin-top: auto;
}
.is-style-aurora .anilator-metrics { border-top-color: var(--wp--custom--glass--border); }
.anilator-metrics p { margin: 0; font-variant-numeric: tabular-nums; font-weight: 600; font-size: var(--wp--preset--font-size--small); }

/* ---------- Paragraph styles --------------------------------------------- */
p.is-style-eyebrow {
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 650;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent);
}
p.is-style-lede {
	font-size: clamp(1rem, 0.95rem + 0.3vw, 1.125rem);
	line-height: 1.6;
	color: var(--wp--preset--color--contrast-2);
	max-width: 62ch;
}
p.is-style-mono-label {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-3);
	margin-bottom: 0.15rem;
}

/* Pills — neutral + status set (operational / degraded / down / maintenance) */
p:is(.is-style-pill, .is-style-pill-ok, .is-style-pill-warn, .is-style-pill-down, .is-style-pill-info) {
	display: inline-flex; align-items: center; gap: 6px;
	width: fit-content;
	font-size: 11.5px; font-weight: 600; line-height: 1.5;
	padding: 2px 10px 2px 8px; border-radius: 999px;
	background: var(--wp--preset--color--surface-2);
	color: var(--wp--preset--color--contrast-2);
	white-space: nowrap;
}
p:is(.is-style-pill-ok, .is-style-pill-warn, .is-style-pill-down, .is-style-pill-info)::before {
	content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; flex-shrink: 0;
}
p.is-style-pill-ok   { background: var(--wp--preset--color--success-soft); color: var(--wp--preset--color--success); }
p.is-style-pill-warn { background: var(--wp--preset--color--warning-soft); color: var(--wp--preset--color--warning); }
p.is-style-pill-down { background: var(--wp--preset--color--danger-soft);  color: var(--wp--preset--color--danger); }
p.is-style-pill-info { background: color-mix(in srgb, var(--wp--preset--color--accent-2) 16%, transparent); color: var(--wp--preset--color--accent-2); }
p.is-style-pill-ok::before { animation: anilator-pulse 2.4s ease-out infinite; }
@keyframes anilator-pulse {
	0%   { box-shadow: 0 0 0 0 color-mix(in srgb, currentColor 55%, transparent); }
	70%  { box-shadow: 0 0 0 6px transparent; }
	100% { box-shadow: 0 0 0 0 transparent; }
}
@media (prefers-reduced-motion: reduce) { p.is-style-pill-ok::before { animation: none; } }
.is-style-aurora p:is(.is-style-pill-ok, .is-style-pill-warn, .is-style-pill-down, .is-style-pill-info) { background: rgba(255,255,255,0.08); }
.is-style-aurora p.is-style-pill-ok   { color: #56d364; }
.is-style-aurora p.is-style-pill-warn { color: #e3b341; }
.is-style-aurora p.is-style-pill-down { color: #ff7b72; }
.is-style-aurora p.is-style-pill-info { color: #d2a8ff; }
.is-style-aurora p.is-style-pill { background: rgba(255,255,255,0.08); color: var(--aurora-text-mid); }

/* ---------- Heading styles ----------------------------------------------- */
.wp-block-heading.is-style-gradient,
.anilator-grad {
	background: var(--wp--preset--gradient--aurora);
	-webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent; color: transparent;
}

/* "01 Section title" — counter-numbered headings, like the status page */
.wp-site-blocks, .editor-styles-wrapper { counter-reset: anilator-section; }
.wp-block-heading.is-style-numbered { counter-increment: anilator-section; display: flex; align-items: baseline; gap: 0.7rem; }
.wp-block-heading.is-style-numbered::before {
	content: counter(anilator-section, decimal-leading-zero);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.8rem; font-weight: 500; letter-spacing: 0;
	color: var(--wp--preset--color--accent-2);
}

/* ---------- List styles -------------------------------------------------- */
/* Timeline (incident updates) */
ul.is-style-timeline, ol.is-style-timeline {
	list-style: none; margin-left: 0;
	padding: 0 0 0 16px;
	border-left: 2px solid var(--wp--preset--color--border);
}
.is-style-timeline > li { position: relative; padding: 0 0 0.9rem 14px; color: var(--wp--preset--color--contrast-2); font-size: var(--wp--preset--font-size--small); line-height: 1.55; }
.is-style-timeline > li:last-child { padding-bottom: 0; }
.is-style-timeline > li::before {
	content: ""; position: absolute; left: -23px; top: 5px; width: 10px; height: 10px; border-radius: 50%;
	background: var(--wp--preset--color--base); border: 2px solid var(--wp--preset--color--accent);
}
.is-style-timeline > li:first-child::before { background: var(--wp--preset--color--accent); }
.is-style-timeline > li strong:first-child,
.is-style-timeline > li code:first-child {
	display: block; font-family: var(--wp--preset--font-family--mono); font-size: 11.5px; font-weight: 500;
	color: var(--wp--preset--color--contrast-3); background: none; border: 0; padding: 0;
}

/* Chips (trigger patterns / server tags) */
ul.is-style-chips {
	list-style: none; margin-left: 0; padding: 0;
	display: flex; flex-wrap: wrap; gap: 6px;
}
.is-style-chips > li {
	font-family: var(--wp--preset--font-family--mono); font-size: 11px; line-height: 1.6;
	background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--border);
	border-radius: 5px; padding: 1px 7px; color: var(--wp--preset--color--contrast);
}
.is-style-chips > li a { color: inherit; }
.is-style-aurora .is-style-chips > li { background: rgba(255,255,255,0.07); border-color: rgba(255,255,255,0.12); color: rgba(255,255,255,0.88); }

/* Checkmarks */
ul.is-style-checks { list-style: none; padding-left: 0; }
.is-style-checks > li { position: relative; padding-left: 1.6rem; margin-bottom: 0.4rem; }
.is-style-checks > li::before {
	content: ""; position: absolute; left: 0; top: 0.3em; width: 1rem; height: 1rem; border-radius: 50%;
	background: var(--wp--preset--color--success-soft)
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7f37' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 62% no-repeat;
}

/* ---------- Buttons ------------------------------------------------------- */
.wp-element-button, .wp-block-button__link {
	transition: background-color var(--wp--custom--transition), color var(--wp--custom--transition), border-color var(--wp--custom--transition), transform var(--wp--custom--transition);
}
.wp-block-button__link:active { transform: translateY(1px); }
.wp-block-button.is-style-ghost .wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link {
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--contrast);
	border: 1px solid var(--wp--preset--color--border);
}
.wp-block-button.is-style-ghost .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--surface-2);
	color: var(--wp--preset--color--contrast);
	border-color: var(--wp--preset--color--contrast-3);
}

/* ---------- Images, separators, tables, details --------------------------- */
.wp-block-image.is-style-framed img {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--preset--border-radius--md);
	box-shadow: var(--wp--preset--shadow--raised);
}
.wp-block-separator.is-style-gradient {
	border: 0 !important; height: 2px !important; opacity: 1;
	background: var(--wp--preset--gradient--aurora) !important;
	border-radius: 2px;
}
.wp-block-table.is-style-clean table { border-collapse: separate; border-spacing: 0; width: 100%; border: 1px solid var(--wp--preset--color--border); border-radius: var(--wp--preset--border-radius--md); overflow: hidden; }
.wp-block-table.is-style-clean :is(th, td) { border: 0; border-bottom: 1px solid var(--wp--preset--color--border); padding: 0.6rem 0.85rem; text-align: left; }
.wp-block-table.is-style-clean tr:last-child td { border-bottom: 0; }
.wp-block-table.is-style-clean thead th { background: var(--wp--preset--color--surface); font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--wp--preset--color--contrast-3); }
.wp-block-table.is-style-clean tbody tr:hover { background: var(--wp--preset--color--surface); }

.wp-block-details.is-style-disclosure summary {
	cursor: pointer; list-style: none; display: inline-flex; align-items: center; gap: 8px;
	font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--contrast-2); padding: 6px 2px;
}
.wp-block-details.is-style-disclosure summary::-webkit-details-marker { display: none; }
.wp-block-details.is-style-disclosure summary::before {
	content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
	transform: rotate(-45deg); transition: transform 0.2s ease;
}
.wp-block-details.is-style-disclosure[open] summary::before { transform: rotate(45deg); }
.wp-block-details.is-style-disclosure[open] > :not(summary) { opacity: 0.85; }

/* ---------- Post cards / query loop -------------------------------------- */
.anilator-post-grid .wp-block-post { display: flex; }
.anilator-post-grid .wp-block-post > .wp-block-group { flex: 1; display: flex; flex-direction: column; }
/* Grid cells and cards may never be widened by their content. */
.anilator-post-grid .wp-block-post-template > li,
.anilator-post-grid .wp-block-post,
.anilator-post-grid .wp-block-post > .wp-block-group { min-width: 0; max-width: 100%; }
.anilator-post-grid .wp-block-post > .wp-block-group.is-style-card { overflow: hidden; }

/* Featured image: a fixed 16:9 frame bleeding to the card edges. Whatever
   media ends up inside (img with inline sizes from an optimiser, <picture>,
   <video>, iframe, svg) is forced to fill the frame and cropped. */
.anilator-post-grid .wp-block-post-featured-image {
	position: relative;
	width: calc(100% + 2.5rem) !important;
	max-width: none;
	height: auto !important;
	aspect-ratio: 16 / 9;
	margin: -1.1rem -1.25rem 0.9rem !important;
	overflow: hidden;
	flex-shrink: 0;
	background: var(--wp--preset--color--surface-2);
	border-radius: var(--wp--preset--border-radius--md) var(--wp--preset--border-radius--md) 0 0;
}
.anilator-post-grid .wp-block-post-featured-image > a,
.anilator-post-grid .wp-block-post-featured-image picture { display: block; width: 100%; height: 100%; }
.anilator-post-grid .wp-block-post-featured-image :is(img, video, iframe, svg, canvas, object, embed) {
	position: absolute; inset: 0;
	display: block;
	width: 100% !important; height: 100% !important;
	min-width: 0 !important; max-width: 100% !important; max-height: 100% !important;
	margin: 0 !important;
	object-fit: cover; object-position: center;
	border: 0;
	transition: transform 0.4s ease;
}
.is-style-card:has(> .wp-block-post-featured-image) { padding-top: 1.1rem; }

/* Same safety net for single posts/pages and anywhere else. */
.wp-block-post-featured-image { max-width: 100%; }
.wp-block-post-featured-image :is(img, video, picture) { max-width: 100%; }
.wp-block-post-featured-image:where([style*="aspect-ratio"]) { overflow: hidden; }
.wp-block-post-featured-image:where([style*="aspect-ratio"]) :is(img, video) { width: 100% !important; height: 100% !important; object-fit: cover; }
.wp-block-post-content :is(img, video) { max-width: 100%; height: auto; }
.anilator-post-grid .wp-block-post:hover .wp-block-post-featured-image :is(img, video) { transform: scale(1.03); }
.anilator-post-grid .wp-block-post-title { font-size: var(--wp--preset--font-size--large); line-height: 1.35; font-weight: 650; }
.anilator-post-grid .wp-block-post:hover .wp-block-group.is-style-card { box-shadow: var(--wp--preset--shadow--raised); }

.wp-block-post-terms a {
	display: inline-flex; align-items: center;
	background: var(--wp--preset--color--accent-soft); color: var(--wp--preset--color--accent);
	border-radius: 999px; padding: 1px 9px; text-decoration: none;
}
.wp-block-post-terms .wp-block-post-terms__separator { display: none; }
.wp-block-post-terms { display: flex; flex-wrap: wrap; gap: 6px; }

.wp-block-query-pagination { font-size: var(--wp--preset--font-size--small); gap: 6px; }
.wp-block-query-pagination-numbers .page-numbers {
	display: inline-flex; min-width: 32px; height: 32px; align-items: center; justify-content: center;
	border-radius: var(--wp--preset--border-radius--sm); border: 1px solid transparent; color: var(--wp--preset--color--contrast-2);
}
.wp-block-query-pagination-numbers .page-numbers.current { border-color: var(--wp--preset--color--accent); background: var(--wp--preset--color--accent-soft); color: var(--wp--preset--color--accent); font-weight: 600; }

/* ---------- Docs sidebar (reference page sidebar) ------------------------ */
.wp-block-template-part:has(> .anilator-sidebar) { position: sticky; top: calc(var(--wp--custom--header-height) + 24px); }
.admin-bar .wp-block-template-part:has(> .anilator-sidebar) { top: calc(var(--wp--custom--header-height) + 56px); }
.anilator-sidebar .wp-block-categories,
.anilator-sidebar .wp-block-page-list,
.anilator-sidebar .wp-block-latest-posts { list-style: none; padding: 0; margin: 0; }
.anilator-sidebar :is(.wp-block-categories, .wp-block-page-list, .wp-block-latest-posts) li {
	font-size: var(--wp--preset--font-size--small); margin: 0 0 1px; border-radius: var(--wp--preset--border-radius--sm);
	color: var(--wp--preset--color--contrast-3);
}
.anilator-sidebar :is(.wp-block-categories, .wp-block-page-list, .wp-block-latest-posts) li a {
	display: inline-block; max-width: calc(100% - 4ch); vertical-align: middle; padding: 6px 8px; border-radius: var(--wp--preset--border-radius--sm); color: var(--wp--preset--color--contrast);
	overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.anilator-sidebar :is(.wp-block-categories, .wp-block-page-list, .wp-block-latest-posts) li a:hover { background: var(--wp--preset--color--surface-2); text-decoration: none; }
.anilator-sidebar .current-cat > a,
.anilator-sidebar .current-menu-item > a { background: var(--wp--preset--color--accent-soft); color: var(--wp--preset--color--accent); font-weight: 600; }
@media (max-width: 781px) { .wp-block-template-part:has(> .anilator-sidebar) { position: static; } }

/* Docs layout rail */
.anilator-docs-layout > .wp-block-column:first-child { border-right: 1px solid var(--wp--preset--color--border); padding-right: var(--wp--preset--spacing--30); }
@media (max-width: 781px) { .anilator-docs-layout > .wp-block-column:first-child { border-right: 0; padding-right: 0; border-bottom: 1px solid var(--wp--preset--color--border); padding-bottom: var(--wp--preset--spacing--30); } }

/* ---------- Stat tiles (hero-stats) -------------------------------------- */
.anilator-stat {
	background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 8px; padding: 0.55rem 0.9rem; min-width: 96px;
}
.anilator-stat p { margin: 0; }
.anilator-stat p:first-child { font-size: 1.15rem; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--wp--preset--color--contrast); }
.anilator-stat p:last-child { font-size: 11px; color: var(--wp--preset--color--contrast-2); text-transform: uppercase; letter-spacing: 0.04em; }
.is-style-aurora .anilator-stat { background: var(--wp--custom--glass--background); border-color: var(--wp--custom--glass--border); }
.is-style-aurora .anilator-stat p:first-child { color: #fff; }
.is-style-aurora .anilator-stat p:last-child { color: var(--aurora-text-low); }

/* ---------- Category bars (reference page summary) ----------------------- */
.anilator-bars .anilator-bar { display: grid; grid-template-columns: minmax(110px, 160px) 1fr 32px; align-items: center; gap: 10px; }
.anilator-bars .anilator-bar > p { margin: 0; font-size: 12.5px; }
.anilator-bars .anilator-bar > p:last-child { font-family: var(--wp--preset--font-family--mono); font-size: 11px; text-align: right; color: var(--wp--preset--color--contrast-2); font-variant-numeric: tabular-nums; }
.anilator-bars .anilator-bar > .wp-block-group {
	height: 9px; border-radius: 5px; background: var(--wp--preset--color--accent-soft); overflow: hidden; padding: 0 !important;
}
.anilator-bars .anilator-bar > .wp-block-group > p {
	margin: 0; height: 100%; border-radius: 5px; background: var(--wp--preset--color--accent); font-size: 0; line-height: 0; color: transparent;
}
.anilator-bar.w-100 > .wp-block-group > p { width: 100%; }
.anilator-bar.w-80 > .wp-block-group > p { width: 80%; }
.anilator-bar.w-60 > .wp-block-group > p { width: 60%; }
.anilator-bar.w-45 > .wp-block-group > p { width: 45%; }
.anilator-bar.w-30 > .wp-block-group > p { width: 30%; }
.anilator-bar.w-15 > .wp-block-group > p { width: 15%; }

/* ---------- Maintenance rows --------------------------------------------- */
.anilator-maint-day { font-size: 1.6rem; font-weight: 800; line-height: 1; margin: 0; font-variant-numeric: tabular-nums; }
.anilator-maint-month { font-size: 12px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--accent-2); margin: 0.25rem 0 0; }
.anilator-maint-row + .anilator-maint-row { border-top: 1px solid var(--wp--preset--color--border); }

/* ---------- Comments ----------------------------------------------------- */
.wp-block-comment-template { list-style: none; padding-left: 0; }
.wp-block-comment-template .children { list-style: none; padding-left: 1.25rem; border-left: 2px solid var(--wp--preset--color--border); }
.wp-block-post-comments-form :is(input[type="text"], input[type="email"], input[type="url"], textarea) {
	width: 100%; border: 1px solid var(--wp--preset--color--border); border-radius: var(--wp--preset--border-radius--sm);
	background: var(--wp--preset--color--surface); color: var(--wp--preset--color--contrast); padding: 0.55rem 0.7rem; font: inherit;
}
.wp-block-post-comments-form :is(input, textarea):focus { outline: none; border-color: var(--wp--preset--color--accent); box-shadow: 0 0 0 3px var(--wp--preset--color--accent-soft); }

/* ---------- Footer -------------------------------------------------------- */
.anilator-footer { border-top: 1px solid var(--wp--preset--color--border); }
.anilator-footer .wp-block-navigation-item__content { color: var(--wp--preset--color--contrast-2); }
.anilator-legend { display: flex; flex-wrap: wrap; gap: 14px; }
.anilator-legend p { margin: 0; display: inline-flex; align-items: center; gap: 6px; }
.anilator-legend p::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--wp--preset--color--success); }
.anilator-legend p:nth-child(2)::before { background: var(--wp--preset--color--danger); }
.anilator-legend p:nth-child(3)::before { background: var(--wp--preset--color--accent-2); }

/* ---------- Skeleton shimmer (useful for loading placeholders) ----------- */
.anilator-skeleton {
	min-height: 120px; border-radius: var(--wp--preset--border-radius--lg);
	background: linear-gradient(90deg, var(--wp--preset--color--surface), var(--wp--preset--color--surface-2), var(--wp--preset--color--surface));
	background-size: 200% 100%; animation: anilator-shimmer 1.4s infinite linear;
}
@keyframes anilator-shimmer { to { background-position: -200% 0; } }

/* ---------- Reveal on scroll --------------------------------------------- */
@media (prefers-reduced-motion: no-preference) {
	.js-anilator .anilator-reveal { opacity: 0; transform: translateY(10px); transition: opacity 0.5s ease, transform 0.5s ease; }
	.js-anilator .anilator-reveal.is-visible { opacity: 1; transform: none; }
}

/* ---------- Collapsible description (Show more) -------------------------- */
.anilator-clamp.is-clamped { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.anilator-clamp-toggle {
	background: none; border: 0; padding: 0; margin: -0.4rem 0 0.6rem; cursor: pointer;
	font: inherit; font-size: 11.5px; color: var(--wp--preset--color--accent);
}

/* ---------- Editor niceties ---------------------------------------------- */
.editor-styles-wrapper .wp-block-group.is-style-aurora > .anilator-mesh { display: none; }
.editor-styles-wrapper .anilator-header { position: relative; }
.anilator-clamp-toggle { align-self: flex-start; text-align: left; }
.anilator-docs-layout > .wp-block-column { min-width: 0; }
.anilator-sidebar .wp-block-latest-posts li a { display: block; max-width: 100%; }

/* ---------- Brand logo (light/dark swap) --------------------------------- */
.anilator-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none !important; color: var(--wp--preset--color--contrast); white-space: nowrap; }
.anilator-brand__logo { display: block; width: auto; flex-shrink: 0; }
.anilator-brand__logo--white { display: none; }
:root[data-theme="dark"] .anilator-brand__logo--ink { display: none; }
:root[data-theme="dark"] .anilator-brand__logo--white { display: block; }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .anilator-brand__logo--ink { display: none; }
	:root:not([data-theme="light"]) .anilator-brand__logo--white { display: block; }
}
.is-dark .anilator-brand, .is-style-aurora .anilator-brand { color: #fff; }
.is-dark .anilator-brand__logo--ink, .is-style-aurora .anilator-brand__logo--ink { display: none !important; }
.is-dark .anilator-brand__logo--white, .is-style-aurora .anilator-brand__logo--white { display: block !important; }
.anilator-brand__divider { width: 1px; height: 18px; background: var(--wp--preset--color--border); flex-shrink: 0; }
.is-dark .anilator-brand__divider { background: rgba(255,255,255,0.2); }
.anilator-brand__title { font-size: var(--wp--preset--font-size--medium); font-weight: 650; letter-spacing: -0.01em; }

/* ==========================================================================
   Animated background mode ("Animated background" template)
   Faithful to the CAST status page: fixed gradient + mesh + veil behind
   everything, translucent glass panels, purple accents, always dark.
   ========================================================================== */
body.anilator-animated-bg {
	--wp--preset--color--base: #0c1424;
	--wp--preset--color--surface: rgba(255,255,255,0.05);
	--wp--preset--color--surface-2: rgba(255,255,255,0.09);
	--wp--preset--color--border: rgba(255,255,255,0.10);
	--wp--preset--color--contrast: #f5f3ff;
	--wp--preset--color--contrast-2: rgba(245,243,255,0.72);
	--wp--preset--color--contrast-3: rgba(245,243,255,0.48);
	--wp--preset--color--accent: #7c5cff;
	--wp--preset--color--accent-2: #a78bfa;
	--wp--preset--color--accent-soft: rgba(124,92,255,0.18);
	--wp--preset--color--success: #6ee7b7;
	--wp--preset--color--success-soft: rgba(52,211,153,0.14);
	--wp--preset--color--warning: #fde68a;
	--wp--preset--color--warning-soft: rgba(251,191,36,0.12);
	--wp--preset--color--danger: #fecaca;
	--wp--preset--color--danger-soft: rgba(248,113,113,0.14);
	--wp--preset--shadow--card: 0 40px 100px -30px rgba(0,0,0,0.55);
	--wp--preset--shadow--raised: 0 40px 100px -30px rgba(0,0,0,0.65);
	--wp--custom--dark--accent: #a78bfa;
	--wp--custom--dark--accent-2: #7c5cff;
	--panel: rgba(20,14,38,0.55);
	color-scheme: dark;
	background: #0c1424;
	color: #f5f3ff;
	overflow-x: hidden;
}
.anilator-bg {
	position: fixed; inset: 0; z-index: 0; pointer-events: none;
	background: var(--wp--preset--gradient--night-sky);
}
.anilator-bg-mesh { position: fixed; inset: 0; width: 100vw; height: 100vh; z-index: 1; opacity: 0.5; pointer-events: none; }
.anilator-bg-veil {
	position: fixed; inset: 0; z-index: 1; pointer-events: none;
	background: radial-gradient(ellipse at 50% 0%, rgba(6,10,20,0) 0%, rgba(6,10,20,0.4) 100%);
}
@media (prefers-reduced-motion: reduce) { .anilator-bg-mesh { display: none; } }
body.anilator-animated-bg .wp-site-blocks { position: relative; z-index: 2; background: transparent; }

/* Panels become frosted glass over the gradient */
body.anilator-animated-bg :is(.wp-block-group.is-style-card, .wp-block-group.is-style-accent-bar, .wp-block-group.is-style-glass, .wp-block-group.is-style-inset, .anilator-stat) {
	background: var(--panel);
	border-color: rgba(255,255,255,0.10);
	box-shadow: 0 40px 100px -30px rgba(0,0,0,0.55);
	-webkit-backdrop-filter: blur(22px) saturate(140%);
	backdrop-filter: blur(22px) saturate(140%);
}
body.anilator-animated-bg :is(.wp-block-group.is-style-card, .wp-block-group.is-style-glass, .wp-block-group.is-style-inset) { border-radius: 20px; }
body.anilator-animated-bg .wp-block-group.is-style-accent-bar { border-left-width: 4px; }
body.anilator-animated-bg .wp-block-group.is-style-callout { background: rgba(251,191,36,0.12); border-color: rgba(251,191,36,0.35); color: #f5f3ff; }

/* Status-page pills: tinted with a coloured outline */
body.anilator-animated-bg p:is(.is-style-pill-ok, .is-style-pill-warn, .is-style-pill-down, .is-style-pill-info) { border: 1px solid; font-weight: 700; padding: 3px 10px 3px 9px; }
body.anilator-animated-bg p.is-style-pill-ok   { color: #6ee7b7; background: rgba(52,211,153,0.14);  border-color: rgba(52,211,153,0.35); }
body.anilator-animated-bg p.is-style-pill-warn { color: #fde68a; background: rgba(251,191,36,0.12);  border-color: rgba(251,191,36,0.35); }
body.anilator-animated-bg p.is-style-pill-down { color: #fecaca; background: rgba(248,113,113,0.14); border-color: rgba(248,113,113,0.40); }
body.anilator-animated-bg p.is-style-pill-info { color: #bfdbfe; background: rgba(96,165,250,0.14);  border-color: rgba(96,165,250,0.38); }
body.anilator-animated-bg .wp-block-group.is-style-glass:has(.is-style-pill-ok)::before   { background: #34d399; }
body.anilator-animated-bg .wp-block-group.is-style-glass:has(.is-style-pill-warn)::before { background: #fbbf24; }
body.anilator-animated-bg .wp-block-group.is-style-glass:has(.is-style-pill-down)::before { background: #f87171; }
body.anilator-animated-bg .wp-block-group.is-style-glass:has(.is-style-pill-info)::before { background: #60a5fa; }
body.anilator-animated-bg .wp-block-group.is-style-accent-bar:has(.is-style-pill-ok)   { border-left-color: #34d399; }
body.anilator-animated-bg .wp-block-group.is-style-accent-bar:has(.is-style-pill-warn) { border-left-color: #fbbf24; }
body.anilator-animated-bg .wp-block-group.is-style-accent-bar:has(.is-style-pill-down) { border-left-color: #f87171; }
body.anilator-animated-bg .wp-block-group.is-style-accent-bar:has(.is-style-pill-info) { border-left-color: #60a5fa; }

/* Headline gradient + buttons like the status page */
body.anilator-animated-bg :is(.anilator-grad, .wp-block-heading.is-style-gradient) { background: var(--wp--preset--gradient--status-text); -webkit-background-clip: text; background-clip: text; }
body.anilator-animated-bg .wp-block-button:not(.is-style-ghost):not(.is-style-outline) .wp-block-button__link {
	background: linear-gradient(135deg, #8b5cf6, #6d4fe0); color: #fff;
	box-shadow: 0 8px 20px -8px rgba(124,92,255,0.7);
}
body.anilator-animated-bg .wp-block-button:not(.is-style-ghost):not(.is-style-outline) .wp-block-button__link:hover { box-shadow: 0 10px 26px -6px rgba(124,92,255,0.9); }
body.anilator-animated-bg .wp-block-button:is(.is-style-ghost, .is-style-outline) .wp-block-button__link { background: rgba(255,255,255,0.05); border-color: rgba(255,255,255,0.14); color: rgba(255,255,255,0.88); }
body.anilator-animated-bg .wp-block-button:is(.is-style-ghost, .is-style-outline) .wp-block-button__link:hover { background: rgba(255,255,255,0.10); border-color: rgba(255,255,255,0.25); }
body.anilator-animated-bg .is-style-chips > li { background: rgba(255,255,255,0.07); border-color: rgba(255,255,255,0.12); color: rgba(255,255,255,0.88); }
body.anilator-animated-bg p.is-style-eyebrow { color: #a78bfa; letter-spacing: 0.14em; }

/* Aurora sections become transparent — the page itself is the aurora */
body.anilator-animated-bg .wp-block-group.is-style-aurora { background: none; }
body.anilator-animated-bg .wp-block-group.is-style-aurora::after { display: none; }

/* Header/footer: navbar glass; the toggle has nothing to switch here */
body.anilator-animated-bg .anilator-header,
body.anilator-animated-bg .anilator-header.is-dark { background: rgba(10,8,22,0.55); border-bottom-color: rgba(255,255,255,0.10); -webkit-backdrop-filter: blur(16px) saturate(140%); backdrop-filter: blur(16px) saturate(140%); }
body.anilator-animated-bg .anilator-header .current-menu-item > .wp-block-navigation-item__content,
body.anilator-animated-bg .anilator-header .wp-block-navigation-item__content[aria-current="page"] { background: rgba(124,92,255,0.18); color: #fff; }
body.anilator-animated-bg .anilator-footer { background: rgba(10,8,22,0.35); border-top-color: rgba(255,255,255,0.10); }
body.anilator-animated-bg .anilator-toggle { display: none; }
body.anilator-animated-bg .anilator-brand__logo--ink { display: none !important; }
body.anilator-animated-bg .anilator-brand__logo--white { display: block !important; }
body.anilator-animated-bg .anilator-brand { color: #fff; }

/* ---------- Navigation dropdowns (submenus) ------------------------------ */
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container {
	min-width: 230px !important;
	padding: 6px !important;
	gap: 1px;
	background: var(--wp--preset--color--base) !important;
	color: var(--wp--preset--color--contrast) !important;
	border: 1px solid var(--wp--preset--color--border) !important;
	border-radius: var(--wp--preset--border-radius--md);
	box-shadow: var(--wp--preset--shadow--raised);
	z-index: 90;
}
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	display: flex; align-items: center; gap: 8px;
	width: 100%;
	padding: 7px 10px !important;
	border-radius: var(--wp--preset--border-radius--sm);
	color: var(--wp--preset--color--contrast) !important;
	font-weight: 500;
	white-space: nowrap;
}
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:focus-within > .wp-block-navigation-item__content {
	background: var(--wp--preset--color--surface-2) !important;
	color: var(--wp--preset--color--contrast) !important;
	text-decoration: none;
}
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container :is(.current-menu-item > .wp-block-navigation-item__content, .wp-block-navigation-item__content[aria-current="page"]) {
	background: var(--wp--preset--color--accent-soft) !important;
	color: var(--wp--preset--color--accent) !important;
	font-weight: 600;
}
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon { color: var(--wp--preset--color--contrast-3); }
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container img { width: 16px; height: 16px; flex-shrink: 0; }
/* Nested flyouts open beside their parent */
.anilator-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { top: -7px !important; left: calc(100% + 6px) !important; }

/* Dark header: dark glass dropdown */
.anilator-header.is-dark .wp-block-navigation .wp-block-navigation__submenu-container,
body.anilator-animated-bg .anilator-header .wp-block-navigation .wp-block-navigation__submenu-container {
	background: rgba(14,12,30,0.96) !important;
	border-color: rgba(255,255,255,0.12) !important;
	box-shadow: 0 24px 48px -12px rgba(0,0,0,0.6);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	backdrop-filter: blur(16px) saturate(140%);
}
.anilator-header.is-dark .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
body.anilator-animated-bg .anilator-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: rgba(255,255,255,0.82) !important; }
.anilator-header.is-dark .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.anilator-header.is-dark .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:focus-within > .wp-block-navigation-item__content,
body.anilator-animated-bg .anilator-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background: rgba(255,255,255,0.08) !important; color: #fff !important;
}
.anilator-header.is-dark .wp-block-navigation .wp-block-navigation__submenu-container :is(.current-menu-item > .wp-block-navigation-item__content, .wp-block-navigation-item__content[aria-current="page"]) {
	background: rgba(124,92,255,0.22) !important; color: #fff !important;
}
.anilator-header.is-dark .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon { color: rgba(255,255,255,0.5); }

/* Mobile overlay: submenus are inline lists, keep them readable */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 0 0 1rem !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { color: var(--wp--preset--color--contrast) !important; }
