/* Formularz LAGOM. Kolory i fonty z motywu (zmienne theme.json), z bezpiecznymi wartościami zapasowymi. */
.lagom-formularz { --lf-linia: var(--wp--preset--color--linia, #e4e1dc); --lf-tekst: var(--wp--preset--color--grafit, #1a1a1a); --lf-pom: var(--wp--preset--color--tekst-pomocniczy, #5f5f5f); --lf-blad: #b3261e; scroll-margin-top: 2rem; }
.lagom-formularz form { display: grid; gap: 1rem; margin: 0; }
.lagom-formularz__pole { display: grid; gap: 0.35rem; }
.lagom-formularz__para { display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 600px) { .lagom-formularz__para { grid-template-columns: 1fr 1fr; } }
.lagom-formularz--krotki .lagom-formularz__para { grid-template-columns: 1fr; }
@media (min-width: 1100px) { .lagom-formularz--krotki .lagom-formularz__para { grid-template-columns: 1fr 1fr; } }
.lagom-boczne-pole .lagom-formularz__para { grid-template-columns: 1fr !important; }
.lagom-formularz__pole--waskie { max-width: 16rem; }
.lagom-formularz label { font-size: 0.875rem; font-weight: 600; color: var(--lf-tekst); }
.lagom-formularz input[type="text"], .lagom-formularz input[type="email"], .lagom-formularz input[type="tel"], .lagom-formularz select, .lagom-formularz textarea {
	width: 100%; box-sizing: border-box; font: inherit; font-size: 1rem; color: var(--lf-tekst);
	background: #fff; border: 1px solid #8c8c8c; border-radius: 2px; padding: 0.7rem 0.8rem; min-height: 2.9rem;
}
.lagom-formularz textarea { resize: vertical; min-height: 6rem; }
.lagom-formularz input:focus-visible, .lagom-formularz select:focus-visible, .lagom-formularz textarea:focus-visible {
	outline: 2px solid var(--wp--preset--color--akcent, #a8623b); outline-offset: 1px; border-color: var(--lf-tekst);
}
.lagom-formularz [aria-invalid="true"] { border-color: var(--lf-blad); }
.lagom-formularz__blad { color: var(--lf-blad); font-size: 0.875rem; margin: -0.5rem 0 0; font-weight: 600; }
.lagom-formularz__pole .lagom-formularz__blad { margin: 0; }
.lagom-formularz__alert { border-left: 3px solid var(--lf-blad); background: #fdf3f2; padding: 0.75rem 1rem; margin-bottom: 1rem; font-size: 0.9375rem; }
.lagom-formularz__wskazowka { font-size: 0.8125rem; color: var(--lf-pom); margin: -0.5rem 0 0; }
.lagom-formularz__zgoda { display: grid; grid-template-columns: auto 1fr; gap: 0.6rem; align-items: start; }
.lagom-formularz__zgoda input { width: 1.15rem; height: 1.15rem; margin-top: 0.2rem; accent-color: var(--wp--preset--color--czern, #111); }
.lagom-formularz__zgoda label { font-weight: 400; font-size: 0.8125rem; line-height: 1.5; color: var(--lf-pom); }
.lagom-formularz__wyslij { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.25rem; margin-top: 0.25rem; }
.lagom-formularz button[type="submit"] {
	cursor: pointer; font: inherit; font-weight: 600; font-size: 0.9375rem; padding: 0.85rem 1.6rem; border-radius: 2px;
	background: var(--wp--preset--color--czern, #111); color: #fff; border: 1px solid var(--wp--preset--color--czern, #111);
	transition: background-color .15s ease, border-color .15s ease;
}
.lagom-formularz button[type="submit"]:hover { background: var(--wp--preset--color--akcent, #a8623b); border-color: var(--wp--preset--color--akcent, #a8623b); }
.lagom-formularz__obietnica { font-size: 0.875rem; color: var(--lf-pom); }
.lagom-formularz__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .lagom-formularz button[type="submit"] { transition: none; } }
