/*
Theme Name: Activated A11y
Theme URI: https://negishut.app
Author: Activated Digital
Author URI: https://activated.digital
Description: תבנית בלוקים נגישה (WCAG 2.2 AA, ת״י 5568) לאתר בדיקות הנגישות של Activated Digital.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: activated-a11y
*/

/* ---------------------------------------------------------------- tokens */
:root {
	--aad-accent: #0668A8;
	--aad-accent-hover: #04507F;
	--aad-tint: #E6F1FA;
	--aad-on-dark: #5CB6F0;
	--aad-ink: #1D1E2C;
	--aad-text: #33364A;
	--aad-muted: #555A76;
	--aad-lavender: #EAF1F9;
	--aad-warm: #F6F4F2;
	--aad-soft: #F2F3F8;
	--aad-line: #E3E5F0;
	--aad-field: #8A8FA8;
	--aad-dark: #1D1E2C;
	--aad-darker: #13141C;
	--aad-dark-text: #B9BCCF;
	--aad-rubik: Rubik, 'Segoe UI', Arial, sans-serif;
	--aad-radius: 12px;
	--aad-section: 88px;
	--aad-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------- base */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-padding-top: 116px; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img, svg { max-width: 100%; }
strong { font-weight: 700; }
h1 strong, h2 strong { color: var(--aad-accent); font-weight: inherit; }
.aad-on-dark h1 strong, .aad-on-dark h2 strong { color: var(--aad-on-dark); }
code { font-size: .9em; background: var(--aad-soft); padding: .1em .35em; border-radius: 4px; }
a { text-underline-offset: .18em; }
.aad-icon { flex-shrink: 0; display: block; }

/* ---------------------------------------------------------------- accessibility utilities */
.screen-reader-text, .sr-only {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; word-wrap: normal !important;
}
body .skip-link.screen-reader-text:focus, body .skip-link.screen-reader-text:focus-visible {
	clip: auto; clip-path: none; position: fixed !important; display: block; line-height: 1.4; width: auto; height: auto; margin: 0; overflow: visible; white-space: normal;
	top: 12px; right: 12px; left: auto; z-index: 100000;
	padding: 14px 22px; border-radius: 4px; background: var(--aad-ink); color: #fff;
	font-family: var(--aad-rubik); font-weight: 600; font-size: 1rem; text-decoration: none;
	outline: 3px solid var(--aad-on-dark); outline-offset: 2px;
}
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid var(--aad-accent);
	outline-offset: 3px;
}
.aad-on-dark :focus-visible { outline-color: var(--aad-on-dark); }
.aad-on-accent :focus-visible { outline-color: #fff; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
	.aad-card, .aad-price-card, .aad-faq .wp-block-details, .aad-form, .aad-field input, .aad-field select, .aad-post-card .aad-thumb { border: 1px solid CanvasText; }
	.wp-block-button__link, .aad-form__submit { border: 2px solid ButtonText; }
	.aad-icon-box, .aad-thumb__icon { forced-color-adjust: auto; }
}

/* ---------------------------------------------------------------- layout resets */
.wp-site-blocks > * + * { margin-block-start: 0; }
.aad-main { margin: 0; }
.aad-main > * { margin-block: 0; }
.aad-main > .wp-block-post-content > * { margin-block: 0; }
.aad-section { padding-block: var(--aad-section); }
.aad-section > * { margin-block: 0; }
.aad-section > * + * { margin-block-start: 48px; }
.aad-bg-lavender { background: var(--aad-lavender); }
.aad-bg-warm { background: var(--aad-warm); }
.aad-bg-white { background: #fff; }
.aad-bg-dark { background: var(--aad-dark); color: #fff; }
.aad-bg-accent { background: var(--aad-accent); color: #fff; }
.aad-bg-dark h1, .aad-bg-dark h2, .aad-bg-dark h3, .aad-bg-accent h2, .aad-bg-accent h3 { color: #fff; }
.aad-bg-dark a:not(.wp-block-button__link) { color: #fff; }
.aad-bg-dark a:not(.wp-block-button__link):hover { color: var(--aad-on-dark); }
.aad-bg-dark .aad-form a:not(.wp-block-button__link) { color: var(--aad-accent); }
.aad-bg-dark .aad-form a:not(.wp-block-button__link):hover { color: var(--aad-accent-hover); }
.aad-bg-dark .aad-muted, .aad-bg-dark .aad-lead { color: var(--aad-dark-text); }

/* ---------------------------------------------------------------- type helpers */
.aad-eyebrow { font-family: var(--aad-rubik); font-weight: 600; font-size: .9375rem; line-height: 1.4; color: var(--aad-accent); margin: 0 0 12px; }
.aad-bg-dark .aad-eyebrow, .aad-on-dark .aad-eyebrow { color: var(--aad-on-dark); }
.aad-lead { font-size: 1.125rem; line-height: 1.7; color: var(--aad-muted); }
.aad-muted { color: var(--aad-muted); }
.aad-head { display: flex; flex-direction: column; gap: 0; max-width: 820px; }
.aad-head > * { margin: 0; }
.aad-head > h2 + p, .aad-head > .wp-block-heading + p { margin-top: 16px; }
.aad-head--center { align-items: center; text-align: center; margin-inline: auto !important; }
.aad-head--split { max-width: var(--wp--style--global--content-size, 1200px); flex-direction: row; align-items: flex-end; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.aad-head--split > .wp-block-group { display: flex; flex-direction: column; }
.aad-head--split > .wp-block-group > * { margin: 0; }

/* ---------------------------------------------------------------- buttons */
.wp-block-buttons { gap: 14px; }
.wp-block-button__link { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; text-decoration: none; border: 2px solid transparent; }
.wp-block-button.is-style-dark-outline .wp-block-button__link { background: transparent; color: var(--aad-ink); border-color: var(--aad-ink); }
.wp-block-button.is-style-dark-outline .wp-block-button__link:hover { background: var(--aad-ink); color: #fff; }
.wp-block-button.is-style-light .wp-block-button__link { background: #fff; color: var(--aad-ink); }
.wp-block-button.is-style-light .wp-block-button__link:hover { background: var(--aad-soft); color: var(--aad-ink); }
.aad-arrow .wp-block-button__link::after {
	content: ""; width: 20px; height: 20px; flex-shrink: 0; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 18l-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 18l-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------------------------------------------------------------- header */
/* Sticky logo + menu row: the contact bar above it scrolls away (top = minus its height). */
.aad-site-header { margin: 0; position: sticky; top: -44px; z-index: 100; }
body.admin-bar .aad-site-header { top: -12px; }
.aad-header { box-shadow: 0 6px 18px -14px rgba(29,30,44,.35); }
.aad-topbar { background: var(--aad-accent); color: #fff; font-size: .9375rem; font-weight: 500; }
.aad-topbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 44px; margin: 0 auto; }
.aad-topbar ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 8px 28px; flex-wrap: wrap; }
.aad-topbar a { color: #fff; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.aad-topbar a:hover { color: #fff; text-decoration: underline; }
.aad-topbar .aad-contact-links span { display: inline-flex; align-items: center; gap: 6px; }
.aad-header { background: #fff; border-bottom: 1px solid var(--aad-line); }
.aad-header__inner { min-height: 92px; gap: 24px; margin: 0 auto; }
.aad-logo { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; min-height: 44px; }
.aad-logo img { width: 197px; height: 40px; display: block; }
.aad-nav { font-family: var(--aad-rubik); font-weight: 500; font-size: 1rem; }
.aad-nav .wp-block-navigation__container { gap: 6px 28px; }
.aad-nav .wp-block-navigation-item__content { display: inline-flex; align-items: center; min-height: 44px; color: var(--aad-ink); text-decoration: none; }
.aad-nav .wp-block-navigation-item__content:hover { color: var(--aad-accent); }
.aad-nav .current-menu-item > .wp-block-navigation-item__content,
.aad-nav [aria-current] { color: var(--aad-accent); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 10px; }
.aad-nav .wp-block-navigation__responsive-container-open,
.aad-nav .wp-block-navigation__responsive-container-close { width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 8px; background: var(--aad-soft); color: var(--aad-ink); }
.aad-nav .wp-block-navigation__responsive-container.is-menu-open { background: #fff !important; color: var(--aad-ink) !important; padding: 16px 24px 32px; }
.aad-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 72px !important; align-items: stretch !important; }
.aad-nav .is-menu-open .wp-block-navigation__container { width: 100%; gap: 0 !important; align-items: stretch !important; }
.aad-nav .is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--aad-line); }
.aad-nav .is-menu-open .wp-block-navigation-item__content { width: 100%; min-height: 56px; font-size: 1.25rem; padding: 0 !important; }
.aad-header__cta { margin: 0; }
.aad-header__cta .wp-block-button__link { min-height: 50px; padding: 0 24px; font-size: .9375rem; white-space: nowrap; }
.aad-page-body { padding-block: 56px 88px; }

/* ---------------------------------------------------------------- page banner */
.aad-banner { background: var(--aad-lavender); padding-block: 56px 64px; }
.aad-banner > * { margin-block: 0; }
.aad-banner h1 { margin-top: 16px; font-size: clamp(2.125rem, 4vw, 3.375rem); line-height: 1.15; }
.aad-banner .aad-lead, .aad-banner > p:not(.aad-eyebrow) { margin-top: 16px; max-width: 820px; font-size: 1.1875rem; }
.aad-breadcrumbs { font-size: .9375rem; line-height: 1.5; color: var(--aad-muted); }
.aad-breadcrumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 10px; }
.aad-breadcrumbs li { display: inline-flex; align-items: center; gap: 10px; }
.aad-breadcrumbs a { color: var(--aad-muted); text-decoration: underline; display: inline-flex; min-height: 24px; align-items: center; }
.aad-breadcrumbs a:hover { color: var(--aad-accent); }
.aad-breadcrumbs [aria-current] { color: var(--aad-ink); }

/* ---------------------------------------------------------------- chips, pills, tags */
.aad-chip { display: inline-flex !important; align-items: center; gap: 10px; background: #fff; border: 1px solid #DFE2EE; border-radius: 999px; padding: 9px 18px; font-family: var(--aad-rubik); font-weight: 500; font-size: .9375rem; line-height: 1.3; margin: 0; width: fit-content; }
.aad-chip::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--aad-accent); flex-shrink: 0; }
.aad-pills { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; font-family: var(--aad-rubik); font-weight: 600; font-size: 1rem; line-height: 1.2; }
.aad-pills li { padding: 12px 18px; background: #fff; border: 1px solid #DFE2EE; border-radius: 8px; }
.aad-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto !important; padding-top: 18px; font-family: var(--aad-rubik); font-weight: 500; font-size: .75rem; line-height: 1; }
.aad-tags span { padding: 6px 8px; border-radius: 4px; background: var(--aad-soft); color: #44485F; direction: ltr; }

/* ---------------------------------------------------------------- grids & cards */
.aad-grid { display: grid; gap: 24px; }
.aad-grid > * { margin: 0 !important; }
.aad-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aad-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.aad-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.aad-card { display: flex; flex-direction: column; padding: 28px; background: #fff; border: 1px solid var(--aad-line); border-radius: var(--aad-radius); }
.aad-card > * { margin: 0; }
.aad-card > * + * { margin-top: 16px; }
.aad-card h3 { font-size: 1.1875rem; line-height: 1.3; }
.aad-card p { font-size: 1rem; line-height: 1.65; color: var(--aad-muted); }
.aad-card__head { display: flex; align-items: center; gap: 14px; }
.aad-card__head > * { margin: 0; }
.aad-icon-box { flex-shrink: 0; width: 52px; height: 52px; border-radius: 12px; background: var(--aad-tint); color: var(--aad-accent); display: flex; align-items: center; justify-content: center; }
.aad-icon-box--round { border-radius: 50%; background: #fff; }

/* ---------------------------------------------------------------- hero */
.aad-hero { background: var(--aad-lavender); padding-block: 80px 96px; }
.aad-hero__inner { display: grid; grid-template-columns: minmax(0, 620px) minmax(0, 560px); justify-content: space-between; align-items: center; gap: 48px; }
.aad-hero__inner > * { margin: 0 !important; }
.aad-hero__text > * { margin: 0; }
.aad-hero__text h1 { margin-top: 26px; }
.aad-hero__text .aad-lead { margin-top: 24px; font-size: 1.25rem; max-width: 580px; }
.aad-hero__text .wp-block-buttons { margin-top: 36px; }
.aad-hero__standards { margin-top: 52px !important; }
.aad-hero__standards > p { font-family: var(--aad-rubik); font-weight: 600; font-size: .875rem; color: var(--aad-muted); margin: 0 0 14px; }

.aad-illus { position: relative; width: 100%; max-width: 560px; aspect-ratio: 56 / 52; font-family: var(--aad-rubik); }
.aad-illus__blob { position: absolute; top: 7.7%; left: 9%; width: 80%; aspect-ratio: 1; border-radius: 50%; background: var(--aad-tint); }
.aad-illus__win { position: absolute; top: 13.5%; left: 3.6%; width: 89%; background: #fff; border: 1px solid #DFE2EE; border-radius: 14px; box-shadow: 0 40px 70px -40px rgba(29,30,44,.45); direction: ltr; }
.aad-illus__bar { height: 42px; display: flex; align-items: center; gap: 8px; padding: 0 16px; border-bottom: 1px solid #EDEEF5; }
.aad-illus__dot { width: 10px; height: 10px; border-radius: 50%; background: #DFE2EE; }
.aad-illus__url { margin-left: 12px; width: 50%; height: 24px; border-radius: 6px; background: #F3F4F9; padding: 0 12px; font-size: 12px; line-height: 24px; color: var(--aad-muted); }
.aad-illus__body { direction: rtl; padding: 26px 28px 30px; display: flex; flex-direction: column; gap: 22px; }
.aad-illus__row { display: flex; justify-content: space-between; align-items: center; }
.aad-illus__cols { display: flex; gap: 24px; align-items: flex-start; }
.aad-illus__col { flex-grow: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.aad-illus i { display: block; border-radius: 3px; background: #CDD0DF; height: 7px; }
.aad-illus i.dk { background: var(--aad-ink); height: 14px; }
.aad-illus i.lg { background: var(--aad-ink); height: 12px; width: 74px; }
.aad-illus__navbars { display: flex; gap: 10px; }
.aad-illus__navbars i { width: 34px; }
.aad-illus__btnwrap { position: relative; margin-top: 22px; }
.aad-illus__btnring { padding: 4px; border: 2px dashed #C4002F; border-radius: 8px; }
.aad-illus__btn { display: flex; align-items: center; height: 32px; padding: 0 18px; border-radius: 5px; background: #9CC9E8; }
.aad-illus__btn i { width: 64px; background: #D6E9F6; }
.aad-illus__img { position: relative; flex-shrink: 0; width: 150px; height: 130px; border-radius: 10px; background: #E6E8F3; display: flex; align-items: center; justify-content: center; color: #9CA1BC; }
.aad-illus__field { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.aad-illus__input { width: 260px; max-width: 100%; height: 38px; border: 1.5px solid var(--aad-field); border-radius: 6px; outline: 3px solid var(--aad-accent); outline-offset: 2px; }
.aad-illus__tag { position: absolute; display: flex; align-items: center; gap: 6px; white-space: nowrap; padding: 6px 10px; border-radius: 999px; background: #fff; border: 1px solid #F3C2CD; box-shadow: 0 8px 20px -10px rgba(29,30,44,.35); font-weight: 500; font-size: 12.5px; line-height: 1.2; color: #B00020; }
.aad-illus__tag--pass { border-color: #BFE3CF; color: #0F7B4B; }
.aad-illus__badge { position: absolute; top: 4.6%; right: 0; width: 108px; height: 108px; border-radius: 50%; background: var(--aad-ink); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1.1; box-shadow: 0 20px 40px -20px rgba(29,30,44,.6); }
.aad-illus__badge span:first-child { font-weight: 600; font-size: 14px; color: var(--aad-on-dark); }
.aad-illus__badge span:last-child { font-weight: 700; font-size: 22px; direction: ltr; }
.aad-illus__sr { position: absolute; bottom: 4.6%; right: 10px; width: 280px; display: flex; align-items: center; gap: 12px; padding: 16px 18px; border-radius: 12px; background: var(--aad-ink); color: #fff; box-shadow: 0 24px 44px -20px rgba(29,30,44,.6); }
.aad-illus__sr > span:first-child { flex-shrink: 0; width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,.08); color: var(--aad-on-dark); display: flex; align-items: center; justify-content: center; }
.aad-illus__sr small { display: block; font-family: Assistant, sans-serif; font-size: 13px; line-height: 1.3; color: var(--aad-dark-text); }
.aad-illus__sr b { display: block; font-weight: 500; font-size: 16px; line-height: 1.3; }

/* ---------------------------------------------------------------- perks strip */
.aad-perks { padding-block: 64px; }
.aad-perks__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.aad-perks__list li { padding: 0 32px; border-right: 1px solid rgba(255,255,255,.14); }
.aad-perks__list li:first-child { padding-right: 0; border-right: 0; }
.aad-perks__list li:last-child { padding-left: 0; }
.aad-perks__list .aad-icon { color: var(--aad-on-dark); }
.aad-perks__list h3 { margin: 18px 0 0; font-size: 1.3125rem; line-height: 1.35; color: #fff; }
.aad-perks__list p { margin: 10px 0 0; font-size: 1rem; line-height: 1.65; color: var(--aad-dark-text); }

/* ---------------------------------------------------------------- why */
.aad-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
.aad-split > * { margin: 0 !important; }
.aad-split--report { grid-template-columns: minmax(0, 470px) minmax(0, 660px); justify-content: space-between; }
.aad-reasons { list-style: none; margin: 36px 0 0; padding: 0; display: flex; flex-direction: column; gap: 28px; }
.aad-reasons li { display: flex; gap: 18px; align-items: flex-start; }
.aad-reasons h3 { margin: 0; font-size: 1.25rem; }
.aad-reasons p { margin: 6px 0 0; font-size: 1.0625rem; line-height: 1.65; color: var(--aad-muted); }
.aad-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; list-style: none; margin: 0; padding: 0; }
.aad-tiles li { padding: 28px; border-radius: 16px; background: #fff; }
.aad-tiles h3 { margin: 18px 0 0; font-size: 1.1875rem; }
.aad-tiles p { margin: 6px 0 0; font-size: 1rem; line-height: 1.6; color: var(--aad-muted); }
.aad-quote-card { margin: 20px 0 0 !important; padding: 24px 28px; border-radius: 16px; background: var(--aad-ink); color: #fff; font-family: var(--aad-rubik); font-weight: 500; font-size: 1.125rem; line-height: 1.55; }

/* ---------------------------------------------------------------- checklists */
.is-style-checks, .aad-checks { list-style: none; padding: 0; margin-inline: 0; display: flex; flex-direction: column; gap: 12px; }
.is-style-checks li, .aad-checks li { position: relative; padding-right: 32px; line-height: 1.6; }
.is-style-checks li::before, .aad-checks li::before {
	content: ""; position: absolute; right: 0; top: .25em; width: 20px; height: 20px; background: var(--aad-accent);
	-webkit-mask: var(--aad-check) center / contain no-repeat; mask: var(--aad-check) center / contain no-repeat;
}
.aad-bg-dark .is-style-checks li::before { background: var(--aad-on-dark); }

/* ---------------------------------------------------------------- process */
.aad-steps { position: relative; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px; counter-reset: step; }
.aad-steps::before { content: ""; position: absolute; top: 31px; right: 10%; left: 10%; border-top: 2px dashed #BFC3D6; }
.aad-steps li { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; counter-increment: step; }
.aad-steps li::before { content: counter(step); width: 64px; height: 64px; border-radius: 50%; background: #fff; border: 2px solid var(--aad-accent); color: var(--aad-accent); display: flex; align-items: center; justify-content: center; font-family: var(--aad-rubik); font-weight: 700; font-size: 1.375rem; }
.aad-steps li.is-key::before { background: var(--aad-accent); color: #fff; }
.aad-steps h3 { margin: 20px 0 0; font-size: 1.25rem; }
.aad-steps p { margin: 8px 0 0; font-size: 1rem; line-height: 1.65; color: var(--aad-muted); }

/* ---------------------------------------------------------------- sample report */
.aad-report { background: #fff; border: 1px solid var(--aad-line); border-radius: 16px; box-shadow: 0 40px 80px -50px rgba(29,30,44,.5); overflow: hidden; }
.aad-report__head { display: flex; align-items: center; justify-content: space-between; padding: 20px 28px; background: #F6F7FB; border-bottom: 1px solid var(--aad-line); font-family: var(--aad-rubik); }
.aad-report__head strong { font-weight: 600; font-size: 1.0625rem; color: var(--aad-ink); }
.aad-report__head span { font-weight: 500; font-size: .8125rem; padding: 6px 10px; border-radius: 999px; background: #fff; border: 1px solid #DFE2EE; color: var(--aad-muted); }
.aad-report ol { list-style: none; margin: 0; padding: 0; }
.aad-report li { padding: 22px 28px; border-bottom: 1px solid #EDEEF5; }
.aad-report li:last-child { border-bottom: 0; }
.aad-report__title { display: flex; align-items: center; gap: 12px; font-family: var(--aad-rubik); font-weight: 600; font-size: 1.0625rem; line-height: 1.35; margin: 0; }
.aad-report__meta { margin: 6px 0 0; font-size: .875rem; color: var(--aad-muted); }
.aad-report__fix { margin: 10px 0 0; padding: 10px 14px; border-radius: 8px; background: #F6F7FB; font-size: .9375rem; line-height: 1.55; color: var(--aad-text); }
.aad-sev { flex-shrink: 0; font-family: var(--aad-rubik); font-weight: 600; font-size: .8125rem; line-height: 1; padding: 6px 10px; border-radius: 4px; }
.aad-sev--critical { background: #FDE8EC; color: #B00020; }
.aad-sev--high { background: #FFF0E0; color: #A14B00; }
.aad-sev--medium { background: #FFF6D6; color: #7A5D00; }
.aad-sev--low { background: #E8EFFB; color: #2F5BA8; }

/* ---------------------------------------------------------------- pricing */
.aad-price-card { position: relative; display: flex; flex-direction: column; padding: 36px; border-radius: 14px; background: #fff; border: 1px solid var(--aad-line); }
.aad-price-card > * { margin: 0; }
.aad-price-card.is-recommended { border: 2px solid var(--aad-accent); }
.aad-price-card__badge { position: absolute; top: -15px; left: 32px; font-family: var(--aad-rubik); font-weight: 600; font-size: .8125rem; line-height: 1; padding: 8px 14px; border-radius: 999px; background: var(--aad-accent); color: #fff; margin: 0 !important; }
.aad-price-card h3 { font-size: 1.5rem; line-height: 1.3; }
.aad-price-card > h3 + p { margin-top: 6px; font-size: 1rem; color: var(--aad-muted); }
.aad-price { margin-top: 22px !important; display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; font-size: .9375rem; color: var(--aad-muted); }
.aad-price b { font-family: var(--aad-rubik); font-weight: 800; font-size: 3.125rem; line-height: 1; color: var(--aad-ink); }
.aad-price b + span { font-family: var(--aad-rubik); font-weight: 600; font-size: 1.5rem; line-height: 1; color: var(--aad-ink); }
.aad-scope { margin-top: 18px !important; align-self: flex-start; font-family: var(--aad-rubik); font-weight: 600; font-size: .9375rem; line-height: 1.3; padding: 9px 14px; border-radius: 6px; background: var(--aad-tint); color: var(--aad-accent); }
.aad-price-card .is-style-checks { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--aad-line); font-size: 1rem; }
.aad-price-card .wp-block-buttons { margin-top: auto; padding-top: 28px; }
.aad-price-card .wp-block-button, .aad-price-card .wp-block-button__link { width: 100%; }
.aad-price-mini { padding: 32px; border-radius: 12px; background: #fff; border: 1px solid var(--aad-line); position: relative; }
.aad-price-mini.is-recommended { border: 2px solid var(--aad-accent); }
.aad-price-mini > * { margin: 0; }
.aad-price-mini h3 { font-size: 1.375rem; }
.aad-price-mini > h3 + p { margin-top: 6px; font-size: 1rem; color: var(--aad-muted); }
.aad-addons { padding: 32px 36px; border-radius: 14px; background: #fff; border: 1px solid var(--aad-line); }
.aad-addons h3 { margin: 0; font-size: 1.375rem; }
.aad-addons ul { list-style: none; margin: 20px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
.aad-addons li { display: flex; flex-direction: column; gap: 4px; padding-right: 20px; border-right: 3px solid var(--aad-tint); }
.aad-addons li strong { font-family: var(--aad-rubik); font-weight: 600; font-size: 1.0625rem; }
.aad-addons li b { font-family: var(--aad-rubik); font-weight: 700; font-size: 1.375rem; color: var(--aad-accent); }
.aad-addons li span { font-size: .9375rem; line-height: 1.55; color: var(--aad-muted); }
.aad-note { text-align: center; font-size: 1rem; color: var(--aad-muted); }

.aad-templates { padding: 32px; border-radius: 16px; background: var(--aad-lavender); }
.aad-templates__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.aad-templates__head span { display: flex; flex-direction: column; font-size: .9375rem; color: var(--aad-muted); }
.aad-templates__head b { font-family: var(--aad-rubik); font-weight: 800; font-size: 2.5rem; line-height: 1.1; color: var(--aad-ink); }
.aad-templates__head span:last-child { align-items: flex-end; }
.aad-templates__head span:last-child b { color: var(--aad-accent); }
.aad-templates__head .aad-icon { color: var(--aad-accent); }
.aad-templates ul { list-style: none; margin: 24px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.aad-templates li { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 14px 18px; border-radius: 10px; background: #fff; border: 1px solid var(--aad-line); font-family: var(--aad-rubik); font-weight: 500; }
.aad-templates li span { font-weight: 600; font-size: .875rem; padding: 6px 10px; border-radius: 999px; background: var(--aad-soft); color: #44485F; }

/* ---------------------------------------------------------------- checks page: category cards */
.aad-cat { padding: 36px; border-radius: 14px; background: #fff; border: 1px solid var(--aad-line); display: flex; flex-direction: column; }
.aad-cat > * { margin: 0; }
.aad-cat__head { display: flex; align-items: center; gap: 16px; }
.aad-cat__head .aad-icon-box { width: 56px; height: 56px; }
.aad-cat__num { display: block; font-family: var(--aad-rubik); font-weight: 600; font-size: .875rem; color: var(--aad-accent); }
.aad-cat h2 { margin: 2px 0 0; font-size: 1.5rem; line-height: 1.3; }
.aad-cat > p { margin-top: 18px; font-size: 1.0625rem; color: var(--aad-muted); }
.aad-cat .is-style-checks { margin-top: 20px; font-size: 1rem; }
.aad-toolgroups { display: flex; flex-direction: column; gap: 24px; margin-top: 32px; }
.aad-toolgroups h3 { margin: 0; font-size: 1.0625rem; }
.aad-toolgroups ul { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; font-family: var(--aad-rubik); font-weight: 500; font-size: .9375rem; }
.aad-toolgroups li { padding: 10px 14px; border-radius: 8px; background: #fff; border: 1px solid #DFE2EE; direction: ltr; }
.aad-sevlist { list-style: none; margin: 20px 0 0; padding: 0; }
.aad-sevlist li { display: flex; gap: 16px; align-items: flex-start; padding: 18px 0; border-bottom: 1px solid var(--aad-line); font-size: 1.0625rem; color: var(--aad-text); }
.aad-sevlist .aad-sev { width: 76px; text-align: center; padding: 8px 0; font-size: .875rem; }

/* ---------------------------------------------------------------- FAQ (core/details) */
.aad-faq { display: flex; flex-direction: column; gap: 14px; }
.aad-faq > * { margin: 0 !important; }
.aad-faq .wp-block-details { border: 1px solid var(--aad-line); border-radius: 12px; background: #fff; }
.aad-faq .wp-block-details[open] { border-color: var(--aad-accent); }
.aad-faq summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 28px; font-family: var(--aad-rubik); font-weight: 600; font-size: 1.125rem; line-height: 1.4; cursor: pointer; min-height: 44px; }
.aad-faq summary::-webkit-details-marker { display: none; }
.aad-faq summary::after { content: "+"; flex-shrink: 0; width: 34px; height: 34px; border-radius: 50%; background: var(--aad-soft); display: flex; align-items: center; justify-content: center; font-size: 1.375rem; font-weight: 500; line-height: 1; }
.aad-faq details[open] summary::after { content: "−"; background: var(--aad-accent); color: #fff; }
.aad-faq .wp-block-details > :not(summary) { margin: 0; padding: 0 28px 24px; font-size: 1.0625rem; color: var(--aad-muted); }

/* ---------------------------------------------------------------- contact section + form */
.aad-contact .aad-split { grid-template-columns: minmax(0, 470px) minmax(0, 640px); justify-content: space-between; }
.aad-form { padding: 40px; border-radius: 16px; background: #fff; color: var(--aad-ink); }
.aad-form__title { margin: 0; font-family: var(--aad-rubik); font-weight: 700; font-size: 1.5rem; line-height: 1.3; color: var(--aad-ink) !important; }
.aad-form__grid { margin-top: 24px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: end; } /* inputs in a row line up even when one field shows an error */
.aad-field { display: flex; flex-direction: column; gap: 8px; }
.aad-field label { font-family: var(--aad-rubik); font-weight: 500; font-size: .9375rem; line-height: 1.4; }
.aad-field__req { font-family: Assistant, sans-serif; font-weight: 400; color: var(--aad-muted); }
.aad-field input, .aad-field select { width: 100%; height: 52px; padding: 0 16px; border: 1.5px solid var(--aad-field); border-radius: 6px; background: #fff; color: var(--aad-ink); font-size: 1.0625rem; font-family: inherit; }
.aad-field input[dir="ltr"] { text-align: left; }
.aad-field input[dir="ltr"]::placeholder { text-align: left; }
.aad-field.has-error input, .aad-field.has-error select, .aad-consent.has-error input { border-color: #B00020; border-width: 2px; }
.aad-field__error { display: flex; align-items: flex-start; gap: 6px; margin: 0; font-size: .9375rem; line-height: 1.45; color: #B00020; font-weight: 600; }
.aad-field__error .aad-icon { margin-top: 2px; }
.aad-consent { margin-top: 22px; display: flex; flex-direction: column; gap: 8px; }
.aad-consent__row { display: flex; align-items: flex-start; gap: 12px; }
.aad-consent input { flex-shrink: 0; width: 24px; height: 24px; margin: 2px 0 0; accent-color: var(--aad-accent); }
.aad-consent label { font-size: .9375rem; line-height: 1.55; color: var(--aad-text); }
.aad-consent label a { color: var(--aad-accent); text-decoration: underline; }
.aad-form__submit { margin-top: 24px; width: 100%; min-height: 56px; display: flex; align-items: center; justify-content: center; gap: 12px; border: 0; border-radius: 4px; background: var(--aad-accent); color: #fff; font-family: var(--aad-rubik); font-weight: 600; font-size: 1.0625rem; cursor: pointer; }
.aad-form__submit:hover { background: var(--aad-accent-hover); }
.aad-form-errors { margin-top: 20px; padding: 18px 20px; border-radius: 10px; border: 2px solid #B00020; background: #FDE8EC; color: var(--aad-ink); }
.aad-form-errors:focus-visible { outline-offset: 4px; }
.aad-form-errors__title { margin: 0; font-family: var(--aad-rubik); font-size: 1.0625rem !important; line-height: 1.4; color: var(--aad-ink) !important; }
.aad-form-errors ul { margin: 8px 0 0; padding-right: 20px; }
.aad-form-errors a { color: #8A0019; text-decoration: underline; }
.aad-form-done h3 { margin-bottom: 10px; }
.aad-form-done p { margin: 0; color: var(--aad-text); }
.aad-hp { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }

/* ---------------------------------------------------------------- CTA band */
.aad-cta-band { background: var(--aad-accent); color: #fff; padding-block: 64px; }
.aad-cta-band__inner { display: flex; align-items: center; justify-content: space-between; gap: 32px 48px; flex-wrap: wrap; }
.aad-cta-band__inner > * { margin: 0 !important; }
.aad-cta-band h2 { font-size: clamp(1.75rem, 3vw, 2.375rem); color: #fff; margin: 0; }
.aad-cta-band p { margin: 10px 0 0; font-size: 1.1875rem; color: #fff; }

/* ---------------------------------------------------------------- blog cards */
.aad-post-grid .wp-block-post-template { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 32px; margin: 0; padding: 0; list-style: none; }
.aad-post-grid .wp-block-post-template > li { margin: 0; }
.aad-post-card { position: relative; display: flex; flex-direction: column; height: 100%; }
.aad-post-card > * { margin: 0; }
.aad-post-card .wp-block-post-featured-image { height: 230px; margin: 0; border-radius: 12px; overflow: hidden; }
.aad-post-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.aad-post-card .wp-block-post-terms { position: absolute; top: 16px; right: 16px; margin: 0; font-family: var(--aad-rubik); font-weight: 500; font-size: .875rem; line-height: 1.3; }
.aad-post-card .wp-block-post-terms a { display: inline-block; padding: 6px 12px; border-radius: 5px; background: #fff; color: var(--aad-accent); text-decoration: none; }
.aad-post-card .wp-block-post-terms .wp-block-post-terms__separator { display: none; }
.aad-post-card .aad-meta { margin-top: 20px; }
.aad-post-card .wp-block-post-title { margin-top: 10px; font-size: 1.3125rem; line-height: 1.4; font-weight: 600; }
.aad-post-card .wp-block-post-title a { color: var(--aad-ink); text-decoration: none; }
.aad-post-card .wp-block-post-title a:hover { color: var(--aad-accent); text-decoration: underline; }
.aad-post-card .wp-block-post-excerpt { margin-top: 10px; }
.aad-post-card .wp-block-post-excerpt__excerpt { margin: 0; font-size: 1rem; line-height: 1.65; color: var(--aad-muted); }
.aad-post-card .wp-block-read-more { margin-top: 14px; align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; min-height: 24px; font-family: var(--aad-rubik); font-weight: 600; font-size: .9375rem; color: var(--aad-accent); text-decoration: none; }
.aad-post-card .wp-block-read-more:hover { text-decoration: underline; }
.aad-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; font-size: .875rem; line-height: 1.4; color: var(--aad-muted); }
.aad-meta__item { display: inline-flex; align-items: center; gap: 6px; }
.aad-meta strong { color: var(--aad-ink); font-weight: 600; }

.aad-thumb { position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; border-radius: 12px; background: var(--aad-lavender); color: var(--aad-accent); }
.aad-thumb::before { content: ""; position: absolute; width: 110%; aspect-ratio: 1; border-radius: 50%; border: 2px solid rgba(29,30,44,.07); top: -45%; left: -30%; }
.aad-thumb::after { content: ""; position: absolute; width: 55%; aspect-ratio: 1; border-radius: 50%; background: rgba(29,30,44,.07); bottom: -20%; right: -12%; }
.aad-thumb__icon { position: relative; z-index: 1; width: 96px; height: 96px; border-radius: 24px; background: #fff; display: flex; align-items: center; justify-content: center; }
.aad-thumb--warm { background: var(--aad-warm); }
.aad-thumb--tint { background: var(--aad-tint); }
.aad-thumb--dark { background: var(--aad-dark); color: var(--aad-on-dark); }
.aad-thumb--dark::before { border-color: rgba(255,255,255,.07); }
.aad-thumb--dark::after { background: rgba(255,255,255,.07); }
.aad-thumb--dark .aad-thumb__icon { background: rgba(255,255,255,.08); }
.aad-thumb-mini { width: 76px; height: 76px !important; flex-shrink: 0; border-radius: 10px; }
.aad-thumb-mini::before, .aad-thumb-mini::after { display: none; }
.aad-thumb-mini .aad-thumb__icon { width: 40px; height: 40px; border-radius: 10px; }
.aad-thumb-mini .aad-thumb__icon svg { width: 22px; height: 22px; }

.aad-catnav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.aad-catnav a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; border: 1px solid #CDD0DF; background: #fff; color: var(--aad-ink); font-family: var(--aad-rubik); font-weight: 500; font-size: .9375rem; text-decoration: none; }
.aad-catnav a:hover { border-color: var(--aad-ink); }
.aad-catnav a[aria-current] { background: var(--aad-ink); border-color: var(--aad-ink); color: #fff; }

.wp-block-query-pagination { margin-top: 56px !important; justify-content: center; gap: 10px; font-family: var(--aad-rubik); font-weight: 600; }
.wp-block-query-pagination-numbers { display: flex; gap: 10px; }
.wp-block-query-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 48px; height: 48px; border-radius: 50%; border: 1px solid #CDD0DF; color: var(--aad-ink); text-decoration: none; }
.wp-block-query-pagination .page-numbers.current { background: var(--aad-accent); border-color: var(--aad-accent); color: #fff; }
.wp-block-query-pagination-previous, .wp-block-query-pagination-next { display: inline-flex; align-items: center; min-height: 48px; padding: 0 16px; color: var(--aad-ink); text-decoration: none; }

/* ---------------------------------------------------------------- single article */
.aad-article-banner .wp-block-post-terms { margin-top: 22px; font-family: var(--aad-rubik); font-weight: 500; font-size: .875rem; }
.aad-article-banner .wp-block-post-terms a { display: inline-block; padding: 6px 12px; border-radius: 5px; background: #fff; color: var(--aad-accent); text-decoration: none; }
.aad-article-banner .wp-block-post-title { margin-top: 14px; max-width: 1000px; font-size: clamp(2rem, 3.6vw, 3rem); line-height: 1.2; font-weight: 800; }
.aad-article-banner .aad-meta { margin-top: 20px; font-size: .9375rem; }
.aad-article-layout { display: grid; grid-template-columns: minmax(0, 796px) 340px; justify-content: space-between; gap: 64px; align-items: start; padding-block: 72px 96px; }
.aad-article-layout > * { margin: 0 !important; }
.aad-article .wp-block-post-featured-image { height: 420px; margin: 0 0 36px; border-radius: 16px; overflow: hidden; }
.aad-article .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.aad-article .aad-thumb__icon { width: 140px; height: 140px; border-radius: 35px; }
.aad-article .aad-thumb__icon svg { width: 64px; height: 64px; }
.aad-prose { font-size: 1.125rem; line-height: 1.8; color: var(--aad-text); }
.aad-prose > * { margin-block: 0; }
.aad-prose > * + * { margin-top: 16px; }
.aad-prose > h2 { margin-top: 48px; font-size: 2rem; line-height: 1.25; }
.aad-prose > h3 { margin-top: 32px; font-size: 1.375rem; }
.aad-prose > .aad-intro { font-size: 1.25rem; line-height: 1.75; color: var(--aad-ink); margin-top: 36px; }
.aad-prose a { color: var(--aad-accent); text-decoration: underline; }
.aad-prose ul:not(.is-style-checks), .aad-prose ol { padding-right: 24px; }
.aad-prose li + li { margin-top: 8px; }
.aad-tldr { padding: 28px 32px; border-radius: 14px; background: var(--aad-lavender); }
.aad-tldr > * { margin: 0; }
.aad-tldr h2 { font-size: 1.25rem !important; margin: 0 !important; }
.aad-tldr .is-style-checks { margin-top: 12px; font-size: 1.0625rem; }
.aad-prose blockquote, .aad-prose .wp-block-quote { margin: 40px 0 0; padding: 32px 36px; border: 0; border-radius: 14px; background: var(--aad-ink); color: #fff; }
.aad-prose .wp-block-quote p { font-family: var(--aad-rubik); font-weight: 500; font-size: 1.375rem; line-height: 1.5; margin: 0; }
.aad-prose .wp-block-quote::before { content: "״"; display: block; font-family: var(--aad-rubik); font-weight: 700; font-size: 3rem; line-height: .6; color: var(--aad-on-dark); margin-bottom: 8px; }
.aad-tip { margin-top: 28px !important; padding: 24px 28px; border-radius: 14px; background: var(--aad-warm); }
.aad-tip > * { margin: 0; }
.aad-tip > * + * { margin-top: 6px; }
.aad-tip h3 { font-size: 1.125rem !important; margin: 0 !important; }
.aad-inline-cta { margin-top: 40px !important; padding: 32px; border-radius: 14px; background: var(--aad-tint); }
.aad-inline-cta > * { margin: 0; }
.aad-inline-cta h2 { font-size: 1.5rem !important; margin: 0 !important; }
.aad-inline-cta p { margin-top: 8px; font-size: 1.0625rem; }
.aad-inline-cta .wp-block-buttons { margin-top: 20px; }
.aad-table { margin-top: 24px !important; border: 1px solid var(--aad-line); border-radius: 12px; overflow-x: auto; }
.aad-table table { width: 100%; border-collapse: collapse; font-size: 1rem; line-height: 1.55; background: #fff; }
.aad-table caption { caption-side: top; text-align: right; padding: 16px 20px; background: #F6F7FB; border-bottom: 1px solid var(--aad-line); font-family: var(--aad-rubik); font-weight: 600; color: var(--aad-ink); }
.aad-table th, .aad-table td { text-align: right; vertical-align: top; padding: 16px 20px; border-top: 1px solid var(--aad-line); }
.aad-table thead th { border-top: 0; font-family: var(--aad-rubik); font-weight: 600; font-size: .875rem; color: var(--aad-muted); }
.aad-table tbody th { font-family: var(--aad-rubik); font-weight: 600; white-space: nowrap; direction: ltr; }
.aad-level { display: inline-block; min-width: 44px; text-align: center; padding: 5px 8px; border-radius: 4px; font-family: var(--aad-rubik); font-weight: 600; font-size: .8125rem; line-height: 1.2; background: var(--aad-soft); color: var(--aad-text); direction: ltr; }
.aad-level--aa { background: var(--aad-tint); color: var(--aad-accent); }
.aad-level--aaa { background: var(--aad-ink); color: #fff; }
.aad-article-foot { margin-top: 40px !important; padding-top: 28px; border-top: 1px solid var(--aad-line); display: flex; flex-direction: column; gap: 18px; }
.aad-article-foot > * { margin: 0 !important; }
.aad-article-foot .wp-block-post-terms { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font-family: var(--aad-rubik); font-weight: 500; font-size: .875rem; }
.aad-article-foot .wp-block-post-terms__prefix { font-weight: 600; font-size: .9375rem; }
.aad-article-foot .wp-block-post-terms a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 999px; background: var(--aad-soft); color: var(--aad-ink); text-decoration: none; }
.aad-article-foot .wp-block-post-terms__separator { display: none; }
.aad-share { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.aad-share__label { font-family: var(--aad-rubik); font-weight: 600; font-size: .9375rem; }
.aad-share ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.aad-share a, .aad-share button { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1px solid #CDD0DF; background: #fff; color: var(--aad-ink); font-family: var(--aad-rubik); font-weight: 500; font-size: .875rem; text-decoration: none; cursor: pointer; }
.aad-share a:hover, .aad-share button:hover { border-color: var(--aad-ink); }
.aad-share__status { font-size: .9375rem; color: #0F7B4B; font-weight: 600; }
.aad-author { margin-top: 36px !important; padding: 28px; border-radius: 14px; background: var(--aad-warm); display: flex; gap: 20px; align-items: flex-start; }
.aad-author__avatar { flex-shrink: 0; width: 72px; height: 72px; border-radius: 50%; background: var(--aad-accent); color: #fff; display: flex; align-items: center; justify-content: center; font-family: var(--aad-rubik); font-weight: 700; font-size: 1.5rem; }
.aad-author p { margin: 0; }
.aad-author__by { font-size: .875rem; color: var(--aad-muted); }
.aad-author h2 { margin: 2px 0 0 !important; font-size: 1.1875rem !important; font-weight: 600; }
.aad-author__bio { margin-top: 6px !important; font-size: 1rem; line-height: 1.65; color: var(--aad-muted); }
.aad-post-nav { margin-top: 36px !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.aad-post-nav > * { margin: 0 !important; }
.aad-post-nav a { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 22px 24px; border-radius: 12px; border: 1px solid var(--aad-line); color: var(--aad-ink); text-decoration: none; font-family: var(--aad-rubik); font-weight: 600; font-size: 1.0625rem; line-height: 1.45; }
.aad-post-nav a:hover { border-color: var(--aad-accent); }
.aad-post-nav .aad-post-nav__label { font-family: Assistant, sans-serif; font-weight: 400; font-size: .875rem; color: var(--aad-muted); }
.aad-post-nav .post-navigation-link-next a { align-items: flex-end; text-align: left; }

.aad-sidebar { display: flex; flex-direction: column; gap: 28px; }
.aad-sidebar > * { margin: 0 !important; }
.aad-widget-title { margin: 0 !important; font-size: 1.25rem !important; font-weight: 700; }
.aad-widget-title::after { content: ""; display: block; width: 40px; height: 3px; margin-top: 10px; background: var(--aad-accent); }
.aad-sidebar .wp-block-search { padding: 28px; border-radius: 14px; background: var(--aad-warm); }
.aad-sidebar .wp-block-search__label { font-family: var(--aad-rubik); font-weight: 700; font-size: 1.25rem; }
.aad-sidebar .wp-block-search__inside-wrapper { margin-top: 14px; gap: 8px; border: 0; padding: 0; }
.aad-sidebar .wp-block-search__input { height: 52px; padding: 0 14px; border: 1.5px solid var(--aad-field); border-radius: 6px; font-size: 1.0625rem; background: #fff; }
.aad-sidebar .wp-block-search__button { margin: 0; width: 52px; height: 52px; padding: 0; border-radius: 6px; background: var(--aad-accent); color: #fff; display: inline-flex; align-items: center; justify-content: center; }
.aad-side-cta { padding: 28px; border-radius: 14px; background: var(--aad-ink); color: #fff; }
.aad-side-cta > * { margin: 0; }
.aad-side-cta h2 { margin-top: 8px !important; font-size: 1.375rem !important; color: #fff; }
.aad-side-cta p:not(.aad-eyebrow) { margin-top: 8px; font-size: 1rem; line-height: 1.65; color: var(--aad-dark-text); }
.aad-side-cta .wp-block-buttons { margin-top: 18px; }
.aad-side-cta .wp-block-button, .aad-side-cta .wp-block-button__link { width: 100%; }
.aad-recent .wp-block-post-template { list-style: none; margin: 16px 0 0; padding: 0; }
.aad-recent .wp-block-post-template > li { margin: 0; padding: 14px 0; border-top: 1px solid var(--aad-line); }
.aad-recent-item { display: flex; gap: 14px; align-items: flex-start; }
.aad-recent-item > * { margin: 0 !important; }
.aad-recent-item .wp-block-post-date { font-size: .8125rem; color: var(--aad-muted); }
.aad-recent-item .wp-block-post-title { margin-top: 4px !important; font-size: 1rem; font-weight: 500; line-height: 1.45; }
.aad-recent-item .wp-block-post-title a { color: var(--aad-ink); text-decoration: none; }
.aad-recent-item .wp-block-post-title a:hover { color: var(--aad-accent); text-decoration: underline; }
.aad-sidebar .wp-block-categories { list-style: none; margin: 16px 0 0; padding: 0; }
.aad-sidebar .wp-block-categories li { display: flex; align-items: center; justify-content: space-between; min-height: 48px; border-top: 1px solid var(--aad-line); font-size: 1rem; color: var(--aad-muted); }
.aad-sidebar .wp-block-categories a { color: var(--aad-ink); text-decoration: none; display: inline-flex; min-height: 44px; align-items: center; }
.aad-sidebar .wp-block-categories a:hover { color: var(--aad-accent); text-decoration: underline; }

/* ---------------------------------------------------------------- footer */
.aad-footer { background: var(--aad-darker); color: var(--aad-dark-text); padding-top: 72px; }
.aad-footer__cols { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 48px; margin: 0 auto; }
.aad-footer__cols > * { margin: 0 !important; }
.aad-footer h2 { margin: 0; font-family: var(--aad-rubik); font-weight: 600; font-size: 1.125rem; line-height: 1.3; color: #fff; }
.aad-footer ul { list-style: none; margin: 20px 0 0; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: 1rem; line-height: 1.5; }
.aad-footer a { color: var(--aad-dark-text); text-decoration: none; display: inline-flex; align-items: center; gap: 8px; min-height: 32px; }
.aad-footer a:hover { color: var(--aad-on-dark); text-decoration: underline; }
.aad-footer .aad-contact-links li > span { display: inline-flex; align-items: center; gap: 8px; min-height: 32px; }
.aad-footer__about p { margin: 18px 0 0; font-size: 1rem; line-height: 1.7; }
.aad-footer__about img { width: 197px; height: 40px; display: block; }
.aad-footer__bottom { margin: 48px auto 0; padding: 24px 0 28px; border-top: 1px solid rgba(255,255,255,.1); display: flex; align-items: center; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap; font-size: .9375rem; }
.aad-footer__bottom p { margin: 0; }
.aad-footer__bottom ul { margin: 0; flex-direction: row; gap: 24px; }

/* ---------------------------------------------------------------- 404 / search */
.aad-empty { padding-block: 96px; text-align: center; }
.aad-empty > * { margin-inline: auto; }

/* ---------------------------------------------------------------- responsive */
@media (max-width: 1180px) {
	.aad-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 460px); }
	.aad-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aad-perks__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 0; }
	.aad-perks__list li:nth-child(3) { padding-right: 0; border-right: 0; }
	.aad-perks__list li:nth-child(2) { padding-left: 0; }
	.aad-article-layout { grid-template-columns: minmax(0, 1fr) 300px; gap: 40px; }
	.aad-addons ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aad-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1180px) {
	.aad-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.aad-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.aad-header__inner { gap: 16px; }
}
@media (max-width: 960px) {
	:root { --aad-section: 64px; }
	.aad-hero__inner { grid-template-columns: minmax(0, 1fr); }
	.aad-illus { display: none; }
	.aad-grid--3, .aad-post-grid .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aad-split, .aad-split--report, .aad-contact .aad-split { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.aad-steps { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.aad-steps::before { display: none; }
	.aad-steps li { flex-direction: row; align-items: flex-start; text-align: right; gap: 16px; display: grid; grid-template-columns: 44px minmax(0, 1fr); }
	.aad-steps li::before { width: 44px; height: 44px; font-size: 1.125rem; grid-row: span 2; }
	.aad-steps h3 { margin: 0; }
	.aad-steps p { margin: 4px 0 0; }
	.aad-article-layout { grid-template-columns: minmax(0, 1fr); }
	.aad-header .aad-header__cta { display: none !important; }
}
@media (max-width: 781px) {
	:root { --aad-section: 56px; }
	.aad-topbar { display: none; }
	.aad-header__inner { min-height: 64px; }
	.aad-logo img { width: 158px; height: 32px; }
	.aad-hero { padding-block: 36px 44px; }
	.aad-hero__text .wp-block-buttons { flex-direction: column; align-items: stretch; }
	.aad-hero__text .wp-block-button, .aad-hero__text .wp-block-button__link { width: 100%; }
	.aad-hero__standards { margin-top: 32px !important; }
	.aad-grid--2, .aad-grid--3, .aad-grid--4, .aad-post-grid .wp-block-post-template, .aad-tiles, .aad-form__grid, .aad-addons ul, .aad-templates ul, .aad-post-nav { grid-template-columns: minmax(0, 1fr); }
	.aad-grid--checks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.aad-grid--checks .aad-card { padding: 14px; }
	.aad-grid--checks .aad-card p, .aad-grid--checks .aad-tags { display: none; }
	.aad-grid--checks .aad-card__head { flex-direction: column; align-items: flex-start; gap: 10px; }
	.aad-grid--checks .aad-icon-box { width: 40px; height: 40px; border-radius: 10px; }
	.aad-grid--checks h3 { font-size: .9375rem; }
	.aad-perks__list { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.aad-perks__list li, .aad-perks__list li:nth-child(3) { padding: 20px 0; border-right: 0; border-top: 1px solid rgba(255,255,255,.14); }
	.aad-perks__list li:first-child { border-top: 0; padding-top: 0; }
	.aad-card, .aad-cat, .aad-price-card, .aad-form, .aad-addons { padding: 24px; }
	.aad-head--split { flex-direction: column; align-items: flex-start; }
	.aad-footer__cols { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.aad-footer { padding-top: 48px; }
	.aad-article .wp-block-post-featured-image { height: 240px; }
	.aad-report li { padding: 18px 20px; }
	.aad-report__title { flex-wrap: wrap; }
	.aad-cta-band { padding-block: 48px; }
	.aad-templates__head b { font-size: 1.75rem; }
	.aad-table th, .aad-table td { padding: 12px 14px; }
}

/* read-more arrow (core/read-more) */
.wp-block-read-more::after {
	content: ""; width: 18px; height: 18px; flex-shrink: 0; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 18l-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 18l-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.aad-footer .aad-social { flex-direction: row; flex-wrap: wrap; gap: 8px 20px; margin-top: 18px; }
.aad-footer .aad-social a { text-decoration: underline; }

/* sticky header: phones (no contact bar) and very short viewports (zoom, landscape) */
@media (max-width: 781px) {
	html { scroll-padding-top: 84px; }
	.aad-site-header, body.admin-bar .aad-site-header { top: 0; }
}
@media (max-height: 520px) {
	html { scroll-padding-top: 24px; }
	.aad-site-header { position: relative; top: auto; }
}

/* buttons inside article text keep button colours (prose links are blue + underlined) */
.aad-prose .wp-block-button__link, .aad-prose .wp-block-button__link:hover { color: #fff; text-decoration: none; }
.aad-prose .is-style-dark-outline .wp-block-button__link { color: var(--aad-ink); }
.aad-prose .is-style-dark-outline .wp-block-button__link:hover { color: #fff; }
.aad-banner .aad-pills { margin-top: 28px; }

/* heading → content spacing as in the approved canvas */
.aad-section > .aad-steps { margin-top: 60px; }
.aad-section > .aad-grid--checks { margin-top: 56px; }
@media (max-width: 960px) {
	.aad-section > .aad-steps { margin-top: 32px; }
	.aad-section > .aad-grid--checks { margin-top: 28px; }
}
.aad-section > .aad-head + .aad-grid:has(.aad-price-card) { margin-top: 56px; }

/* shared form extras: full-width fields, hints, textarea, context line */
.aad-field--full { grid-column: 1 / -1; }
.aad-field__hint { margin: 0; font-size: .9375rem; line-height: 1.5; color: var(--aad-muted); }
.aad-field textarea { width: 100%; min-height: 148px; padding: 12px 16px; border: 1.5px solid var(--aad-field); border-radius: 6px; background: #fff; color: var(--aad-ink); font: inherit; font-size: 1.0625rem; line-height: 1.6; resize: vertical; }
.aad-field.has-error textarea { border-color: #B00020; border-width: 2px; }
.aad-form--issue { border: 1px solid var(--aad-line); }
.aad-form__context { margin: 0 0 16px; padding: 12px 16px; border-radius: 8px; background: var(--aad-tint); color: var(--aad-ink); font-size: 1rem; }
.aad-contact-links--statement { list-style: none; padding: 0; margin: 12px 0 0; display: flex; flex-direction: column; gap: 6px; }
.aad-contact-links--statement a, .aad-contact-links--statement li > span { display: inline-flex; align-items: center; gap: 8px; min-height: 32px; }
.aad-split--report-issue { grid-template-columns: minmax(0, 400px) minmax(0, 720px); justify-content: space-between; align-items: start; }
.aad-split--report-issue > .wp-block-group > * + * { margin-top: 16px; }
.aad-split--report-issue h2 + * { margin-top: 12px !important; }
.aad-split--report-issue .wp-block-group > h2:not(:first-child) { margin-top: 36px; }
@media (max-width: 960px) { .aad-split--report-issue { grid-template-columns: minmax(0, 1fr); } }

.aad-split--report-issue > .wp-block-group h2 { font-size: clamp(1.5rem, 2.4vw, 1.875rem); }
.aad-issue-form { min-width: 0; }

/* ---------------------------------------------------------------- free scan */
.aad-form--scan { border: 1px solid var(--aad-line); }
.aad-scan-status:empty { display: none; }
.aad-scan-status { margin-top: 16px; padding: 16px 20px; border-radius: 10px; background: var(--aad-tint); color: var(--aad-ink); font-weight: 600; line-height: 1.5; display: flex; gap: 12px; align-items: center; }
.aad-spinner { flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%; border: 3px solid var(--aad-accent); border-inline-end-color: transparent; animation: aad-spin .9s linear infinite; }
@keyframes aad-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .aad-spinner { animation: none; border-inline-end-color: var(--aad-accent); } }
.aad-scan-report { border: 1px solid var(--aad-line); }
.aad-scan-report > p { margin: 14px 0 0; font-size: 1.0625rem; }
.aad-scan-report h3 { margin: 28px 0 0; font-family: var(--aad-rubik); font-size: 1.25rem; line-height: 1.3; }
.aad-scan-sev { list-style: none; margin: 20px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.aad-scan-sev__item { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 14px 8px; border-radius: 10px; font-family: var(--aad-rubik); font-weight: 600; font-size: .9375rem; }
.aad-scan-sev__n { font-size: 1.875rem; line-height: 1.1; font-weight: 800; }
.aad-scan-sev__item--critical { background: #FDE8EC; color: #B00020; }
.aad-scan-sev__item--serious { background: #FFF0E0; color: #A14B00; }
.aad-scan-sev__item--moderate { background: #FFF6D6; color: #7A5D00; }
.aad-scan-sev__item--minor { background: #E8EFFB; color: #2F5BA8; }
.aad-scan-areas { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.aad-scan-areas li { padding: 14px 16px; border: 1px solid var(--aad-line); border-radius: 10px; line-height: 1.55; font-size: 1rem; }
.aad-scan-areas__meta { color: var(--aad-muted); font-size: .9375rem; }
.aad-scan-note { padding: 12px 16px; border-radius: 8px; background: var(--aad-tint); }
.aad-scan-report .aad-scan-missing { margin-top: 12px; font-size: 1rem; }
.aad-scan-cta { margin-top: 28px; flex-wrap: wrap; }
@media (max-width: 600px) { .aad-scan-sev { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.aad-scan-cta { display: flex; flex-wrap: wrap; gap: 14px; }

/* ---------- Free scan: live console (?scan=token, assets/js/free-scan.js) ---------- */
.aad-live {
	--l-bg: #0A1424; --l-panel: #0F1D33; --l-line: rgba(92, 182, 240, .24); --l-ink: #E8EEF7; --l-muted: #AAB9CD;
	--l-accent: #5CB6F0; --l-ok: #5EE0A0; --l-crit: #FF8FA3; --l-serious: #FFB46B; --l-moderate: #F2D36B; --l-ai: #C9BCFF;
	position: relative; isolation: isolate; overflow: hidden; padding: 32px; border-radius: 20px; color: var(--l-ink);
	background: radial-gradient(1100px 380px at 85% -10%, rgba(92, 182, 240, .2), transparent 60%), radial-gradient(800px 320px at 0% 110%, rgba(143, 123, 255, .16), transparent 60%), var(--l-bg);
	box-shadow: 0 30px 80px rgba(6, 20, 40, .35);
}
.aad-live::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(92, 182, 240, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(92, 182, 240, .07) 1px, transparent 1px); background-size: 36px 36px; -webkit-mask-image: radial-gradient(ellipse at 50% 0%, #000 30%, transparent 78%); mask-image: radial-gradient(ellipse at 50% 0%, #000 30%, transparent 78%); animation: aad-grid 16s linear infinite; }
@keyframes aad-grid { to { background-position: 0 36px, 36px 0; } }
.aad-live h2, .aad-live h3 { color: var(--l-ink); }
.aad-live :focus-visible { outline: 3px solid var(--l-accent); outline-offset: 3px; }
.aad-live__top { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; }
.aad-live__eyebrow { margin: 0; display: inline-flex; align-items: center; gap: 10px; font-family: var(--aad-rubik); font-weight: 600; font-size: .9375rem; color: var(--l-accent); }
.aad-live__dot { width: 10px; height: 10px; border-radius: 50%; background: var(--l-ok); animation: aad-pulse 1.6s ease-out infinite; }
@keyframes aad-pulse { 0% { box-shadow: 0 0 0 0 rgba(94, 224, 160, .6); } 80%, 100% { box-shadow: 0 0 0 10px rgba(94, 224, 160, 0); } }
.aad-live.is-done .aad-live__dot { background: var(--l-accent); animation: none; }
.aad-live__title { margin: 6px 0 0; font-family: var(--aad-rubik); font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.125rem); line-height: 1.2; }
.aad-live__tools { display: flex; align-items: center; gap: 12px; }
.aad-live__clock { padding: 8px 12px; border: 1px solid var(--l-line); border-radius: 8px; font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; font-size: 1rem; color: var(--l-ink); direction: ltr; font-variant-numeric: tabular-nums; }
.aad-live__motion { min-height: 44px; padding: 8px 16px; border: 1px solid rgba(232, 238, 247, .55); border-radius: 8px; background: transparent; color: var(--l-ink); font: inherit; font-weight: 600; cursor: pointer; }
.aad-live__motion:hover { background: rgba(232, 238, 247, .1); }
.aad-live__progress { margin-top: 24px; display: flex; align-items: center; gap: 12px; }
.aad-live__bar { flex: 1; height: 10px; border-radius: 99px; background: rgba(232, 238, 247, .12); overflow: hidden; }
.aad-live__bar > span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #5CB6F0, #8F7BFF, #5CB6F0); background-size: 200% 100%; animation: aad-flow 2s linear infinite; transition: width .7s ease; }
@keyframes aad-flow { to { background-position: -200% 0; } }
.aad-live__pct { min-width: 3.2em; font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; font-weight: 700; direction: ltr; text-align: end; }
.aad-live__stats { margin: 20px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.aad-live__stats > div { padding: 14px 16px; border: 1px solid var(--l-line); border-radius: 12px; background: rgba(15, 29, 51, .75); }
.aad-live__stats dt { font-size: .9375rem; color: var(--l-muted); }
.aad-live__stats dd { margin: 4px 0 0; font-family: var(--aad-rubik); font-size: 1.875rem; font-weight: 700; line-height: 1.1; font-variant-numeric: tabular-nums; }
.aad-live__stats [data-stat="issues"] { color: var(--l-crit); }
.aad-live__main { margin-top: 20px; display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 20px; align-items: start; }
.aad-live__viewer { margin: 0; overflow: hidden; border: 1px solid var(--l-line); border-radius: 14px; background: var(--l-panel); }
.aad-live__chrome { display: flex; align-items: center; gap: 6px; padding: 10px 12px; border-bottom: 1px solid var(--l-line); direction: ltr; }
.aad-live__chrome i { width: 10px; height: 10px; border-radius: 50%; background: rgba(232, 238, 247, .28); }
.aad-live__addr { flex: 1; min-width: 0; margin-left: 8px; padding: 4px 10px; border-radius: 6px; background: rgba(232, 238, 247, .08); font-size: .875rem; color: var(--l-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aad-live__screen { position: relative; height: 380px; overflow: hidden; background: #F3F5FA; direction: ltr; }
.aad-live__viewer.is-mobile .aad-live__screen { width: 214px; height: 400px; margin: 16px auto; border: 6px solid #22324E; border-radius: 24px; }
.aad-live__page { position: relative; }
.aad-live__page img { display: block; width: 100%; height: auto; }
.aad-live__boxes { position: absolute; inset: 0; }
.aad-live__box { --b: #3D7BFF; position: absolute; border: 2px solid var(--b); border-radius: 3px; background: rgba(61, 123, 255, .14); opacity: 0; transform: scale(.5); transition: opacity .25s ease, transform .4s cubic-bezier(.2, 1.5, .4, 1); }
.aad-live__box--critical { --b: #E0003C; background: rgba(224, 0, 60, .16); }
.aad-live__box--serious { --b: #F26B00; background: rgba(242, 107, 0, .16); }
.aad-live__box--moderate { --b: #C99A00; background: rgba(201, 154, 0, .16); }
.aad-live__box.is-in { opacity: 1; transform: none; animation: aad-ping 1.1s ease-out 1; }
@keyframes aad-ping { 0% { box-shadow: 0 0 0 0 var(--b); } 100% { box-shadow: 0 0 0 16px transparent; } }
.aad-live__scanline { position: absolute; left: 0; right: 0; top: -90px; height: 90px; pointer-events: none; opacity: 0; background: linear-gradient(180deg, transparent, rgba(92, 182, 240, .25) 80%, rgba(92, 182, 240, .85)); border-bottom: 2px solid #5CB6F0; box-shadow: 0 8px 28px rgba(92, 182, 240, .75); }
.aad-live__screen.is-scanning .aad-live__scanline, .aad-live__skeleton:not([hidden]) ~ .aad-live__scanline { opacity: 1; animation: aad-sweep 2.1s ease-in-out infinite; }
@keyframes aad-sweep { from { top: -90px; } to { top: 100%; } }
.aad-live__skeleton { position: absolute; inset: 0; display: grid; align-content: start; gap: 14px; padding: 22px; }
.aad-live__skeleton[hidden] { display: none; }
.aad-live__skeleton b { display: block; height: 18px; border-radius: 6px; background: linear-gradient(90deg, #E3E8F2 20%, #F7F9FC 50%, #E3E8F2 80%); background-size: 200% 100%; animation: aad-shimmer 1.4s linear infinite; }
.aad-live__skeleton b:nth-child(1) { width: 40%; height: 26px; }
.aad-live__skeleton b:nth-child(2) { height: 120px; }
.aad-live__skeleton b:nth-child(3) { width: 85%; }
.aad-live__skeleton b:nth-child(4) { width: 70%; }
.aad-live__skeleton b:nth-child(5) { width: 90%; }
.aad-live__skeleton b:nth-child(6) { width: 55%; }
@keyframes aad-shimmer { to { background-position: -200% 0; } }
.aad-live__cap { padding: 10px 14px; border-top: 1px solid var(--l-line); font-size: .9375rem; color: var(--l-muted); overflow-wrap: anywhere; }
.aad-live__side h3, .aad-live__log h3 { margin: 0 0 10px; font-family: var(--aad-rubik); font-size: 1.0625rem; font-weight: 600; }
.aad-live__side h3 ~ h3 { margin-top: 20px; }
.aad-live__queue, .aad-live__areas, .aad-live__lines { list-style: none; margin: 0; padding: 0; }
.aad-live__queue li { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; padding: 10px 12px; border: 1px solid var(--l-line); border-radius: 10px; background: rgba(15, 29, 51, .75); font-size: .9375rem; transition: border-color .3s ease, background .3s ease; }
.aad-live__q-label { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.aad-live__q-vp { padding: 2px 8px; border: 1px solid var(--l-line); border-radius: 99px; font-size: .8125rem; color: var(--l-muted); }
.aad-live__q-state { display: inline-flex; align-items: center; gap: 6px; font-size: .875rem; font-weight: 600; color: var(--l-muted); white-space: nowrap; }
.aad-live__queue li.is-scanning { border-color: rgba(92, 182, 240, .7); background: rgba(92, 182, 240, .1); }
.aad-live__queue li.is-scanning .aad-live__q-state { color: var(--l-accent); }
.aad-live__queue li.is-scanning .aad-live__q-state::before, .aad-live__lines li.is-run .aad-live__i::before { content: ""; width: 12px; height: 12px; border-radius: 50%; border: 2px solid currentColor; border-inline-end-color: transparent; animation: aad-spin .8s linear infinite; }
.aad-live__queue li.is-found .aad-live__q-state { color: var(--l-crit); }
.aad-live__queue li.is-clean .aad-live__q-state { color: var(--l-ok); }
.aad-live__queue li.is-error .aad-live__q-state { color: var(--l-serious); }
.aad-live__areas li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 10px; padding: 7px 0; border-bottom: 1px dashed rgba(170, 185, 205, .2); font-size: .9375rem; }
.aad-live__area-val { color: var(--l-muted); font-size: .875rem; font-variant-numeric: tabular-nums; }
.aad-live__meter { grid-column: 1 / -1; height: 4px; overflow: hidden; border-radius: 99px; background: rgba(232, 238, 247, .1); }
.aad-live__meter > span { display: block; width: 0; height: 100%; background: var(--l-ok); transition: width .9s ease; }
.aad-live__areas li.is-pass .aad-live__area-val { color: var(--l-ok); }
.aad-live__areas li.has-fail .aad-live__meter { background: rgba(255, 143, 163, .75); }
.aad-live__areas li.has-fail .aad-live__area-val { color: var(--l-crit); }
.aad-live__areas li.is-sev-moderate .aad-live__meter, .aad-live__areas li.is-sev-minor .aad-live__meter { background: rgba(242, 211, 107, .7); }
.aad-live__areas li.is-sev-moderate .aad-live__area-val, .aad-live__areas li.is-sev-minor .aad-live__area-val { color: var(--l-moderate); }
.aad-live__log { margin-top: 20px; max-height: 360px; overflow: auto; padding: 16px; border: 1px solid var(--l-line); border-radius: 14px; background: rgba(4, 10, 20, .65); scrollbar-color: rgba(92, 182, 240, .4) transparent; }
.aad-live__lines li { display: flex; gap: 10px; padding: 3px 0; font-family: ui-monospace, "Cascadia Mono", Consolas, "Courier New", monospace; font-size: .875rem; line-height: 1.6; animation: aad-line .35s ease both; }
@keyframes aad-line { from { opacity: 0; transform: translateX(-10px); } }
.aad-live__t { flex-shrink: 0; color: var(--l-muted); direction: ltr; font-variant-numeric: tabular-nums; }
.aad-live__i { flex-shrink: 0; width: 1.2em; display: inline-flex; justify-content: center; align-items: center; font-weight: 700; color: var(--l-accent); }
.aad-live__x { min-width: 0; overflow-wrap: anywhere; }
.aad-live__lines li.is-ok .aad-live__i { color: var(--l-ok); }
.aad-live__lines li.is-bad .aad-live__i, .aad-live__lines li.is-bad .aad-live__x { color: var(--l-crit); }
.aad-live__lines li.is-warn .aad-live__i { color: var(--l-serious); }
.aad-live__lines li.is-ai .aad-live__i, .aad-live__lines li.is-ai .aad-live__x { color: var(--l-ai); }
.aad-live__noscript { margin: 20px 0 0; padding: 14px 16px; border-radius: 10px; background: rgba(92, 182, 240, .12); }
.aad-live-result { margin-top: 32px; }
.aad-live.is-still *, .aad-live.is-still::before { animation: none !important; transition: none !important; }
.aad-live.is-still .aad-live__box { opacity: 1; transform: none; }
.aad-live.is-still .aad-live__scanline { opacity: 0 !important; }
.aad-live.is-still .aad-live__queue li.is-scanning .aad-live__q-state::before, .aad-live.is-still .aad-live__lines li.is-run .aad-live__i::before { border-inline-end-color: currentColor; }
@media (prefers-reduced-motion: reduce) { .aad-live *, .aad-live::before { animation: none !important; transition: none !important; } }
@media (max-width: 900px) {
	.aad-live { padding: 20px; border-radius: 14px; }
	.aad-live__main { grid-template-columns: minmax(0, 1fr); }
	.aad-live__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aad-live__screen { height: 300px; }
}
@media (forced-colors: active) { .aad-live__box { border-color: Highlight; } .aad-live__bar > span, .aad-live__meter > span { background: Highlight; } }

/* ---------- Free scan report: AI summary, legal exposure, pages ---------- */
.aad-scan-ai { margin-top: 24px; padding: 20px 22px; border: 1px solid #D5DDF5; border-radius: 12px; background: linear-gradient(135deg, #EEF4FF, #F4EFFF); }
.aad-scan-report .aad-scan-ai h3, .aad-scan-report .aad-scan-legal h3 { margin: 0; display: flex; align-items: center; gap: 10px; }
.aad-scan-ai h3 .aad-icon { color: #5B45C9; }
.aad-scan-ai__text { margin: 10px 0 0; font-size: 1.0625rem; line-height: 1.7; }
.aad-scan-ai__note { margin: 8px 0 0; font-size: .875rem; color: var(--aad-muted); }
.aad-typing::after { content: ""; display: inline-block; width: 2px; height: 1.1em; margin-inline-start: 2px; vertical-align: text-bottom; background: currentColor; animation: aad-caret .8s steps(1) infinite; }
@keyframes aad-caret { 50% { opacity: 0; } }
.aad-scan-legal { margin-top: 24px; padding: 20px 22px; border-inline-start: 5px solid #7A5D00; border-radius: 12px; background: #FFF6D6; }
.aad-scan-legal.is-strong { border-color: #B00020; background: #FDE8EC; }
.aad-scan-report .aad-scan-legal h3 { font-size: 1.375rem; color: #7A5D00; }
.aad-scan-report .aad-scan-legal.is-strong h3 { color: #B00020; }
.aad-scan-legal p { margin: 10px 0 0; line-height: 1.6; }
.aad-scan-legal ul { margin: 10px 0 0; padding-inline-start: 22px; list-style: disc; line-height: 1.6; }
.aad-scan-legal li { margin-bottom: 6px; }
.aad-scan-legal .aad-scan-legal__note { font-size: .875rem; color: var(--aad-muted); }
.aad-scan-pages { margin-top: 12px; overflow-x: auto; }
.aad-scan-pages table { width: 100%; border-collapse: collapse; font-size: 1rem; }
.aad-scan-pages th, .aad-scan-pages td { padding: 10px 8px; border-bottom: 1px solid var(--aad-line); text-align: start; }
.aad-scan-pages th { font-size: .9375rem; font-weight: 600; color: var(--aad-muted); }
.aad-scan-pages th:last-child, .aad-scan-pages td:last-child { text-align: end; font-weight: 700; font-variant-numeric: tabular-nums; }
.aad-scan-dedupe { margin-top: 8px; font-size: .9375rem; }
@media (prefers-reduced-motion: reduce) { .aad-typing::after { animation: none; } }

/* Live scan and report take the full width; the intro column is for the form only. */
.aad-split:has(> .aad-live, > .aad-scan-report) { grid-template-columns: minmax(0, 1fr); }
.aad-split:has(> .aad-live, > .aad-scan-report) > .wp-block-group { display: none; }

.aad-live__col { min-width: 0; }
/* Headings focused by script after a mouse action: no heavy ring (keyboard users still get it). */
.aad-live__title:focus:not(:focus-visible), .aad-scan-report #aad-scan-title:focus:not(:focus-visible) { outline: none; }
.aad-scan-pages__path { display: block; text-align: right; margin-top: 2px; font-size: .875rem; color: var(--aad-muted); overflow-wrap: anywhere; }
