/* ==========================================================================
   DIATONICA STUDIO — KAZALO CASOV /cases/ (V1 »Knjižnica«, izbrano 6. 10. 2026)
   Naloži ga samo Web/cases/index.html, za site.css (+ /shared/js/kazalo.js).
   Stran gradi _Studio/Dev-tools/casi/naredi-kazala.py splet iz casi.json —
   seznama ročno ne urejaj. Predpona .kz-. Tokeni samo iz site.css.
   Variante in V3 »Program« (shranjen za prihodnost): _Studio/Variante/Kazalo casov/.
   ========================================================================== */

.kz .c-menu__body { min-width: 0; }
.kz-index { min-width: 0; }

/* ==========================================================================
   V1 · KNJIŽNICA — znamke namesto casov
   Vrstica znamke je večja od sedanje vrstice casa (5 vrstic namesto 9).
   Brez sličic in brez znakov + / → na desni (Mitja, 5. 10.): sliko pokaže ozadje
   ob lebdenju, kot zdaj; odprto znamko pokaže medeninasto ime.
   Izbrano za splet 6. 10.: en sam seznam, brez »Nova edicija« in naslovov skupin.
   Ime in oznaka sta poravnana v vseh vrsticah (fiksen stolpec oznake).
   ========================================================================== */
.kz-lib {
  --kz-lab: clamp(7.25rem, 8.5vw, 8.75rem);   /* stolpec oznak: 4 EDICIJE, N°001 PHOTO */
  display: flex;
  flex-direction: column;
  gap: clamp(1.4rem, 3.6vh, 2.75rem);
  padding-block: clamp(1rem, 3vh, 2rem);
}
.kz-lib__section > .u-eyebrow {
  margin-bottom: clamp(0.35rem, 1.1vh, 0.75rem);
  opacity: 0;
  transition: opacity var(--dur-slow) var(--ease-out);
  transition-delay: calc(0.05s + var(--kz-i, 0) * 0.07s);
}
.c-menu.is-open .kz-lib__section > .u-eyebrow { opacity: 1; }
.c-menu.is-open .kz-lib .c-menu__item { transition-delay: calc(0.1s + var(--kz-i, 0) * 0.07s); }

.kz-lib .c-menu__no {
  flex: none;
  min-width: 0;
  width: var(--kz-lab);
  font-size: 0.75rem;              /* stalna velikost oznake ne glede na velikost vrstice */
  letter-spacing: var(--tracking-widest);
}

/* Vrstica: nova edicija, znamka */
.kz-lib__row {
  width: 100%;
  text-align: left;
  column-gap: clamp(0.9rem, 1.4vw, 1.5rem);
  font-size: clamp(1.6rem, 3.9vh, 3rem);
}
.kz-lib__subrow { column-gap: clamp(0.9rem, 1.4vw, 1.5rem); }
.kz-lib__name { min-width: 0; }
/* Ob lebdenju se premakneta oznaka in ime (kot zdaj); vrstica sama ostane v stolpcu */
.kz-lib__row:hover,
.kz-lib__row:focus-visible,
.kz-lib__subrow:hover,
.kz-lib__subrow:focus-visible { transform: none; }
.kz-lib__row > .c-menu__no,
.kz-lib__row > .kz-lib__name,
.kz-lib__subrow > .c-menu__no,
.kz-lib__subrow > .kz-lib__name { transition: transform var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out); }
.kz-lib__row:hover > .c-menu__no,
.kz-lib__row:hover > .kz-lib__name,
.kz-lib__row:focus-visible > .c-menu__no,
.kz-lib__row:focus-visible > .kz-lib__name,
.kz-lib__subrow:hover > .c-menu__no,
.kz-lib__subrow:hover > .kz-lib__name,
.kz-lib__subrow:focus-visible > .c-menu__no,
.kz-lib__subrow:focus-visible > .kz-lib__name { transform: translateX(0.35em); }
.kz-lib__row .c-menu__tag { max-width: 40em; }

/* Edicije znamke — odpre se pod vrstico (grid 0fr → 1fr, brez merjenja višine) */
.kz-lib__sub {
  display: grid;
  grid-template-rows: 0fr;
  visibility: hidden;
  transition: grid-template-rows var(--dur-base) var(--ease-out), visibility 0s linear var(--dur-base);
}
.kz-lib__group.is-open .kz-lib__sub {
  grid-template-rows: 1fr;
  visibility: visible;
  transition-delay: 0s;
}
.kz-lib__sub > ul { min-height: 0; overflow: hidden; list-style: none; margin: 0; padding: 0; }
.kz-lib__sub > ul > li:first-child { padding-top: clamp(0.15rem, 0.6vh, 0.5rem); }
.kz-lib__sub > ul > li:last-child { padding-bottom: clamp(0.5rem, 1.6vh, 1.1rem); }
.kz-lib__subrow { font-size: clamp(1.15rem, 2.5vh, 1.8rem); }
.kz-lib__subrow .c-menu__no { color: var(--color-ink-faint); }
.kz-lib__subrow:hover .c-menu__no,
.kz-lib__subrow:focus-visible .c-menu__no { color: var(--color-accent); }
.kz-lib__group.is-open > .kz-lib__row { color: var(--color-accent-soft); }

/* Telefon — pokončno */
@media (max-width: 700px) {
  /* Slogan je na telefonu skrit, njegova nevidna tarča za prst (site.css, ::after 44 px)
     pa je štrlela 24 px čez desni rob → vodoravni preliv (izmerjeno 5. 10.). */
  .kz .c-menu__close::after { content: none; }
  .kz-lib { --kz-lab: 6rem; }
  .kz-lib__row { font-size: clamp(1.5rem, 6.6vw, 2.1rem); }
  .kz-lib__subrow { font-size: clamp(1.1rem, 4.6vw, 1.4rem); }
  .kz-lib .c-menu__no { font-size: 0.625rem; }
}

/* Telefon — ležeče (višina je merilo, ne širina) */
@media (max-height: 500px) {
  .kz-lib { padding-block: 0.5rem; }
  .kz-lib__row { font-size: clamp(1.3rem, 7vh, 2rem); }
  .kz-lib__subrow { font-size: clamp(1.05rem, 5.5vh, 1.4rem); }
}

@media (prefers-reduced-motion: reduce) {
  .kz-lib__sub { transition: none; }
}

/* Kontakt pod socialnimi omrežji namesto noge (Mitja, 6. 10.): naslova ne kažemo,
   e-pošta z ikono, gumb širok kot vrsta ikon (3 × 46 px + 2 razmika). */
.kz-kontakt { display: flex; flex-wrap: wrap; align-items: center; gap: 0.9rem 1.5rem; margin-top: var(--space-xs); }
.kz-kontakt__btn { width: calc(138px + 1.2rem); justify-content: center; padding-inline: 0; }
.kz-kontakt__mail b { font-weight: 600; }

/* Noga /cases/ (Mitja, 6. 10.): manifest stoji sam v desnem stolpcu; ikone, Kontakt in
   e-pošta so mirna vrstica spodaj, levo poravnana z manifestom in sloganom (ista os). */
.kz .c-menu__aside .c-menu__manifest { margin-bottom: 0; }
.kz .c-menu__foot {
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: var(--space-md);
  border-top: 0;
  padding-block: 0 clamp(1.5rem, 4vh, 2.5rem);
}
.kz-noga {
  grid-column: 2;
  width: calc(var(--manifest-w) + var(--space-md) + 1px);
  padding-left: calc(var(--space-md) + 1px);   /* = odmik in črta desnega stolpca */
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 1.5rem;
}
.kz-noga .kz-kontakt__btn { width: auto; padding-inline: 1.9em; }
@media (max-width: 900px) {
  .kz .c-menu__foot { grid-template-columns: 1fr; padding-top: var(--space-xs); }
  .kz-noga { grid-column: 1; width: auto; padding-left: 0; }
}

/* ==========================================================================
   TELEFON · NASLOVNICE (Mitja, 8. 10. 2026 — smer B): na telefonu ni lebdenja, zato sta
   casa prej ostala majhni vrstici brez slike. Vsaka vrstica znamke je zdaj naslovnica čez
   večino zaslona: fotografija (ista kot ozadje ob lebdenju na računalniku, vstavi jo
   kazalo.js), N° v medenini in ime na veliko; manifest pride po drsenju.
   ========================================================================== */
.kz-naslovnica__slika { display: none; }
@media (max-width: 700px) {
  .kz-lib { gap: 0.9rem; padding-block: 0.25rem 1.75rem; }
  .kz-lib__row.kz-naslovnica {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 0.55rem;
    height: min(74svh, 160vw);
    padding: 1.4rem 1.25rem;
    color: var(--color-ink);
  }
  .kz-naslovnica__slika {
    display: block;
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .kz-lib__row.kz-naslovnica::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgba(14, 17, 18, 0) 30%, rgba(14, 17, 18, 0.5) 62%, rgba(14, 17, 18, 0.92) 100%);
  }
  .kz-naslovnica > .c-menu__no { width: auto; font-size: 0.8rem; color: var(--color-accent); }
  .kz-naslovnica > .kz-lib__name { font-size: clamp(3.1rem, 17vw, 5.5rem); line-height: 0.92; }
  .kz-naslovnica .c-menu__tag {
    display: block;
    max-width: 30ch;
    margin-top: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.45;
    color: rgba(245, 244, 242, 0.82);
  }
  .kz-lib__row.kz-naslovnica:hover > .c-menu__no,
  .kz-lib__row.kz-naslovnica:hover > .kz-lib__name,
  .kz-lib__row.kz-naslovnica:focus-visible > .kz-lib__name { transform: none; }
}
