/* Formularz aplikacyjny LSJ (Traffit API), wersja 1.3.7.
   Kolory z zmiennych strony (z wartościami zapasowymi). */

.lsj-aplikuj-ramka {
  background: var(--c-bg-2, #fff);
  border: 1px solid var(--c-line, #d8e5ec);
  border-radius: var(--radius-l, 22px);
  box-shadow: var(--shadow-card, 0 1px 2px rgba(15, 33, 82, .05));
  padding: clamp(20px, 4vw, 36px);
  color: var(--c-ink, #0f2152);
  font-family: var(--font-sans, system-ui, sans-serif);
}

.lsj-aplikuj { display: grid; gap: 18px; }
.lsj-aplikuj__pole { display: grid; gap: 6px; }
.lsj-aplikuj__etykieta, .lsj-aplikuj__wybor legend { font-weight: 700; font-size: .95em; }
.lsj-aplikuj__gwiazdka { color: var(--c-accent, #d9141e); }

.lsj-aplikuj input[type="text"],
.lsj-aplikuj input[type="email"],
.lsj-aplikuj input[type="tel"],
.lsj-aplikuj select,
.lsj-aplikuj textarea {
  width: 100%;
  box-sizing: border-box;
  font: inherit;
  font-size: 1em;
  padding: 12px 14px;
  border: 1px solid var(--c-line-2, #b9d6e0);
  border-radius: var(--radius-s, 8px);
  background: #fff;
  color: inherit;
}
.lsj-aplikuj input[type="file"] { font: inherit; font-size: .95em; max-width: 100%; }
.lsj-aplikuj input:focus-visible,
.lsj-aplikuj select:focus-visible,
.lsj-aplikuj textarea:focus-visible,
.lsj-aplikuj__sukces-tytul:focus-visible {
  outline: 3px solid var(--c-teal, #1597ad);
  outline-offset: 2px;
}
.lsj-aplikuj--blad input, .lsj-aplikuj--blad select, .lsj-aplikuj--blad textarea, .lsj-aplikuj [aria-invalid="true"] {
  border-color: var(--c-accent, #d9141e);
}

.lsj-aplikuj__pomoc, .lsj-aplikuj__info { margin: 0; font-size: .85em; color: var(--c-ink-mute, #5f6f84); line-height: 1.5; }
.lsj-aplikuj__klauzula p { margin: 0; }
.lsj-aplikuj__info a { color: var(--c-teal-ink, #0b7385); }
.lsj-aplikuj__blad { margin: 0; font-size: .85em; color: var(--c-accent, #d9141e); min-height: 0; }
.lsj-aplikuj__blad:empty { display: none; }

.lsj-aplikuj__zgody, .lsj-aplikuj__wybor { border: 0; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsj-aplikuj__zgody legend { font-weight: 700; font-size: .95em; margin-bottom: 6px; padding: 0; }
.lsj-aplikuj__zgoda { display: grid; grid-template-columns: 22px 1fr; gap: 4px 10px; align-items: start; }
.lsj-aplikuj__zgoda .lsj-aplikuj__blad { grid-column: 2; }
.lsj-aplikuj__zgoda input, .lsj-aplikuj__opcja input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--c-accent, #d9141e); }
.lsj-aplikuj__tresc-zgody, .lsj-aplikuj__zgoda--wszystkie label { font-size: .85em; line-height: 1.5; color: var(--c-ink-2, #3f5068); }
.lsj-aplikuj__tresc-zgody p { margin: 0; display: inline; }
.lsj-aplikuj__tresc-zgody a { color: var(--c-teal-ink, #0b7385); text-decoration: underline; }
.lsj-aplikuj__zgoda--wszystkie label { font-weight: 700; }
.lsj-aplikuj__opcja { display: flex; gap: 8px; align-items: center; font-size: .95em; }

.lsj-aplikuj__wyslij { justify-self: start; cursor: pointer; }
.lsj-aplikuj__wyslij[disabled] { opacity: .7; cursor: progress; }

.lsj-aplikuj__status:empty { display: none; }
.lsj-aplikuj__status--blad { color: var(--c-accent, #d9141e); font-weight: 600; font-size: .95em; }

.lsj-aplikuj__komunikat { border-radius: var(--radius-m, 14px); padding: 20px 22px; line-height: 1.55; }
.lsj-aplikuj__komunikat p { margin: 0 0 8px; }
.lsj-aplikuj__komunikat p:last-child { margin-bottom: 0; }
.lsj-aplikuj__komunikat--sukces { background: var(--c-bg-tint, #e3eff3); }
.lsj-aplikuj__sukces-tytul { font-weight: 800; font-size: 1.15em; }
.lsj-aplikuj__komunikat--uwaga { background: #fff6e0; border: 1px solid #f2d48a; }
.lsj-aplikuj__komunikat--blad { background: #fdecee; border: 1px solid #f3c1c5; }
.lsj-aplikuj__link { font-weight: 700; color: var(--c-accent, #d9141e); }
.lsj-aplikuj__ladowanie { color: var(--c-ink-mute, #5f6f84); margin: 0; }

/* Pole-pułapka dla botów: poza ekranem, niedostępne dla ludzi. */
.lsj-aplikuj__hp { position: absolute !important; left: -10000px !important; top: auto; width: 1px; height: 1px; overflow: hidden; }

/* Zapasowy formularz Traffit w ramce (gdy własny formularz jest niedostępny). */
.lsj-aplikuj__traffit iframe { display: block; width: 100%; height: 960px; border: 0; border-radius: var(--radius-m, 14px); background: #fff; }
.lsj-aplikuj__traffit .lsj-aplikuj__info { margin-top: 10px; }

/* Strona oferty pracy: sekcja z formularzem pod treścią oferty. */
/* Wygląd dopasowany do motywu lsj.pl. Motyw ustawia rozmiar bazowy 10 px,
   dlatego sekcja ma własny rozmiar tekstu, a formularz liczy wielkości od niej. */
.lsj-aplikuj-sekcja {
  margin-top: 40px;
  padding: 32px;
  background: #f1f1f1;
  border-top: 5px solid #f08143;
  border-radius: 4px;
  scroll-margin-top: 110px;
  font-size: 17px;
  line-height: 1.5;
}
.lsj-aplikuj-sekcja[hidden] { display: none; }
.lsj-aplikuj-sekcja .lsj-aplikuj-sekcja__tytul { margin: 0 0 20px; font-size: 28px; line-height: 1.2; font-weight: 600; color: #212529; }
.lsj-aplikuj-sekcja .lsj-aplikuj-ramka {
  --c-ink: #212529; --c-ink-2: #333333; --c-ink-mute: #5b5b5b;
  --c-line: #d1dfe7; --c-line-2: #9aa9bd; --c-bg-2: #ffffff; --c-bg-tint: #eef2f6;
  --c-teal: #73869f; --c-teal-ink: #5f7189;
  --font-sans: inherit; --radius-l: 6px; --radius-m: 6px; --radius-s: 4px;
  --shadow-card: 0 2px 12px rgba(0, 0, 0, .07);
  font-size: 17px;
  line-height: 1.5;
  font-weight: 400;
}
.lsj-aplikuj-sekcja .lsj-aplikuj p, .lsj-aplikuj-sekcja .lsj-aplikuj label { font-weight: 400; line-height: 1.5; }
.lsj-aplikuj-sekcja .lsj-aplikuj label.lsj-aplikuj__etykieta, .lsj-aplikuj-sekcja .lsj-aplikuj .lsj-aplikuj__zgody legend, .lsj-aplikuj-sekcja .lsj-aplikuj .lsj-aplikuj__wybor legend { font-size: 17px; font-weight: 600; line-height: 1.4; }
.lsj-aplikuj-sekcja .lsj-aplikuj input, .lsj-aplikuj-sekcja .lsj-aplikuj select, .lsj-aplikuj-sekcja .lsj-aplikuj textarea, .lsj-aplikuj-sekcja .lsj-aplikuj option { text-transform: none; letter-spacing: 0; }
.lsj-aplikuj-sekcja .lsj-aplikuj input::placeholder { text-transform: none; color: #7a7a7a; opacity: 1; }
.lsj-aplikuj-sekcja .lsj-aplikuj input[type="text"], .lsj-aplikuj-sekcja .lsj-aplikuj input[type="email"], .lsj-aplikuj-sekcja .lsj-aplikuj input[type="tel"],
.lsj-aplikuj-sekcja .lsj-aplikuj select, .lsj-aplikuj-sekcja .lsj-aplikuj textarea { font-size: 17px; line-height: 1.4; padding: 12px 14px; height: auto; min-height: 50px; color: #212529; }
.lsj-aplikuj-sekcja .lsj-aplikuj input[type="file"] { font-size: 16px; }
.lsj-aplikuj-sekcja .lsj-aplikuj__pomoc, .lsj-aplikuj-sekcja .lsj-aplikuj__info, .lsj-aplikuj-sekcja .lsj-aplikuj__blad,
.lsj-aplikuj-sekcja .lsj-aplikuj__tresc-zgody, .lsj-aplikuj-sekcja .lsj-aplikuj__zgoda--wszystkie label, .lsj-aplikuj-sekcja .lsj-aplikuj__klauzula { font-size: 15px; }
.lsj-aplikuj-sekcja .lsj-aplikuj a { color: #0b7385; font-size: inherit; text-decoration: underline; }
.lsj-aplikuj-sekcja .lsj-aplikuj input[type="checkbox"] { width: 20px; height: 20px; flex: 0 0 20px; }
.lsj-aplikuj-sekcja .lsj-aplikuj__wyslij {
  display: inline-block; font: inherit; font-size: 20px; font-weight: 600; line-height: 1.2; text-transform: uppercase;
  padding: 14px 36px; color: #fff; background: #73869f; border: 0; border-radius: 4px; cursor: pointer;
}
.lsj-aplikuj-sekcja .lsj-aplikuj__wyslij:hover, .lsj-aplikuj-sekcja .lsj-aplikuj__wyslij:focus { background: #5f7189; color: #fff; }
.lsj-aplikuj-sekcja .lsj-aplikuj__wyslij[disabled] { opacity: .6; cursor: default; }
.lsj-aplikuj-sekcja .lsj-aplikuj__komunikat { font-size: 17px; }
@media (max-width: 575px) {
  .lsj-aplikuj-sekcja { padding: 16px; margin-left: -4px; margin-right: -4px; }
  .lsj-aplikuj-sekcja .lsj-aplikuj-sekcja__tytul { font-size: 24px; }
  .lsj-aplikuj-sekcja .lsj-aplikuj-ramka { padding: 18px; }
  .lsj-aplikuj-sekcja .lsj-aplikuj__wyslij { width: 100%; }
}

/* Pole „Lokalizacja”: kraj i miejscowość z podpowiedziami. */
.lsj-aplikuj__lokalizacja { display: grid; gap: 8px; position: relative; }
.lsj-aplikuj__lokalizacja [hidden] { display: none; }
.lsj-aplikuj__podpowiedzi { list-style: none; margin: 0; padding: 4px; max-height: 260px; overflow-y: auto; background: #fff; border: 1px solid var(--c-line-2, #b9d6e0); border-radius: var(--radius-s, 8px); }
.lsj-aplikuj__podpowiedzi li { margin: 0; padding: 0; }
.lsj-aplikuj__podpowiedz { display: block; width: 100%; text-align: left; font: inherit; font-size: .95em; padding: 9px 10px; border: 0; border-radius: 6px; background: transparent; color: inherit; cursor: pointer; text-transform: none; letter-spacing: 0; box-shadow: none; }
.lsj-aplikuj__podpowiedz:hover, .lsj-aplikuj__podpowiedz:focus { background: var(--c-bg-tint, #eef5f8); outline: none; }
.lsj-aplikuj__podpowiedz span { color: var(--c-ink-mute, #5b6b85); font-size: .85em; }
.lsj-aplikuj__podpowiedz-brak { padding: 9px 10px; color: var(--c-ink-mute, #5b6b85); font-size: .9em; }
