/* ==========================================================================
   Formularze WPForms — wygląd motywu dla wszystkich blogów (klasa body .wcrs-forms-styled z WcrsSetup)

   Działa na każdy formularz WPForms bez dodatkowych klas: szare tło, biała karta
   (zaokrąglenie 24), Sofia Pro, kolory z kitu Elementora (Tekst / Primary).
   Znacznik „modern” WPForms: większość wyglądu przez jego zmienne CSS.
   ========================================================================== */

/* selektor mocniejszy niż WPForms `div.wpforms-container-full:not(:empty)` */
body.wcrs-forms-styled div.wpforms-container.wpforms-container-full:not(:empty) {
    --wcrs-form-text: var(--e-global-color-text, #012D5B);
    --wcrs-form-accent: var(--e-global-color-primary, #012D5B);
    --wcrs-form-muted: #9D9D9D;

    --wpforms-field-border-radius: 12px;
    --wpforms-field-border-color: var(--wcrs-form-muted);
    --wpforms-field-border-size: 1px;
    --wpforms-field-background-color: #FFFFFF;
    --wpforms-field-text-color: var(--wcrs-form-text);
    --wpforms-field-size-input-height: 48px;
    --wpforms-field-size-font-size: 16px;
    --wpforms-field-size-line-height: 24px;
    --wpforms-field-size-padding-h: 16px;
    --wpforms-label-color: var(--wcrs-form-text);
    --wpforms-label-sublabel-color: var(--wcrs-form-text);
    --wpforms-label-error-color: #C5003E;
    --wpforms-label-size-font-size: 16px;
    --wpforms-label-size-line-height: 24px;
    --wpforms-button-border-radius: 12px;
    --wpforms-button-background-color: var(--wcrs-form-accent);
    --wpforms-button-text-color: #FFFFFF;
    --wpforms-button-size-font-size: 16px;
    --wpforms-button-size-height: 48px;
    --wpforms-button-size-padding-h: 24px;

    max-width: none;
    margin: 32px 0;
    padding: 40px;
    border-radius: 24px;
    background: var(--e-global-color-0008198, #FAFAFA);
    font-family: 'sofia-pro', sans-serif;
}

.wcrs-forms-styled .wpforms-container .wpforms-form {
    padding: 32px;
    border-radius: 24px;
    background: #FFFFFF;
}

@media (max-width: 767px) {
    body.wcrs-forms-styled div.wpforms-container.wpforms-container-full:not(:empty) {
        padding: 16px;
    }

    .wcrs-forms-styled .wpforms-container .wpforms-form {
        padding: 24px 16px;
    }
}

.wcrs-forms-styled .wpforms-container .wpforms-form,
.wcrs-forms-styled .wpforms-container .wpforms-form input,
.wcrs-forms-styled .wpforms-container .wpforms-form textarea,
.wcrs-forms-styled .wpforms-container .wpforms-form select,
.wcrs-forms-styled .wpforms-container .wpforms-form button {
    font-family: 'sofia-pro', sans-serif;
}

/* Pola zawsze na całą szerokość karty (formularze z importu mają różne rozmiary) */
.wcrs-forms-styled .wpforms-container .wpforms-field input:not([type="radio"]):not([type="checkbox"]),
.wcrs-forms-styled .wpforms-container .wpforms-field textarea,
.wcrs-forms-styled .wpforms-container .wpforms-field select {
    max-width: 100%;
    width: 100%;
    font-weight: 300;
}

.wcrs-forms-styled .wpforms-container .wpforms-field {
    padding: 12px 0;
}

/* Etykiety pól: Button/lg 16/24 Medium */
.wcrs-forms-styled .wpforms-container .wpforms-field-label {
    margin-bottom: 8px;
    font-weight: 500;
}

.wcrs-forms-styled .wpforms-container .wpforms-required-label {
    color: #C5003E;
}

/* Opisy i podpowiedzi: Body/md 14/22 Light */
.wcrs-forms-styled .wpforms-container .wpforms-field-description,
.wcrs-forms-styled .wpforms-container .wpforms-field-sublabel {
    font-size: 14px;
    line-height: 22px;
    font-weight: 300;
    color: var(--wcrs-form-text);
}

/* Wybór (radio / checkbox): tekst Body/lg 16/26 Light, większe pola dla czytelności */
.wcrs-forms-styled .wpforms-container .wpforms-field-radio li,
.wcrs-forms-styled .wpforms-container .wpforms-field-checkbox li,
.wcrs-forms-styled .wpforms-container .wpforms-field-gdpr-checkbox li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 8px;
}

.wcrs-forms-styled .wpforms-container .wpforms-field-label-inline {
    font-size: 16px;
    line-height: 26px;
    font-weight: 300;
    color: var(--wcrs-form-text);
}

.wcrs-forms-styled .wpforms-container input[type="radio"],
.wcrs-forms-styled .wpforms-container input[type="checkbox"] {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    margin-top: 2px;
    accent-color: var(--wcrs-form-accent);
}

/* WPForms dodaje wcięcie etykiety obok pola wyboru — odstęp daje już gap */
body.wcrs-forms-styled div.wpforms-container-full .wpforms-form .wpforms-field li input + label.wpforms-field-label-inline {
    margin: 0;
    padding-left: 0;
}

/* Fokus: wyraźny obrys w kolorze bloga */
.wcrs-forms-styled .wpforms-container .wpforms-field input:focus-visible,
.wcrs-forms-styled .wpforms-container .wpforms-field textarea:focus-visible,
.wcrs-forms-styled .wpforms-container .wpforms-field select:focus-visible,
.wcrs-forms-styled .wpforms-container .wpforms-submit:focus-visible {
    outline: 2px solid var(--wcrs-form-accent);
    outline-offset: 2px;
}

/* Przycisk wysyłki: Button/lg, kolor bloga */
.wcrs-forms-styled .wpforms-container .wpforms-submit-container {
    padding-top: 16px;
}

.wcrs-forms-styled .wpforms-container button.wpforms-submit {
    font-weight: 500;
    line-height: 24px;
    transition: opacity 0.2s ease;
}

.wcrs-forms-styled .wpforms-container button.wpforms-submit:hover {
    opacity: 0.9;
}

/* Komunikat po wysłaniu w tej samej karcie */
.wcrs-forms-styled .wpforms-confirmation-container-full {
    margin: 32px 0;
    padding: 32px;
    border: 0;
    border-radius: 24px;
    background: #FFFFFF;
    box-shadow: inset 0 0 0 1px var(--e-global-color-0008198, #FAFAFA);
    color: var(--e-global-color-text, #012D5B);
    font-family: 'sofia-pro', sans-serif;
    font-size: 18px;
    line-height: 28px;
}

/* Blogi dla seniorów (opcja wcrs_forms_large → .wcrs-forms-large): większe pisma jak Body/senior 24/34 i Button/senior */
body.wcrs-forms-large div.wpforms-container.wpforms-container-full:not(:empty) {
    --wpforms-field-size-input-height: 60px;
    --wpforms-field-size-font-size: 22px;
    --wpforms-field-size-line-height: 32px;
    --wpforms-label-size-font-size: 24px;
    --wpforms-label-size-line-height: 34px;
    --wpforms-button-size-font-size: 24px;
    --wpforms-button-size-height: 60px;
    --wpforms-button-size-padding-h: 32px;
}

.wcrs-forms-large .wpforms-container .wpforms-field-label-inline {
    font-size: 22px;
    line-height: 32px;
}

.wcrs-forms-large .wpforms-container .wpforms-field-description,
.wcrs-forms-large .wpforms-container .wpforms-field-sublabel {
    font-size: 18px;
    line-height: 28px;
}

.wcrs-forms-large .wpforms-container input[type="radio"],
.wcrs-forms-large .wpforms-container input[type="checkbox"] {
    width: 28px;
    height: 28px;
}
