/* ==========================================================================
   Náskok · vlna 2 ve složce (Eva 2, 2026-09-28): D1 „Co vám ve složce chybělo?“ (PN-016) a kalendář .ics,
   plán přípravy po dnech a checklist den předem (PN-027). Jen proměnné z tokens.css a tokens-naskok.css,
   čipy (.cipy, .cip-volba) a tlačítka (.sl-tlacitko) přebírá ze slozka-kolo2.css a aplikace.css.
   Cíle aspoň 44 px, fokus vždy vidět, 360 px bez vodorovného posunu. Načítá se po slozka-kolo2.css.
   ========================================================================== */
@media screen {

/* ---------- D1: co vám chybělo (PN-016) ---------- */
.chybelo { display: block; }
.chybelo[hidden] { display: none; }
.chybelo p.chybelo__napoveda { margin: 0 0 var(--m-2); }
.chybelo__volby { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.chybelo .cip-volba { max-width: 100%; }
.chybelo .cip-volba span { overflow-wrap: anywhere; }

/* ---------- kalendář, plán a checklist (PN-027) ---------- */
.kalendar { border-top: 1px solid var(--linka); margin-top: var(--m-4); padding-top: var(--m-4); }
.kalendar[hidden], .kalendar [hidden] { display: none !important; }
.kalendar__soubor { display: grid; gap: var(--m-2); justify-items: start; }
.kalendar__tlacitko { max-width: 100%; text-align: center; }
.sl-stranka .kalendar a.kalendar__tlacitko:not([href]), .sl-stranka .kalendar a.kalendar__tlacitko:not([href]):hover { cursor: not-allowed; background: var(--neaktivni-plocha); color: var(--neaktivni-text); border-color: transparent; }
/* .kalendar.kalendar: blok sedí v kartě pohovoru, kde aplikace.css nuluje odstavce (main.app .sl-pohovor-karta p, p + p) */
.kalendar.kalendar p.kalendar__vysvetleni, .kalendar.kalendar p.kalendar__volba-napoveda { margin: 0; }
.kalendar.kalendar p.kalendar__volba-napoveda { padding-left: 2.1rem; margin-top: -0.55rem; }

.kalendar__volba { display: grid; grid-template-columns: 1.5rem 1fr; gap: 0.6rem; align-items: start; min-height: 2.75rem; padding: 0.55rem 0; cursor: pointer; font-weight: 600; }
.kalendar__volba input { width: 1.25rem; height: 1.25rem; margin: 0.15rem 0 0; accent-color: var(--produkt); cursor: pointer; }
.kalendar__volba input:focus-visible { outline: var(--fokus-sirka) solid var(--produkt-text); outline-offset: var(--fokus-odsazeni); }

.kalendar__plan, .kalendar__checklist { margin-top: var(--m-5); }
.kalendar__plan h3, .kalendar__checklist h3 { font-size: var(--velikost-h4); margin: 0 0 var(--m-2); }
.kalendar.kalendar .kalendar__plan > p { margin: 0 0 var(--m-3); }
.kalendar__dny { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--m-3); }
.kalendar__den { position: relative; padding: var(--m-3) var(--m-3) var(--m-3) calc(var(--m-3) + 0.35rem); background: var(--plocha-2); border-radius: 12px; }
.kalendar__den::before { content: ""; position: absolute; left: 0; top: var(--m-3); bottom: var(--m-3); width: 0.25rem; border-radius: 999px; background: var(--produkt-akcent); }
.kalendar__stitek { font-size: var(--velikost-m); font-weight: 700; margin: 0 0 0.35rem; }
.kalendar__stitek::first-letter { text-transform: uppercase; }
.kalendar.kalendar p.kalendar__blok { margin: 0; overflow-wrap: anywhere; }
.kalendar.kalendar p.kalendar__blok + p.kalendar__blok { margin-top: 0.5rem; }
.kalendar__blok strong { display: block; }
.kalendar__na-checklist { display: inline-block; min-height: 2.75rem; padding: 0.6rem 0; font-weight: 600; color: var(--produkt-text); text-underline-offset: 0.15em; }
.kalendar__na-checklist::before { content: "→"; margin-right: 0.4rem; }

.kalendar__checklist:focus { outline: none; }
.kalendar__checklist:focus-visible { outline: var(--fokus-sirka) solid var(--produkt-text); outline-offset: var(--fokus-odsazeni); border-radius: 12px; }
.kalendar__skupina { font-size: var(--velikost-s); font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--tlumeny); margin: var(--m-3) 0 0; }
.kalendar__polozky { list-style: none; margin: 0; padding: 0; }
.kalendar .kalendar__polozka { font-weight: 400; border-bottom: 1px solid var(--linka); }
.kalendar__polozky li:last-child .kalendar__polozka { border-bottom: 0; }
.kalendar__polozka span { overflow-wrap: anywhere; }
.kalendar__polozka:has(input:checked) span { color: var(--tlumeny); text-decoration: line-through; text-decoration-thickness: 1px; }

}

@media print {
  .kalendar__soubor { display: none !important; }
  .kalendar__den { background: none; border: 1px solid #999; }
}
