/* ============================================================
   Skanery (.ac-* / .sa-*) — dopasowanie do theme ka-new.
   Skanery dziedziczą fioletowe tokeny z dawnego motywu (#4f0c5a). Tu nadpisujemy
   je na niebieską paletę Kreatywnej Agencji i stylujemy strukturę
   formularza/przycisków, których ka-new nie definiuje.
   Ładowane wyłącznie na stronach narzędzi (functions/scanners.php).
   ============================================================ */
:root {
	--ac-accent:        #005392;
	--ac-accent-light:  rgba(0, 83, 146, .07);
	--ac-accent-mid:    rgba(0, 83, 146, .18);
	--ac-dark:          #0a0e14;
	--ac-white:         #ffffff;
	--ac-gray-100:      #f6f7f9;
	--ac-gray-200:      rgba(10, 14, 20, .10);
	--ac-gray-300:      rgba(10, 14, 20, .16);
	--ac-gray-500:      #8a90a0;
	--ac-gray-700:      #4a5161;
	--ac-radius-lg:     16px;
	--ac-shadow:        0 8px 30px rgba(10, 14, 20, .08);
	/* Każdy skaner trzyma swój akcent w zmiennej --XX-purple (#4f0c5a, dawny fiolet) —
	   przestawiamy je wszystkie na niebieski Kreatywnej Agencji. */
	--sa-purple: #005392; --wc-purple: #005392; --gd-purple: #005392;
	--sh-purple: #005392; --sc-purple: #005392; --ar-purple: #005392;
	/* fioletowo-tintowane tła skanerów -> neutralne */
	--wc-bg: #f6f7f9; --gd-bg: #f6f7f9; --sh-bg: #f6f7f9; --sc-bg: #f6f7f9; --ar-bg: #f6f7f9;
}

/* Sekcja „Wymaga przeglądu ręcznego" + inputy/spinner/status — w 5 skanerach (wc/gd/sh/sc/ar)
   zahardkodowane fiolety, których override zmiennych nie łapie. Ujednolicamy z theme. */
.wc-manual, .gd-manual, .sh-manual, .sc-manual, .ar-manual { border-color: rgba(10,14,20,.16) !important; background: #f6f7f9 !important; }
.wc-manual > h3, .gd-manual > h3, .sh-manual > h3, .sc-manual > h3, .ar-manual > h3 { color: var(--ka-text, #0a0e14) !important; }
.wc-manual__intro, .gd-manual__intro, .sh-manual__intro, .sc-manual__intro, .ar-manual__intro { color: var(--ka-text-soft, #4a5161) !important; }
.wc-manual__item, .gd-manual__item, .sh-manual__item, .sc-manual__item, .ar-manual__item { border-color: rgba(10,14,20,.10) !important; }
.wc-item__fix, .gd-item__fix, .sh-item__fix, .sc-item__fix, .ar-item__fix { color: var(--ka-primary, #005392) !important; }
[class$="__row"] input[type="url"] { border-color: rgba(10,14,20,.16) !important; }
[class$="__row"] input[type="url"]:focus { outline: 3px solid rgba(0,83,146,.30) !important; border-color: var(--ka-primary, #005392) !important; }
[class*="__status"].is-loading { background: #eaf2fb !important; color: var(--ka-primary, #005392) !important; border-color: #cfe0f2 !important; }
.wc-spinner, .gd-spinner, .sh-spinner, .sc-spinner, .ar-spinner { border-color: rgba(0,83,146,.25) !important; border-top-color: var(--ka-primary, #005392) !important; }

/* Ostatnie lawendowe tinty (faint obwódki/dividery) -> neutralne. Kolory semantyczne
   (zielony/amber/czerwony statusów) zostają nietknięte. */
.sa-reco-row, .sa-mod__issue, .sa-shot-bar { border-color: rgba(10,14,20,.08) !important; }
.wc-item, .gd-item, .sh-item, .sc-item, .ar-item { border-top-color: rgba(10,14,20,.07) !important; }
.sa-bar-track, .sa-summary, .sa-ring-bg, .sa-reco { border-color: rgba(10,14,20,.10) !important; }
.sa-reco-fix { color: #1a7f37 !important; } /* zostaw zielony „jak naprawić" */

/* Nie dubluj sekcji — shortcode jest już opakowany w .ka-section */
.ac-section { padding: 0 !important; }
.ac-section .ac-container,
.ac-container { padding: 0 !important; max-width: 100% !important; margin: 0 auto; }

/* Formularz */
.ac-form { display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-end; justify-content: center; }
.ac-form__group { flex: 1 1 320px; max-width: 480px; display: flex; flex-direction: column; gap: 8px; text-align: left; }
.ac-form__group label { font-weight: 600; font-size: 16px; color: var(--ka-text, #0a0e14); }
.ac-form input[type="url"],
.ac-form input[type="email"],
.ac-form input[type="text"] {
	width: 100%; padding: 14px 16px; font-size: 15px; font-family: inherit;
	background: #fff; color: var(--ka-text, #0a0e14);
	border: 1px solid var(--ka-border-strong, rgba(10, 14, 20, .16)); border-radius: 12px;
}
.ac-form input:focus { outline: none; border-color: var(--ka-primary, #005392); box-shadow: 0 0 0 3px rgba(0, 83, 146, .15); }

/* Przyciski skanera = wygląd .ka-btn */
.ac-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	padding: 14px 28px; border-radius: 999px; font-weight: 600; font-size: 15px; letter-spacing: .02em;
	text-decoration: none; border: 1px solid transparent; cursor: pointer;
	transition: transform .2s ease, background .2s ease, box-shadow .3s ease;
}
.ac-btn:hover { transform: translateY(-2px); }
.ac-btn:active { transform: translateY(0); }
.ac-btn--primary { background: var(--ka-primary, #005392); color: #fff !important; box-shadow: 0 8px 20px rgba(0, 83, 146, .25); }
.ac-btn--primary:hover { background: var(--ka-primary-light, #0070e3); box-shadow: 0 16px 36px rgba(0, 83, 146, .35); }
.ac-btn--outline,
.ac-btn--white { background: #fff; color: var(--ka-primary, #005392) !important; border-color: var(--ka-border-strong, rgba(10, 14, 20, .16)); }
.ac-btn--lg { padding: 16px 34px; font-size: 16px; }

/* Progress + raport */
.ac-seoaudit__progress,
.ac-seoaudit__report { max-width: 920px; margin-left: auto; margin-right: auto; }
.ac-seoaudit__progress { margin-top: 28px; }
.ac-seoaudit__report { margin-top: 28px; }

/* Raport — karta lead-CTA. Każdy skaner ma własny prefiks (sa/wc/gd/sh/sc/ar)
   z zahardkodowanym starym fioletem #4f0c5a. Ujednolicamy wszystkie na niebieski theme. */
.sa-result-cta, .wc-cta, .gd-cta, .sh-cta, .sc-cta, .ar-cta {
	background: linear-gradient(135deg, var(--ka-primary, #005392) 0%, var(--ka-primary-deep, #003a68) 100%) !important;
	border-radius: 18px !important; color: #fff !important;
}
/* nagłówki/akapity w karcie CTA na biało (theme nadpisywał je ciemnym kolorem) */
.sa-result-cta h2, .sa-result-cta h3, .sa-result-cta h4, .sa-result-cta p,
.wc-cta h2, .wc-cta h3, .wc-cta h4, .wc-cta p,
.gd-cta h2, .gd-cta h3, .gd-cta h4, .gd-cta p,
.sh-cta h2, .sh-cta h3, .sh-cta h4, .sh-cta p,
.sc-cta h2, .sc-cta h3, .sc-cta h4, .sc-cta p,
.ar-cta h2, .ar-cta h3, .ar-cta h4, .ar-cta p { color: #fff !important; }
.sa-lead__btn, .wc-lead__btn, .gd-lead__btn, .sh-lead__btn, .sc-lead__btn, .ar-lead__btn {
	color: var(--ka-primary, #005392) !important; border-radius: 999px !important;
}
.sa-lead__btn:hover, .wc-lead__btn:hover, .gd-lead__btn:hover, .sh-lead__btn:hover, .sc-lead__btn:hover, .ar-lead__btn:hover {
	background: #eaf2fb !important;
}
.sa-lead input[type="email"], .wc-lead input[type="email"], .gd-lead input[type="email"], .sh-lead input[type="email"], .sc-lead input[type="email"], .ar-lead input[type="email"] {
	border-radius: 999px !important;
}
/* aktywne taby raportu + linki „pokaż szczegóły" — niebieski zamiast fioletu */
.sa-tab.is-active, .wc-tab.is-active, .gd-tab.is-active, .sh-tab.is-active, .sc-tab.is-active, .ar-tab.is-active { color: #fff !important; }
.sa-mod__info > summary, .wc-mod__info > summary, .gd-mod__info > summary, .sh-mod__info > summary, .sc-mod__info > summary, .ar-mod__info > summary { color: var(--ka-primary, #005392) !important; }

/* Ujednolicony formularz skanera — pole + przycisk obok siebie, identycznie w 6 skanerach.
   Dwie struktury (seo-audit: grupa+przycisk osobno; reszta: label+input+przycisk w jednej
   grupie .ac-form__group). Robimy flexem zarówno .ac-form, jak i .ac-form__group. */
.ac-form { display: flex !important; flex-wrap: wrap; gap: 12px; align-items: flex-end; justify-content: center; max-width: 720px; margin: 0 auto; }
/* Rozpuszczamy wrapper grupy, by w OBU strukturach (seo-audit vs reszta) label, input
   i przycisk były bezpośrednimi elementami flexa .ac-form — identyczny układ wszędzie. */
.ac-form__group { display: contents !important; }
.ac-form label { flex: 1 1 100%; display: block; text-align: left; margin: 0 0 2px; }
.ac-form input[type="url"], .ac-form input[type="email"], .ac-form input[type="text"] { flex: 1 1 240px; height: 54px; box-sizing: border-box; margin: 0; }
.ac-form .ac-btn, .ac-form .ac-btn--primary, .ac-form .ac-btn--lg { flex: 0 0 auto; height: 54px; padding: 0 28px !important; font-size: 15px !important; line-height: 54px; white-space: nowrap; }
.ac-form .help-block { display: none !important; }
@media ( max-width: 640px ) { .ac-form input, .ac-form .ac-btn { flex: 1 1 100% !important; width: 100%; } }

/* Komunikat/pasek skanowania — spójny z theme (nie stary fiolet) */
[class*="__progress"] { max-width: 720px; margin: 24px auto 0; }
[class*="__bar"] { height: 8px; background: rgba(10, 14, 20, .08); border-radius: 999px; overflow: hidden; }
[class*="__bar"] span { background: var(--ka-primary, #005392) !important; }
[class*="__statusmsg"] { margin-top: 14px; text-align: center; color: var(--ka-text-soft, #4a5161); font-size: .95rem; font-weight: 500; }

/* Proza SEO na stronach skanerów */
.ka-scanner-prose { color: var(--ka-text-soft, #4a5161); line-height: 1.75; font-size: 1.02rem; }
.ka-scanner-prose h2 { font-size: clamp(1.5rem, 3vw, 2rem); color: var(--ka-text, #0a0e14); margin: 1.6em 0 .5em; line-height: 1.2; }
.ka-scanner-prose h2:first-child { margin-top: 0; }
.ka-scanner-prose h3 { font-size: 1.2rem; color: var(--ka-text, #0a0e14); margin: 1.4em 0 .4em; }
.ka-scanner-prose p { margin: 0 0 1.1em; }
.ka-scanner-prose ul { margin: 0 0 1.2em; padding-left: 1.3em; }
.ka-scanner-prose li { margin-bottom: .5em; }
.ka-scanner-prose strong { color: var(--ka-text, #0a0e14); }
.ka-scanner-prose a { color: var(--ka-primary, #005392); text-decoration: underline; }
