/* ==========================================================================
   /dlugie-weekendy/ i /wymiar-czasu-pracy/ (page-dlugie-weekendy.php, page-wymiar-czasu-pracy.php)
   - ładowane tylko na tych stronach. Lista długich weekendów i tabele - main.css (.kal-dw-*, .kal-odl-*).
   ========================================================================== */

.kal-pu {
  --pu-praca: #E8EDF6;
  --pu-praca-tekst: #2F4A7A;
  --pu-swieto: #A23B3B;
  --pu-sobota: #F6E1DC;
}

/* ---------- Liczby pod wstępem ---------- */
.kal-pu-liczby {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin: 4px 0 24px;
  padding: 0;
  list-style: none;
}
.kal-pu-liczby__el {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px 16px;
  background: var(--kal-paper-raised);
  border: 1px solid var(--kal-line);
  border-top: 4px solid var(--kal-brick);
  border-radius: 8px;
}
.kal-pu-liczby__wartosc { font-size: 1.7rem; font-weight: 700; line-height: 1.1; color: var(--kal-navy); }
.kal-pu-liczby__wartosc small { font-size: 0.95rem; font-weight: 600; color: var(--kal-ink-soft); }
.kal-pu-liczby__opis { font-size: 0.86rem; line-height: 1.4; color: var(--kal-ink-soft); }

/* ---------- Długie weekendy: nagłówek pozycji jako h3 ---------- */
.kal-pu .kal-dw-weekend__tytul { font-size: 1rem; font-weight: 400; line-height: 1.4; }

/* ---------- Tabele ---------- */
.kal-pu-tabela tr.is-minione { opacity: 0.5; }
.kal-pu-tabela td { white-space: normal; }
.kal-pu-tabela .kal-pu-tabela__swieta { text-align: left; font-size: 0.85rem; }
@media (max-width: 640px) {
  .kal-pu-tabela .kal-pu-tabela__swieta { display: none; }
}

/* ---------- Kalendarz czasu pracy ---------- */
.kal-pu-legenda {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
  margin: 12px 0 16px;
  padding: 0;
  list-style: none;
  font-size: 0.85rem;
  color: var(--kal-ink-soft);
}
.kal-pu-legenda li { display: flex; align-items: center; gap: 6px; }
.kal-pu-legenda .kal-pu-dzien { width: 26px; }

.kal-pu-kalendarz {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 14px;
}
.kal-pu-miesiac {
  padding: 12px;
  background: var(--kal-paper-raised);
  border: 1px solid var(--kal-line);
  border-radius: 8px;
}
.kal-pu-miesiac__tytul {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  margin: 0 0 8px;
  font-size: 1rem;
}
.kal-pu-miesiac__tytul a { color: var(--kal-navy); text-decoration: none; }
.kal-pu-miesiac__tytul a:hover { text-decoration: underline; }
.kal-pu-miesiac__tytul span { font-size: 0.8rem; font-weight: 600; color: var(--kal-brick); white-space: nowrap; }
.kal-pu-miesiac__siatka {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 3px;
  text-align: center;
}
.kal-pu-miesiac__dt { font-size: 0.68rem; font-weight: 700; color: var(--kal-ink-soft); text-transform: uppercase; }
.kal-pu-dzien {
  display: inline-block;
  padding: 3px 0;
  border-radius: 4px;
  font-size: 0.8rem;
  line-height: 1.3;
  text-align: center;
}
.kal-pu-dzien.is-praca { background: var(--pu-praca); color: var(--pu-praca-tekst); }
.kal-pu-dzien.is-weekend { color: var(--kal-ink-soft); opacity: 0.6; }
.kal-pu-dzien.is-swieto { background: var(--pu-swieto); color: #fff; font-weight: 700; }
.kal-pu-dzien.is-swieto.is-sobota { background: var(--pu-sobota); color: var(--pu-swieto); outline: 2px solid var(--pu-swieto); outline-offset: -2px; }

/* ---------- Zobacz też ---------- */
.kal-pu-zobacz__lista { margin: 12px 0 0; padding-left: 20px; line-height: 1.7; }
.kal-pu-zobacz__lista a,
.kal-pu .kal-odl-przypis a,
.kal-pu .kal-dw-sekcja > p a { color: var(--kal-navy); text-decoration: underline; text-underline-offset: 3px; }

@media print {
  .kal-pu-dzien.is-praca { background: #eee; color: #000; }
  .kal-pu-dzien.is-swieto { background: #000; color: #fff; }
}
