/*
 * Główny arkusz stylów child theme.
 * Style dodawaj tutaj – nie edytuj plików w motywie rodzicowym.
 */

/* ==========================================================================
   Contact Form 7 – formularz kontaktowy (strona główna + podstrona Kontakt)
   ========================================================================== */

/* Etykiety – font jak tekst podstawowy (Muslish), stały rozmiar, kolor czarny, wielkie litery */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form label,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form p:has(.wpcf7-validates-as-required) label,
.wpcf7 .wpcf7-form label,
.wpcf7 .wpcf7-form p:has(.wpcf7-validates-as-required) label {
	font-family: var(--theme-font-family);
	font-size: 1rem;
	font-weight: var(--theme-font-weight);
	line-height: 1.8;
	color: #000;
	text-transform: uppercase;
}

/* Zgoda RODO (label.wpcf7-consent) – pełna szerokość formularza, małe litery, 14px, bez obramowania kontenera */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent,
.wpcf7 .wpcf7-form .wpcf7-consent {
	width: 100%;
	font-size: 14px;
	text-transform: none !important;
	display: flex;
	align-items: flex-start;
	gap: 0.35em;
	margin-bottom: 0.5em;
	box-sizing: border-box;
	border: none;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent .wpcf7-form-control-wrap,
.wpcf7 .wpcf7-form .wpcf7-consent .wpcf7-form-control-wrap,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent .wpcf7-list-item,
.wpcf7 .wpcf7-form .wpcf7-consent .wpcf7-list-item {
	border: none;
}

/* W bloku zgody żaden element (oprócz checkboxa) nie ma border-bottom 2px */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent .wpcf7-form-control:not(input[type="checkbox"]),
.wpcf7 .wpcf7-form .wpcf7-consent .wpcf7-form-control:not(input[type="checkbox"]) {
	border: none;
	border-bottom: none;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent::before,
.wpcf7 .wpcf7-form .wpcf7-consent::before {
	display: none;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent .wpcf7-list-item-label,
.wpcf7 .wpcf7-form .wpcf7-consent .wpcf7-list-item-label,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent label,
.wpcf7 .wpcf7-form .wpcf7-consent label {
	text-transform: none;
	font-size: 14px;
}

/* Checkbox zgody – tylko obramowanie 1px (bez border-bottom jak pola), stan zaznaczenia */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent input[type="checkbox"],
.wpcf7 .wpcf7-form .wpcf7-consent input[type="checkbox"] {
	appearance: none;
	width: 1.125em;
	height: 1.125em;
	margin: 0 0.5em 0 0;
	vertical-align: middle;
	border: 1px solid #000;
	background: #fff;
	cursor: pointer;
	flex-shrink: 0;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent input[type="checkbox"]:checked,
.wpcf7 .wpcf7-form .wpcf7-consent input[type="checkbox"]:checked {
	background: #000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") center / 70% no-repeat;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent .wpcf7-form-control-wrap,
.wpcf7 .wpcf7-form .wpcf7-consent .wpcf7-form-control-wrap {
	order: -1;
	flex-shrink: 0;
}

/* Mniejszy odstęp między wierszami formularza (label + input) */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form > p,
.wpcf7 .wpcf7-form > p {
	margin-bottom: 0.5em;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form > p:last-of-type,
.wpcf7 .wpcf7-form > p:last-of-type {
	margin-bottom: 0;
}

/* Pola input/textarea/select – tylko dolna obwódka, tekst czarny */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control,
.wpcf7 .wpcf7-form-control {
	border: none;
	border-bottom: 2px solid #000;
	color: #000;
}

/* Wyjątek: tylko checkbox zgody (input) – obramowanie 1px; kontener bez obramowania */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-consent input[type="checkbox"].wpcf7-form-control,
.wpcf7 .wpcf7-form .wpcf7-consent input[type="checkbox"].wpcf7-form-control {
	border: 1px solid #000;
	border-bottom: 1px solid #000;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control::placeholder,
.wpcf7 .wpcf7-form-control::placeholder {
	color: #000;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form select.wpcf7-form-control option,
.wpcf7 .wpcf7-form select.wpcf7-form-control option {
	color: #000;
}

/* Select – większa, wyraźna strzałka */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form select.wpcf7-form-control,
.wpcf7 .wpcf7-form select.wpcf7-form-control {
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.25em center;
	background-size: 1.25em;
	padding-right: 2em;
}

/* Kontener przycisku – wyrównanie do prawej, większy górny margines */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form p:has(.wpcf7-submit),
.wpcf7 .wpcf7-form p:has(.wpcf7-submit) {
	display: flex;
	justify-content: flex-end;
	margin-top: 25px;
}

/* Przycisk Wyślij – większy rozmiar, biały tekst, miękki cień */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-submit,
.wpcf7 .wpcf7-form .wpcf7-submit {
	padding: 0.75em 1.5em;
	font-size: 1.125rem;
	min-height: 2.75em;
	color: #fff;
	box-shadow: 0 2px 16px rgba(178, 85, 240, 0.12);
}

/* Po wysłaniu formularza – ukrycie nagłówka h2 i pól, widoczny tylko komunikat sukcesu */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form.sent .hidden-fields-container,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form.sent > h2,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form.sent > p:not(:has(.wpcf7-response-output)),
.wp-block-contact-form-7-contact-form-selector .wpcf7-form.sent > label,
.wpcf7 .wpcf7-form.sent .hidden-fields-container,
.wpcf7 .wpcf7-form.sent > h2,
.wpcf7 .wpcf7-form.sent > p:not(:has(.wpcf7-response-output)),
.wpcf7 .wpcf7-form.sent > label {
	display: none;
}

/* Komunikat sukcesu – ten sam styl co nagłówek h2 (font, wielkość) */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form.sent .wpcf7-response-output,
.wpcf7 .wpcf7-form.sent .wpcf7-response-output {
	display: block;
	font-family: var(--theme-font-family);
	font-size: 2.1875rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 0;
	padding: 0.5em 0 0 0;
	border: none;
	color: var(--theme-heading-2-color, var(--theme-headings-color, #000));
}

/* Komunikaty walidacji CF7 – normalna wielkość liter, pogrubienie */
.wp-block-contact-form-7-contact-form-selector .wpcf7-not-valid-tip,
.wpcf7 .wpcf7-not-valid-tip {
	text-transform: none;
	font-weight: bold;
}

/* ==========================================================================
   Stopka – menu
   ========================================================================== */

/* Linki w menu stopki bez kapitalików (tekst jak w treści) */
#menu-footer .ct-menu-link {
	text-transform: none;
}
