/* ============================================================
   Ekrānu šabloni
   ============================================================ */

/* ────────────────────────────────────────────────────────────
   10 · Sākumekrāns (attract)

   Koka fons dizainā ir 3000×2000 uz 1920×1080 audekla — 156%
   platumā. Tā ir kustības rezerve, un mēs to izmantojam: fons
   lēni dreifē, virsū slīd ēna. Viss uz GPU, JS nav iesaistīts,
   tāpēc tas var griezties nedēļām bez atmiņas pieauguma.
   ──────────────────────────────────────────────────────────── */

.sakums { position: absolute; inset: 0; display: grid; place-items: center; }

/* Dizainā virsraksta bloks (274…733) sēž ~36 px virs ekrāna centra. */
.sakums__saturs { margin-top: calc(var(--u) * -36); }

.sakums .fons {
  animation: fona-dreifs 72s ease-in-out infinite alternate;
  will-change: transform;
}

@keyframes fona-dreifs {
  from { transform: translate3d(calc(var(--u) * -46), calc(var(--u) * -24), 0) scale(1.02); }
  to   { transform: translate3d(calc(var(--u) *  46), calc(var(--u) *  24), 0) scale(1.06); }
}

/* Slīdošā ēna — atsevišķs slānis, kas iet pretējā virzienā.
   `multiply` liek tai satumšināt koku, nevis to nosegt. */
.sakums__ena {
  position: absolute;
  inset: calc(var(--u) * -200);
  z-index: 0;
  pointer-events: none;
  mix-blend-mode: multiply;
  background: linear-gradient(
    104deg,
    transparent 0%,
    transparent 26%,
    rgba(0, 0, 0, 0.55) 42%,
    rgba(0, 0, 0, 0.72) 52%,
    rgba(0, 0, 0, 0.42) 63%,
    transparent 82%,
    transparent 100%
  );
  animation: enas-slidums 34s ease-in-out infinite alternate;
  will-change: transform;
}

@keyframes enas-slidums {
  from { transform: translate3d(calc(var(--u) * -620), 0, 0); }
  to   { transform: translate3d(calc(var(--u) *  620), 0, 0); }
}

/* Caurspīdīgs slānis pāri visam ekrānam — pieskaries jebkur, un
   apskate sākas. Guļ zem satura, tāpēc valodu saite paliek virsū. */
.sakums__viss { position: absolute; inset: 0; z-index: 1; }

.sakums__saturs {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: calc(var(--u) * 22);
  pointer-events: none;      /* klikšķi iet cauri uz .sakums__viss */
}
.sakums__saturs a { pointer-events: auto; }

/* Virsraksts: OKUPACIJAS 346,274 1242×232 · Gadi 677,521 579×120 */
.sakums__virsraksts { width: calc(var(--u) * 1242); display: block; }
.sakums__gadi       { width: calc(var(--u) * 579);  display: block; }

/* Metāla tekstūra viegli “elpo” — tikai filtrs, nekādas pārzīmēšanas. */
.sakums__virsraksts, .sakums__gadi {
  animation: elpa 18s ease-in-out infinite alternate;
}
@keyframes elpa {
  from { filter: brightness(0.94) contrast(1.02); }
  to   { filter: brightness(1.08) contrast(1.06); }
}

/* LV EN RU · 816,691 · SemiBold 60px */
.sakums__valodas {
  display: flex;
  gap: calc(var(--u) * 46);
  margin-top: calc(var(--u) * 26);
  font-size: var(--sv-valoda);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.04em;
}
.sakums__valodas a {
  padding: calc(var(--u) * 10) calc(var(--u) * 18);
}

/* ────────────────────────────────────────────────────────────
   20 · Galvenā izvēlne — 6 tēmu kartītes

   Kartītes dizainā: y 190…890, x segmenti sakrīt ar apakšējo
   joslu. Attēli nāk no pašas tēmas satura, nevis no dekora.
   ──────────────────────────────────────────────────────────── */

.izvelne {
  position: absolute;
  left: var(--mala);
  right: var(--mala);
  top: var(--sat-top);
  height: var(--sat-augstums);
  display: flex;
  gap: calc(var(--u) * 4);
}

.karte {
  position: relative;
  flex: 1;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--tema, #444);
  box-shadow: 0 calc(var(--u) * 10) calc(var(--u) * 26) var(--ena);
  transition: flex-grow var(--t-hover) var(--likne-hover);
}

.karte__att {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Attēls ir tēmas krāsā tonēts — tā pati apstrāde, kas dizainā. */
}

.karte__nosaukums {
  position: relative;
  z-index: 1;
  font-size: var(--sv-virsraksts);
  font-weight: 500;
  line-height: 1.12;
  text-transform: uppercase;
  letter-spacing: 0.035em;
  text-align: center;
  padding-inline: calc(var(--u) * 16);
  text-shadow: 0 calc(var(--u) * 2) calc(var(--u) * 8) rgba(0, 0, 0, 0.5);
}

.karte:active { filter: brightness(1.15); }

/* Kartītes pārejas vārds (tema-*) ir css/transitions.css — tur ir visa
   horeogrāfija: kartīte pāraug sadaļas vākā, pārējās atkāpjas uz sāniem. */

/* Uz datora ar peli: kartīte, virs kuras stāv kursors, paplašinās un
   attēls lēni tuvinās; pārējās mazliet atkāpjas ēnā. Uz skārienekrāna
   hover nav, un šis neko nemaina. */
@media (hover: hover) {
  .karte { transition: flex-grow 1100ms var(--likne-morfs), filter 900ms var(--likne-hover); }
  .karte__att { transition: scale 2400ms var(--likne-hover); }
  .izvelne:has(.karte:hover) .karte:not(:hover) { filter: brightness(0.7) saturate(0.85); }
  .karte:hover { flex-grow: 1.35; }
  .karte:hover .karte__att { scale: 1.06; }
}

/* ────────────────────────────────────────────────────────────
   30 · Sadaļas izvēlne — vāks · punkti · ievadteksts

   Trīs paneļi pa 610px ar 15px atstarpi, 48px iekšējā mala.
   ──────────────────────────────────────────────────────────── */

.sadala {
  position: absolute;
  left: var(--mala);
  right: var(--mala);
  top: var(--sat-top);
  height: var(--sat-augstums);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--atstarpe);
}

/* --- Vāka kartīte --- */
.sadala__vaks {
  position: relative;
  display: grid;
  align-items: center;
  justify-items: end;
  padding: var(--panelis-pad);
  overflow: hidden;
  background: var(--tema, #444);
}
.sadala__vaks img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}
.sadala__vaks h1 {
  position: relative;
  margin: 0;
  font-size: var(--sv-virsraksts);
  font-weight: 500;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.035em;
  text-align: right;
  text-shadow: 0 calc(var(--u) * 2) calc(var(--u) * 8) rgba(0, 0, 0, 0.45);
}

/* --- Punktu saraksts --- */
.sadala__saraksts {
  background: var(--panelis);
  padding: calc(var(--u) * 89) calc(var(--u) * 82);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.sadala__saraksts ul { margin: 0; padding: 0; list-style: none; }
.sadala__saraksts li + li { margin-top: 0; }

.punkts {
  display: flex;
  align-items: baseline;
  gap: calc(var(--u) * 10);
  width: 100%;
  height: calc(var(--u) * 71);          /* dizaina rindstarpa */
  font-size: var(--sv-saraksts);
  font-weight: 500;
  line-height: 1;
  text-align: left;
  color: var(--teksts-pasiv-1);
  transition: color var(--t-hover) var(--likne-hover), translate var(--t-hover) var(--likne-hover);
}
.punkts:active { color: var(--teksts); translate: calc(var(--u) * 4) 0; }
.punkts[aria-current="true"] { color: var(--teksts); }
@media (hover: hover) {
  .punkts:hover { color: var(--teksts); translate: calc(var(--u) * 6) 0; }
}

/* Zars, kas ved dziļāk, dizainā beidzas ar “>” */
.punkts__talak { opacity: 0.7; }

/* “Vispārīgi materiāli” ir līdzvērtīgs saraksta punkts, nevis
   izvēlnes papildinājums — tas tikai vienmēr stāv pēdējais. */
.punkts--pedejais { margin-top: calc(var(--u) * 24); }

/* --- Ievadteksts --- */
.sadala__ievads {
  background: var(--panelis);
  padding: calc(var(--u) * 54) var(--panelis-pad);
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.sadala__ievads p {
  margin: 0 0 1em;
  font-size: var(--sv-teksts);
  line-height: 1.45;
  text-align: justify;
  hyphens: auto;
}
/* Dizainā avots seko tekstam ar nelielu atstarpi, nevis stāv
   piespiests paneļa apakšai. */
/* `.sadala__ievads p` ir specifiskāks par vienu klasi — bez vecāka
   šeit avots palika pie kreisās malas. */
.sadala__ievads .sadala__avots {
  margin-top: calc(var(--u) * 10);
  font-size: var(--sv-mazs);
  text-align: right;
  color: var(--teksts-kluss);
}

/* ---- Mobilais -------------------------------------------------------- */
@media (max-width: 820px) {
  .sakums { position: static; min-height: 100svh; padding: var(--mala); }
  .sakums__virsraksts { width: 88vw; }
  .sakums__gadi       { width: 42vw; }

  .izvelne, .sadala {
    position: static;
    height: auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: calc(var(--u) * 10);
    margin: calc(var(--u) * 16) var(--mala);
  }
  .karte { min-height: calc(var(--u) * 108); }
  .sadala__vaks { min-height: calc(var(--u) * 160); justify-items: start; }
  .sadala__vaks h1 { text-align: left; }
  .sadala__saraksts { padding: calc(var(--u) * 16) calc(var(--u) * 20); }
  .punkts { height: calc(var(--u) * 46); }
  .sadala__ievads { padding: calc(var(--u) * 20); }
}

/* ────────────────────────────────────────────────────────────
   Koplietotās daļas
   ──────────────────────────────────────────────────────────── */

/* Ritināšanas norāde — dizainā plāna svītra, kas rāda, cik daudz
   satura vēl ir. Aizstāj sistēmas ritjoslu, kas uz kioska izskatās
   svešķermenis. */
.ritjosla {
  position: absolute;
  width: calc(var(--u) * 4);
  background: rgba(255, 255, 255, 0.28);
}
.ritjosla__rokturis {
  position: absolute;
  inset-inline: 0;
  top: 0;
  background: var(--teksts);
  transition: top 80ms linear;
}

/* Ritināmie apgabali paši ritjoslu neslēpj — to dara šis. */
.ritinams {
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
}
.ritinams::-webkit-scrollbar { display: none; }

/* Iepriekšējais / nākamais — dizainā plānas šķautnes bultas */
.bultas {
  position: absolute;
  display: flex;
  justify-content: space-between;
  align-items: center;
  pointer-events: none;
}
.bultas button {
  pointer-events: auto;
  display: grid;
  place-items: center;
  width: calc(var(--u) * 76);
  height: calc(var(--u) * 76);
  color: var(--teksts);
}
.bultas svg { width: calc(var(--u) * 21); height: auto; }
.bultas button[disabled] { opacity: 0.25; pointer-events: none; }

/* Palielināt — dizainā 35×35 stūra ikona */
.palielinat {
  position: absolute;
  display: grid;
  place-items: center;
  width: calc(var(--u) * 68);
  height: calc(var(--u) * 68);
  color: var(--teksts);
}
.palielinat svg { width: calc(var(--u) * 35); height: auto; }

/* Mediju ikonas — foto · video · audio. Rāmis ir pašā ikonā (AI
   failā), tāpēc poga ir tikai pieskāriena laukums ap to. */
.mediji { display: flex; gap: calc(var(--u) * 13); }
.mediji button {
  display: grid;
  place-items: center;
  color: var(--teksts);
}
.mediji svg { display: block; width: calc(var(--u) * 44); height: auto; }
.mediji button[aria-pressed="true"] svg { background: rgba(255, 255, 255, 0.22); }

/* ────────────────────────────────────────────────────────────
   40 · Karte

   Karte aizņem visu ekrānu; leģendas josla 368 px pa kreisi ir
   sakļaujama. Pēc arhitektūras lēmuma šeit vēlāk nāks MapLibre ar
   īstu pamatkarti, un šis slānis kļūs par tās konteineru — tāpēc
   pan/zoom loģika jau tagad ir atdalīta no izkārtojuma.
   ──────────────────────────────────────────────────────────── */

.karte-ekrans { position: absolute; inset: 0; overflow: hidden; }

.karte-ekrans__audekls {
  position: absolute;
  inset: 0;
  touch-action: none;
  cursor: grab;
}
.karte-ekrans__audekls:active { cursor: grabbing; }

.karte-ekrans__slanis {
  position: absolute;
  top: 0; left: 0;
  width: calc(var(--u) * 1920);
  height: calc(var(--u) * 1080);
  transform-origin: 0 0;
  will-change: transform;
}
.karte-ekrans__slanis img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

/* --- Hotspoti ---
   Novietoti procentos pret karti, tāpēc paliek vietā jebkurā
   tālummaiņā. CMS versijā tie būs īstas koordinātas. */
.hotspots { position: absolute; inset: 0; }

/* Šajā posmā karte ir dizainera zīmētais rastrs, kurā draudžu zīmes
   jau ir iedrukātas. Tāpēc hotspots ir caurspīdīgs pieskāriena laukums
   virs iedrukātās zīmes, nevis vēl viens marķieris — citādi katra zīme
   ekrānā parādītos divreiz.

   Kad pamatkarte kļūs par MapLibre, šie kļūs par īstiem GeoJSON
   punktiem un zīmi zīmēs slānis, nevis attēls. */
.hotspot {
  position: absolute;
  translate: -50% -50%;
  display: grid;
  place-items: center;
  width: calc(var(--u) * 64);
  height: calc(var(--u) * 64);
  border-radius: 50%;
  color: transparent;
  transition: box-shadow var(--t-hover) var(--likne-hover);
}
.hotspot:active,
.hotspot:focus-visible {
  box-shadow: 0 0 0 calc(var(--u) * 3) rgba(255, 255, 255, 0.9),
              0 0 calc(var(--u) * 20) rgba(255, 255, 255, 0.5);
}
.hotspot svg { display: none; }
.hotspot__nosaukums {
  position: absolute;
  width: 1px; height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}

/* --- Leģendas josla --- */
.legenda {
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: calc(var(--u) * 368);
  /* Augšā vieta slēdzim (68–112) — ceļš sākas 142, kā dizainā. */
  padding: calc(var(--u) * 138) calc(var(--u) * 30) calc(var(--u) * 30);
  background: linear-gradient(90deg,
              rgba(18, 18, 20, 0.94), rgba(18, 18, 20, 0.86));
  display: flex;
  flex-direction: column;
  z-index: 5;
  transition: translate var(--t-hover) var(--likne-hover);
}
.legenda[hidden] { display: flex !important; translate: -100% 0; }

.legenda__celins {
  font-size: var(--sv-josla);
  line-height: 1.2;
  color: var(--teksts-kluss);
  margin: 0 0 calc(var(--u) * 34);
}

.legenda__saraksts { margin: 0; padding: 0; list-style: none; }
.legenda__rinda {
  display: grid;
  /* Dizainā adata 35–76, teksts no 97 */
  grid-template-columns: calc(var(--u) * 53) 1fr;
  gap: calc(var(--u) * 14);
  align-items: center;
  margin-bottom: calc(var(--u) * 26);
  font-size: calc(var(--u) * 18);
  line-height: 1.25;
  color: var(--teksts-kluss);
}
.legenda__zime { display: grid; place-items: center; }
.legenda__zime svg { width: calc(var(--u) * 41); height: auto; }
.legenda__zime--linija svg { width: 100%; }

/* Leģendas slēdzis. Atvērts un aizvērts stāvoklis ir viena poga vienā
   vietā — burgers pārvēršas par X, nevis X dzīvo leģendas otrā malā.
   Dizainā ikona 29,68 45×45; pieskāriena laukums ap to 64×64. */
.legenda-slegs {
  position: absolute;
  left: calc(var(--u) * 19.5);
  top: calc(var(--u) * 58);
  display: grid;
  place-items: center;
  width: calc(var(--u) * 64);
  height: calc(var(--u) * 64);
  color: var(--teksts);
  z-index: 6;
  filter: drop-shadow(0 0 calc(var(--u) * 4) rgba(0, 0, 0, 0.6));
}
.legenda-slegs svg { grid-area: 1 / 1; height: auto; }
.legenda-slegs__atvert  { width: calc(var(--u) * 45); }
.legenda-slegs__aizvert { width: calc(var(--u) * 35); }
.legenda-slegs[aria-expanded="true"]  .legenda-slegs__atvert,
.legenda-slegs[aria-expanded="false"] .legenda-slegs__aizvert { visibility: hidden; }

/* „Vispārīgi materiāli” — dizainā 30,890 225×45. Nav daļa no
   leģendas satura, bet stāv tās apakšā kā līdzvērtīga poga. */
.visparigi {
  margin-top: auto;
  align-self: flex-start;
  padding: calc(var(--u) * 13) calc(var(--u) * 20);
  background: var(--tema-religija);
  font-size: calc(var(--u) * 21);
  font-weight: 500;
  line-height: 1;
}

/* Tālummaiņa — dizainā 1847,498 44×84: viena „tablete” no AI faila,
   virs tās divi caurspīdīgi pieskāriena laukumi (augša +, apakša −). */
.tuvinajums {
  position: absolute;
  right: calc(var(--u) * 29);
  top: 50%;
  translate: 0 -50%;
  display: grid;
  z-index: 4;
  color: var(--teksts);
  filter: drop-shadow(0 0 calc(var(--u) * 4) rgba(0, 0, 0, 0.6));
}
.tuvinajums__zime {
  grid-area: 1 / 1 / 3 / 2;
  width: calc(var(--u) * 44);
  height: auto;
  pointer-events: none;
}
.tuvinajums button {
  grid-column: 1;
  /* Laukums platāks par ikonu — pirksts nav 44 px precīzs. */
  width: calc(var(--u) * 64);
  height: calc(var(--u) * 42);
  margin-inline: calc(var(--u) * -10);
}
.tuvinajums button + button { grid-row: 2; }
.tuvinajums button:first-of-type { grid-row: 1; }
.tuvinajums button:active { background: rgba(255, 255, 255, 0.15); }

/* ────────────────────────────────────────────────────────────
   50 · Teksts + galerija

   Dizainā: panelis 30,190 1860×700 · teksts 238,244 509×558
            attēls 963,190 927×700 · anotācija 1060,780 730×72
   Anotācija ir obligāta — bez tās šis šablons nav pilnīgs.
   ──────────────────────────────────────────────────────────── */

.atverums {
  position: absolute;
  left: var(--mala);
  right: var(--mala);
  top: var(--sat-top);
  height: var(--sat-augstums);
  display: grid;
  grid-template-columns: calc(var(--u) * 933) 1fr;
  background: var(--panelis);
}

.atverums__teksts {
  position: relative;
  padding: calc(var(--u) * 54) calc(var(--u) * 216) calc(var(--u) * 54) calc(var(--u) * 208);
}
.atverums__teksts p {
  margin: 0 0 1.15em;
  font-size: var(--sv-teksts);
  line-height: 1.45;
  text-align: justify;
  hyphens: auto;
}

/* --- Galerija --- */
.galerija { position: relative; overflow: hidden; }

/* Sīktēlā drīkst nedaudz apgriezt — `cover` ar fokusa punktu.
   Pilnekrānā (skat. 60. šablonu) nekad. */
.galerija__att {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--fokuss, 50% 50%);
  display: block;
}

/* Anotācija guļ uz aptumšota slāņa attēla apakšā — vienmēr redzama. */
.galerija__anotacija {
  position: absolute;
  left: calc(var(--u) * 97);
  right: calc(var(--u) * 100);
  bottom: calc(var(--u) * 18);
  font-size: var(--sv-teksts);
  line-height: 1.35;
  text-align: justify;
}
/* Dizainā (PSD slānis „Melns transp virs foto”, 963,750 927×140) tas ir
   vienmērīgs 40 % melns laukums, ne gradients. Uz gaiša dokumenta
   gradients anotāciju nepadara lasāmu — tāpēc te ir plakans laukums ar
   mīkstu augšmalu. */
.galerija__aizsegs {
  position: absolute;
  inset: auto 0 0 0;
  height: calc(var(--u) * 140);
  background: linear-gradient(180deg,
              transparent, rgba(0, 0, 0, 0.62) 18%, rgba(0, 0, 0, 0.68));
  pointer-events: none;
}

/* Skaitītājs dizainā stāv zem paneļa (1059,910), tāpēc tas nevar
   dzīvot galerijā — tai ir `overflow: hidden`, lai apgrieztu attēlu. */
.galerija__skaititajs {
  position: absolute;
  left: calc(var(--u) * 1029);
  top: calc(var(--u) * 715);
  margin: 0;
  font-size: var(--sv-saraksts);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

/* ────────────────────────────────────────────────────────────
   60 · Pilnekrāna attēls

   Tavs noteikums: nekas nedrīkst nogriezties. Tāpēc `contain`,
   nevis `cover`. Vertikāls attēls kļūst šaurs un augsts — tā ir
   pareizi, nekas netiek zaudēts.
   ──────────────────────────────────────────────────────────── */

.pilnekrans { position: absolute; inset: 0; }
.pilnekrans__aizsegs {
  position: absolute; inset: 0;
  background: rgba(0, 0, 0, 0.38);
}

.pilnekrans__rams {
  position: absolute;
  left: calc(var(--u) * 64);
  top: calc(var(--u) * 113);
  width: calc(var(--u) * 1166);
  height: calc(var(--u) * 875);
  display: grid;
  place-items: center;
}
.pilnekrans__att {
  max-width: 100%;
  max-height: 100%;
  width: auto; height: auto;
  object-fit: contain;   /* nekad negriež */
  display: block;
}

.pilnekrans__panelis {
  position: absolute;
  left: calc(var(--u) * 1328);
  top: calc(var(--u) * 244);
  width: calc(var(--u) * 505);
}
.pilnekrans__panelis p {
  margin: 0 0 1em;
  font-size: var(--sv-teksts);
  line-height: 1.45;
  text-align: justify;
  hyphens: auto;
}
.pilnekrans__avots {
  font-size: var(--sv-mazs);
  text-align: right;
  color: var(--teksts-kluss);
}

/* ────────────────────────────────────────────────────────────
   70 · Laika līnija

   Dizainā gadi ir „coverflow”: aktīvais 150 px balts, kaimiņi
   sarūk un izgaist. Attēls pa kreisi, notikumu saraksts pa labi.
   ──────────────────────────────────────────────────────────── */

.linija {
  position: absolute;
  left: var(--mala);
  right: var(--mala);
  top: var(--sat-top);
  height: var(--sat-augstums);
  display: grid;
  grid-template-columns: calc(var(--u) * 933) 1fr;
  /* Atstarpe un paneļa fons kā sadaļā: attēls un notikumi ir divi
     atsevišķi bloki. Kopīgs fons zem abiem pārejā parādītos kā pilna
     platuma josla pirms attēla. */
  gap: var(--atstarpe);
}

.linija__attels { position: relative; overflow: hidden; }
.linija__attels img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

/* Gadu josla guļ pāri attēlam vertikālā vidū. Tā ir lente: visi gadi
   vienmēr ir rindā, un lente slīd tā, lai aktīvais stāv tieši centrā.
   Nobīdi (--gadi-x) aprēķina js/ekrani.js; izmēri un krāsas ir šeit.
   Mainot gadu, izmēri, krāsa un nobīde mainās vienā laikā ar vienu
   līkni — tāpēc aktīvais visu ceļu paliek centrā un nekas nepārlec. */
.linija__attels { --t-gads: 1100ms; --likne-gads: cubic-bezier(0.65, 0, 0.35, 1); }
.gadi {
  position: absolute;
  left: 0;
  top: 50%;
  translate: var(--gadi-x) -50%;
  display: flex;
  align-items: center;
  width: max-content;
  white-space: nowrap;
  /* Dizainā gadi stāv cieši: 1953 sākas 50, 1957 beidzas 931 — pieci
     gadi 930 px platā attēlā ar ~10 px atstarpi. */
  gap: calc(var(--u) * 10);
  transition: --gadi-x var(--t-gads) var(--likne-gads);
}
/* --gadi-x ir reģistrēts, lai to var animēt: no tā atkarīgs gan lentes
   novietojums, gan aptumšojuma josla zem tās (::before), kam jāstāv uz
   vietas, kamēr lente slīd. */
@property --gadi-x { syntax: "<length>"; inherits: true; initial-value: 0px; }

/* Aptumšojuma josla ir lentes daļa, nevis attēla: tad pārejā gadi un josla
   ir viens elements, ko var novākt pirms attēla ceļojuma (transitions.css).
   Tā kompensē lentes nobīdi un vienmēr klāj visu attēla platumu. */
.gadi::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: calc(-1 * var(--gadi-x));
  width: calc(var(--u) * 933);
  top: 50%;
  height: calc(var(--sat-augstums) * 0.4);
  translate: 0 -50%;
  background: linear-gradient(180deg,
              transparent, rgba(12, 14, 24, 0.95) 14%,
              rgba(12, 14, 24, 0.95) 86%, transparent);
  pointer-events: none;
}
.gads {
  font-weight: 500;
  line-height: 1;
  /* Apzināti BEZ tabular-nums: dizainā „1955” pie 150 px ir 259 px plats,
     jo „1” ir šaurs. Vienāda platuma cipari to izpletīs par 15 %, un
     malējie gadi vairs neietilpst attēlā. */
  transition: font-size var(--t-gads) var(--likne-gads),
              color     var(--t-gads) var(--likne-gads),
              opacity   var(--t-gads) var(--likne-gads);
}
/* Mērīšanas brīdī (js) un pirmajā zīmējumā pārejas nav. */
.gadi.bez-parejas, .gadi.bez-parejas .gads { transition: none; }

.gads[data-attalums="0"] { font-size: calc(var(--u) * 150); color: var(--teksts); }
.gads[data-attalums="1"] { font-size: calc(var(--u) * 100); color: var(--teksts-pasiv-1); }
.gads[data-attalums="2"] { font-size: calc(var(--u) * 67);  color: var(--teksts-pasiv-2); }
/* Tālākie gadi neietilptu — dizainā to nav. Tie paliek rindā, tikai
   neredzami: ja tos izslēgtu (display: none), rinda pārlektu. */
.gads[data-attalums="3"] {
  font-size: calc(var(--u) * 45);
  color: var(--teksts-pasiv-2);
  opacity: 0;
  pointer-events: none;
}

.linija__notikumi {
  position: relative;
  background: var(--panelis);
  padding: calc(var(--u) * 54) calc(var(--u) * 314) calc(var(--u) * 54) calc(var(--u) * 57);
}
.notikums { margin-bottom: calc(var(--u) * 30); }
.notikums__datums {
  margin: 0 0 calc(var(--u) * 4);
  font-size: var(--sv-teksts);
  font-weight: 500;
}
.notikums__teksts {
  margin: 0;
  font-size: var(--sv-teksts);
  line-height: 1.4;
  text-align: justify;
  hyphens: auto;
  color: var(--teksts-kluss);
}
.notikums .mediji {
  position: absolute;
  right: calc(var(--u) * 125);
  margin-top: calc(var(--u) * -46);
}

/* ────────────────────────────────────────────────────────────
   80 · Personu reģistrs

   Trīs kolonnas: ģimeņu saraksts · personas dati · attēls.
   Dizainā: saraksts 84,207 400 plats · dati 706,285 508 · attēls
   1273,190 617×464 ar anotāciju zem tā.
   ──────────────────────────────────────────────────────────── */

.registrs {
  position: absolute;
  left: var(--mala);
  right: var(--mala);
  top: var(--sat-top);
  height: var(--sat-augstums);
  background: var(--panelis);
  display: grid;
  grid-template-columns: calc(var(--u) * 624) calc(var(--u) * 619) 1fr;
}

.registrs__saraksts {
  position: relative;
  padding: calc(var(--u) * 17) calc(var(--u) * 54);
}
.registrs__saraksts ul { margin: 0; padding: 0; list-style: none; }

.gimene { margin-bottom: calc(var(--u) * 8); }
.gimene__nosaukums {
  display: block;
  width: 100%;
  text-align: left;
  font-size: var(--sv-saraksts);
  font-weight: 500;
  line-height: 1.25;
  color: var(--teksts);
  padding: calc(var(--u) * 6) 0;
}
.gimene ul { padding-left: calc(var(--u) * 26); }
.persona {
  display: block;
  width: 100%;
  text-align: left;
  font-size: var(--sv-saraksts);
  line-height: 1.25;
  color: var(--teksts-pasiv-2);
  padding: calc(var(--u) * 6) 0;
  transition: color var(--t-hover) var(--likne-hover);
}
.persona[aria-current="true"] { color: var(--teksts); font-weight: 500; }

.registrs__dati {
  position: relative;
  padding: calc(var(--u) * 95) calc(var(--u) * 59) calc(var(--u) * 54) calc(var(--u) * 82);
}
.registrs__amats {
  margin: 0 0 calc(var(--u) * 26);
  font-size: var(--sv-teksts);
  color: var(--teksts-kluss);
}
.registrs__lauks { margin: 0 0 calc(var(--u) * 18); font-size: var(--sv-teksts); line-height: 1.4; }
.registrs__lauks dt { color: var(--teksts-pasiv-2); }
.registrs__lauks dd { margin: 0; }
.registrs__biografija {
  margin: 0;
  font-size: var(--sv-teksts);
  line-height: 1.45;
  text-align: justify;
  hyphens: auto;
}
.registrs__dati .mediji {
  position: absolute;
  right: calc(var(--u) * 59);
  top: calc(var(--u) * 88);
}

.registrs__attels { position: relative; }
.registrs__attels img {
  width: 100%;
  height: calc(var(--u) * 464);
  object-fit: cover;
  object-position: var(--fokuss, 50% 30%);
  display: block;
}
.registrs__anotacija {
  padding: calc(var(--u) * 49) calc(var(--u) * 57) 0;
  font-size: var(--sv-teksts);
  line-height: 1.35;
}

/* ────────────────────────────────────────────────────────────
   90 · Vārdu saraksts virs kartes

   Karte paliek redzama aiz aptumšota slāņa, lai apmeklētājs
   neaizmirstu, kur ģeogrāfiski atrodas.
   ──────────────────────────────────────────────────────────── */

.parklajs { position: absolute; inset: 0; }
.parklajs__karte {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.parklajs__aizsegs {
  position: absolute; inset: 0;
  background: rgba(8, 10, 22, 0.75);
}

.vardi {
  position: absolute;
  left: calc(var(--u) * 364);
  top: calc(var(--u) * 196);
  width: calc(var(--u) * 1160);
  height: calc(var(--u) * 690);
  margin: 0; padding: 0;
  list-style: none;
}
.vardi li {
  display: grid;
  grid-template-columns: calc(var(--u) * 38) calc(var(--u) * 600) 1fr;
  align-items: center;
  /* Dizainā saraksta slānis ir 670 px augsts uz 12 vārdiem. */
  height: calc(var(--u) * 55.8);
  font-size: var(--sv-saraksts);
  line-height: 1;
}
/* Īsts aplis, nevis „•” glifs — tas dažādos fontos ir dažāda izmēra
   un vertikāli sēž citur. */
.vardi__punkts {
  align-self: center;
  width: calc(var(--u) * 13);
  height: calc(var(--u) * 13);
  border-radius: 50%;
  background: #8ec63f;
}
.vardi__vards  { color: var(--teksts); }
.vardi__vieta  { color: var(--teksts-kluss); }

/* ---- Mobilais -------------------------------------------------------- */
@media (max-width: 820px) {
  .atverums, .linija, .registrs {
    position: static;
    height: auto;
    grid-template-columns: 1fr;
    margin: calc(var(--u) * 16) var(--mala);
  }
  .atverums__teksts,
  .linija__notikumi { padding: calc(var(--u) * 20); }
  .registrs__saraksts, .registrs__dati { padding: calc(var(--u) * 20); }
  .registrs__dati .mediji, .notikums .mediji { position: static; margin: calc(var(--u) * 12) 0; }
  .linija__attels { height: calc(var(--u) * 200); }
  .gadi::before { width: 100vw; height: calc(var(--u) * 80); }
  .gads[data-attalums="0"] { font-size: calc(var(--u) * 60); }
  .gads[data-attalums="1"] { font-size: calc(var(--u) * 40); }
  .gads[data-attalums="2"] { font-size: calc(var(--u) * 28); }
  .gads[data-attalums="3"] { font-size: calc(var(--u) * 20); }

  .karte-ekrans, .pilnekrans, .parklajs { position: relative; height: 70svh; }
  /* Kartes augstums telefonā ir 70svh — leģendai jāritinās, citādi
     slīdnis un „Vispārīgi materiāli” paliek aiz apakšmalas. */
  .legenda {
    width: 78vw;
    padding-top: calc(var(--u) * 72);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .legenda-slegs { left: calc(var(--u) * 6); top: calc(var(--u) * 6); }
  .pilnekrans__rams { position: static; width: 100%; height: 50svh; }
  .pilnekrans__panelis { position: static; width: auto; padding: var(--mala); }
  .vardi { position: static; width: auto; height: auto; padding: var(--mala); }
  .vardi li { grid-template-columns: calc(var(--u) * 20) 1fr; height: auto; padding-block: calc(var(--u) * 6); }
  .vardi__vieta { grid-column: 2; color: var(--teksts-pasiv-2); font-size: calc(var(--u) * 15); }
}

/* ────────────────────────────────────────────────────────────
   40b · Karte uz MapLibre

   Aizstāj rastra pan/zoom. Dizainera zīmējums paliek kā slānis
   virs īstas ģeogrāfijas, ar caurspīdīguma slīdni leģendā.
   ──────────────────────────────────────────────────────────── */

.karte-gl {
  position: absolute;
  inset: 0;
  background: #3d4148;
}
.karte-gl canvas { outline: none; }

/* Ja stils vai flīzes nav pieejamas, karte nedrīkst klusi palikt melna. */
.karte-gl--kluda::after {
  content: "Karte nav pieejama";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-size: var(--sv-saraksts);
  color: var(--teksts-pasiv-2);
  background: repeating-linear-gradient(45deg,
              #2e3238 0 calc(var(--u) * 14),
              #33373e calc(var(--u) * 14) calc(var(--u) * 28));
}

/* MapLibre savas vadīklas neizmantojam — dizainam ir savas. */
.maplibregl-ctrl-bottom-left,
.maplibregl-ctrl-bottom-right,
.maplibregl-ctrl-top-right { display: none; }

.slidnis {
  display: grid;
  gap: calc(var(--u) * 8);
  margin-top: auto;
  margin-bottom: calc(var(--u) * 22);
  font-size: calc(var(--u) * 18);
  color: var(--teksts-kluss);
}
.slidnis input[type="range"] {
  width: 100%;
  height: calc(var(--u) * 30);
  accent-color: var(--tema-religija);
}

/* Slīdnis pārņem `margin-top: auto`, tāpēc pogai tas vairs nav vajadzīgs. */
.legenda .slidnis + .visparigi { margin-top: 0; }

/* Kartes punkti kā HTML marķieri — tie pašā Barlow fontā, kas pārējā
   saskarnē, un bez PBF glifu konveijera. */
.karte-punkts {
  /* Elements ir adatas izmērā — MapLibre `bottom` enkurs tad liek
     smaili uz koordinātas. Nosaukums karājas zem tās.
     `position` šeit NEDRĪKST likt: MapLibre marķierim tas ir absolute,
     un relative to padara par visa platuma bloku — punkti aizslīd. */
  display: block;
  width: max-content;
  color: var(--teksts);
}
.karte-punkts__zime {
  display: block;
  width: calc(var(--u) * 41);
  height: auto;
  transform-origin: 50% 100%;
  transition: scale var(--t-hover) var(--likne-hover);
}
.karte-punkts:active .karte-punkts__zime { scale: 1.2; }

.karte-punkts__nosaukums {
  position: absolute;
  top: 100%;
  left: 50%;
  translate: -50% calc(var(--u) * 2);
  font-size: calc(var(--u) * 19);
  font-weight: 500;
  white-space: nowrap;
  text-shadow: 0 0 calc(var(--u) * 6) #000, 0 0 calc(var(--u) * 3) #000;
}

/* ────────────────────────────────────────────────────────────
   Meklēšana

   Indekss ir statisks (Pagefind), tāpēc meklēšana strādā arī bez
   tīkla. Kioskā tā ir otrs ceļš pie satura — blakus izvēlnei.
   ──────────────────────────────────────────────────────────── */

.meklet {
  position: absolute;
  left: var(--mala);
  right: var(--mala);
  top: var(--sat-top);
  height: var(--sat-augstums);
  padding: calc(var(--u) * 54) calc(var(--u) * 82);
  background: var(--panelis);
  /* Lauks pāri visam platumam; zem tā rezultāti pa kreisi un
     tastatūra pa labi — pirksts un acis neaizsedz viens otru. */
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto minmax(0, 1fr);
  column-gap: calc(var(--u) * 60);
}
.meklet__lauks { grid-column: 1 / -1; }
.meklet__pamacība { grid-column: 1; }
.meklet__rezultati { grid-column: 1; grid-row: 3; }

.meklet__lauks input {
  width: 100%;
  padding: calc(var(--u) * 16) calc(var(--u) * 20);
  border: 0;
  border-bottom: calc(var(--u) * 2) solid rgba(255, 255, 255, 0.4);
  background: rgba(255, 255, 255, 0.08);
  font: inherit;
  font-size: var(--sv-virsraksts);
  color: var(--teksts);
}
.meklet__lauks input::placeholder { color: var(--teksts-pasiv-3); }
.meklet__lauks input:focus { outline: none; border-bottom-color: #fff; }

.meklet__pamacība {
  margin: calc(var(--u) * 16) 0 calc(var(--u) * 8);
  font-size: var(--sv-teksts);
  color: var(--teksts-pasiv-2);
}

.meklet__rezultati {
  margin: 0; padding: 0;
  list-style: none;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
}
.meklet__rezultati::-webkit-scrollbar { display: none; }

.meklet__rezultats {
  display: grid;
  gap: calc(var(--u) * 4);
  padding: calc(var(--u) * 14) 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.meklet__virsraksts { font-size: var(--sv-saraksts); font-weight: 500; }
.meklet__fragments {
  font-size: var(--sv-teksts);
  line-height: 1.35;
  color: var(--teksts-pasiv-1);
}

/* Ekrāna tastatūra — taustiņi 72×64, kā pirkstam uz 1920 ekrāna */
.tastatura {
  grid-column: 2;
  grid-row: 2 / 4;
  align-self: start;
  display: grid;
  gap: calc(var(--u) * 8);
  margin-top: calc(var(--u) * 24);
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;          /* bez dubultpieskāriena tālummaiņas */
}
.tastatura__rinda {
  display: flex;
  justify-content: center;
  gap: calc(var(--u) * 8);
}
.tastatura__taustins {
  min-width: calc(var(--u) * 72);
  height: calc(var(--u) * 64);
  padding-inline: calc(var(--u) * 14);
  background: rgba(255, 255, 255, 0.1);
  border: calc(var(--u) * 1) solid rgba(255, 255, 255, 0.18);
  color: var(--teksts);
  font: inherit;
  font-size: calc(var(--u) * 28);
  line-height: 1;
  transition: background var(--t-hover) var(--likne-hover);
}
.tastatura__taustins:active { background: rgba(255, 255, 255, 0.32); }
.tastatura__taustins--plats { min-width: calc(var(--u) * 152); font-size: calc(var(--u) * 22); }
.tastatura__taustins--dzest { font-size: calc(var(--u) * 34); }
.tastatura__taustins--atstarpe { min-width: calc(var(--u) * 480); font-size: calc(var(--u) * 22); }
@media (hover: hover) {
  .tastatura__taustins:hover { background: rgba(255, 255, 255, 0.18); }
}

@media (max-width: 820px) {
  .meklet {
    position: static;
    height: auto;
    display: flex;
    flex-direction: column;
    margin: calc(var(--u) * 16) var(--mala);
    padding: calc(var(--u) * 20);
  }
  /* Telefonam ir sava tastatūra. */
  .tastatura { display: none; }
}

/* Iedziļināšanās izvēlnē — dizainā 36-REP-10-Menju-1/2/3 */
.punkts__talak {
  margin-left: auto;
  padding-left: calc(var(--u) * 12);
  opacity: 0.7;
  font-size: 1.1em;
}
.punkts--atpakal {
  color: var(--teksts);
  gap: calc(var(--u) * 14);
  margin-bottom: calc(var(--u) * 10);
}
.punkts__bulta {
  display: grid;
  place-items: center;
  width: calc(var(--u) * 44);
  height: calc(var(--u) * 44);
  margin-left: calc(var(--u) * -52);
  background: rgba(255, 255, 255, 0.14);
}
/* Dizainā „<” ir 12×15 — AI ikona ir tā pati, tikai vektorā. */
.punkts__bulta svg { width: calc(var(--u) * 12); height: auto; fill: currentColor; }

/* Saraksts maina saturu, nevis ekrānu: vecie punkti vispirms visi lēni
   izgaist (ar tikko jūtamu vertikālu dreifu — dziļāk jaunie nāk no
   apakšas, atpakaļ no augšas; tikai pa Y, kā lapu pārejās), tad jaunie atklājas pa vienam.
   `AIZIET_MS` js/izvelne-koks.js = aiziešanas ilgums + pēdējā aizkave. Klases liek js/izvelne-koks.js. Lapas ielādē
   animācijas nav — tur ienākšanu dara lapas pāreja. */
.sadala__saraksts ul { --dy: 1; }
.sadala__saraksts ul[data-virziens="augsup"] { --dy: -1; }
.sadala__saraksts ul.aiziet li { animation: punkts-aiziet 300ms var(--likne-aiziet) both; }
.sadala__saraksts ul.maina  li { animation: punkts-ienak 640ms var(--likne-ienak) both; }
.sadala__saraksts ul.aiziet li:nth-child(2) { animation-delay: 20ms; }
.sadala__saraksts ul.aiziet li:nth-child(3) { animation-delay: 40ms; }
.sadala__saraksts ul.aiziet li:nth-child(4) { animation-delay: 60ms; }
.sadala__saraksts ul.aiziet li:nth-child(n+5) { animation-delay: 80ms; }
.sadala__saraksts ul.maina li:nth-child(2) { animation-delay: 60ms; }
.sadala__saraksts ul.maina li:nth-child(3) { animation-delay: 120ms; }
.sadala__saraksts ul.maina li:nth-child(4) { animation-delay: 180ms; }
.sadala__saraksts ul.maina li:nth-child(5) { animation-delay: 240ms; }
.sadala__saraksts ul.maina li:nth-child(n+6) { animation-delay: 300ms; }
@keyframes punkts-ienak {
  from { opacity: 0; transform: translateY(calc(var(--dy) * var(--u) * 10)); }
}
@keyframes punkts-aiziet {
  to   { opacity: 0; transform: translateY(calc(var(--dy) * var(--u) * -5)); }
}

/* ────────────────────────────────────────────────────────────
   40c · Skaitļu zīmes kartē (36-REP-20)

   Katrā pagastā aplis ar deportēto skaitu. Skaitlis nāk no datiem,
   nevis no attēla — pievienojot muzejam personu, cipars mainās pats.
   ──────────────────────────────────────────────────────────── */

.karte-skaitlis {
  display: grid;
  justify-items: center;
  gap: calc(var(--u) * 3);
  color: var(--teksts);
}
.karte-skaitlis__cipars {
  display: grid;
  place-items: center;
  min-width: calc(var(--u) * 38);
  height: calc(var(--u) * 38);
  padding-inline: calc(var(--u) * 6);
  border-radius: calc(var(--u) * 19);
  background: #0d0d0d;
  box-shadow: 0 0 0 calc(var(--u) * 2) rgba(255, 255, 255, 0.35);
  font-size: calc(var(--u) * 19);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  transition: scale var(--t-hover) var(--likne-hover);
}
.karte-skaitlis:active .karte-skaitlis__cipars { scale: 1.2; }
.karte-skaitlis__nosaukums {
  font-size: calc(var(--u) * 15);
  white-space: nowrap;
  text-shadow: 0 0 calc(var(--u) * 6) #000, 0 0 calc(var(--u) * 3) #000;
}

/* ────────────────────────────────────────────────────────────
   40d · Nometinājuma vietas ar slāņu slēdžiem (36-REP-50)
   ──────────────────────────────────────────────────────────── */

.karte-vieta {
  display: flex;
  align-items: center;
  gap: calc(var(--u) * 7);
  color: var(--teksts);
}
.karte-vieta__zime {
  width: calc(var(--u) * 16);
  height: calc(var(--u) * 16);
  border-radius: 50%;
  box-shadow: 0 0 0 calc(var(--u) * 2) rgba(0, 0, 0, 0.6);
  flex: none;
  transition: scale var(--t-hover) var(--likne-hover);
}
.karte-vieta:active .karte-vieta__zime { scale: 1.5; }
/* Zīmējumā uzraksti jau ir (karte-gl.js) — mūsējie paliek tikai lasītājam. */
.karte-gl--zimejums .karte-vieta__nosaukums {
  position: absolute !important;
  width: 1px; height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}
.karte-vieta__nosaukums {
  font-size: calc(var(--u) * 17);
  font-weight: 500;
  white-space: nowrap;
  text-shadow: 0 0 calc(var(--u) * 6) #000, 0 0 calc(var(--u) * 3) #000;
}

/* Slēdzis leģendā */
.legenda__rinda--sledzis { align-items: center; }
.legenda__sledzis { display: grid; gap: calc(var(--u) * 8); }
.sledzis { display: inline-block; cursor: pointer; }
.sledzis input { position: absolute; opacity: 0; width: 0; height: 0; }
.sledzis__celins {
  display: block;
  width: calc(var(--u) * 54);
  height: calc(var(--u) * 26);
  border-radius: calc(var(--u) * 13);
  background: rgba(255, 255, 255, 0.22);
  transition: background var(--t-hover) var(--likne-hover);
  position: relative;
}
.sledzis__celins::after {
  content: "";
  position: absolute;
  top: calc(var(--u) * 3);
  left: calc(var(--u) * 3);
  width: calc(var(--u) * 20);
  height: calc(var(--u) * 20);
  border-radius: 50%;
  background: #fff;
  transition: translate var(--t-hover) var(--likne-hover);
}
.sledzis input:checked + .sledzis__celins { background: var(--tema-represijas); }
.sledzis input:checked + .sledzis__celins::after { translate: calc(var(--u) * 28) 0; }
.sledzis input:focus-visible + .sledzis__celins {
  outline: calc(var(--u) * 3) solid #fff; outline-offset: calc(var(--u) * 3);
}

/* Šaurā leģenda — kartēm, kur paskaidrojums ir viens */
.legenda--saura { width: calc(var(--u) * 335); }

/* ---- Apakšas detaļu panelis (36-REP-50-1d) ---- */
.kartes-detalas {
  position: absolute;
  inset: auto 0 0 0;
  z-index: 6;
  padding: calc(var(--u) * 40) calc(var(--u) * 90) calc(var(--u) * 46)
           calc(var(--u) * 706);
  background: linear-gradient(180deg, rgba(8, 10, 22, 0.55), rgba(8, 10, 22, 0.9));
  backdrop-filter: blur(calc(var(--u) * 4));
  animation: detalas-ienak 640ms var(--likne-ienak) both;
}
@keyframes detalas-ienak {
  from { opacity: 0; transform: translateY(calc(var(--u) * 12)); }
}
.kartes-detalas__nosaukums {
  margin: 0 0 calc(var(--u) * 20);
  font-size: var(--sv-saraksts);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.035em;
}
.kartes-detalas__teksts {
  margin: 0;
  max-width: calc(var(--u) * 508);
  font-size: var(--sv-teksts);
  line-height: 1.45;
  text-align: justify;
  hyphens: auto;
}
.kartes-detalas__aizvert {
  position: absolute;
  right: calc(var(--u) * 30);
  top: calc(var(--u) * 34);
  display: grid;
  place-items: center;
  width: calc(var(--u) * 56);
  height: calc(var(--u) * 56);
  color: var(--teksts);
}
.kartes-detalas__aizvert svg { width: calc(var(--u) * 28); height: auto; }
.kartes-detalas__poga {
  position: absolute;
  right: calc(var(--u) * 118);
  top: calc(var(--u) * 34);
  padding: calc(var(--u) * 10) calc(var(--u) * 18);
  background: rgba(255, 255, 255, 0.18);
  font-size: calc(var(--u) * 19);
  font-weight: 500;
}

@media (max-width: 820px) {
  .legenda--saura { width: 78vw; }
  .kartes-detalas { padding: calc(var(--u) * 46) var(--mala) calc(var(--u) * 20); }
  .kartes-detalas__poga { position: static; display: inline-block; margin-top: calc(var(--u) * 14); }
}

/* Brīdinājums pie slāņa, kas vēl nav pozicionāli uzticams. */
.slidnis__brid {
  display: block;
  font-size: calc(var(--u) * 15);
  color: #e8a33d;
}

/* Tēmas kartīte, kuras saturs vēl top. */
.karte--gaida { opacity: 0.5; cursor: default; }
.karte--gaida .karte__nosaukums::after {
  content: "drīzumā";
  display: block;
  margin-top: calc(var(--u) * 8);
  font-size: var(--sv-teksts);
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0;
  opacity: 0.8;
}

/* Laika līnijas fona attēli — pa vienam katram gadam. Visi paliek DOM;
   aktīvais uzgaist VIRS iepriekšējā (z-index), un iepriekšējais pazūd
   tikai tad, kad jaunais jau ir pilnīgi redzams — tā vidū nav brīža,
   kad abi ir puscaurspīdīgi un panelis satumst. */
.linija__fons {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;
  transition: opacity 0s 1000ms;
}
.linija__fons--aktivs {
  opacity: 1;
  z-index: 1;
  transition: opacity 1000ms var(--likne-aiziet);
}
.gadi { z-index: 3; }

/* Mainot gadu, notikumi lēni atklājas ar tikko jūtamu pacēlumu, pa vienam. */
.linija__notikumi--maina .notikums { animation: notikums-ienak 680ms var(--likne-ienak) both; }
.linija__notikumi--maina .notikums:nth-child(2) { animation-delay: 90ms; }
.linija__notikumi--maina .notikums:nth-child(3) { animation-delay: 180ms; }
.linija__notikumi--maina .notikums:nth-child(n+4) { animation-delay: 270ms; }
@keyframes notikums-ienak {
  from { opacity: 0; transform: translateY(calc(var(--u) * 8)); }
}
@media (hover: hover) {
  .gads:hover { color: var(--teksts); }
}

.notikums__saite {
  display: inline-block;
  margin-top: calc(var(--u) * 6);
  font-size: var(--sv-teksts);
  color: var(--teksts);
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.notikums--tuksais .notikums__teksts { color: var(--teksts-pasiv-2); }

/* Dizainera maketos gadi ir iededzināti fona attēlā — tie tur ir secīgi
   (1940 1941 1942), bet īstie dati rāda tikai tos gadus, kuriem ir
   saturs. Tāpēc zem gadu joslas ir aptumšojums, kas iededzinātos
   nosedz.

   Pareizais risinājums ir fona attēli BEZ gadiem no dizainera; līdz tam
   šis ir godīgākais, ko var izdarīt ar esošajiem failiem.
   Josla pati ir `.gadi::before` (gadu lentes sadaļā augstāk). */

/* Sadaļa, kurai ievadteksta vēl nav. Klusa un godīga rindiņa ir labāka
   nekā tukšs panelis, ko apmeklētājs nolasa kā kļūdu. */
.sadala__gaida {
  margin: 0;
  font-size: var(--sv-teksts);
  line-height: 1.45;
  color: var(--teksts-pasiv-2);
  font-style: italic;
}

/* ────────────────────────────────────────────────────────────
   Vietturi — sadaļas, kurām dizaina un satura vēl nav
   (tools/vietturi.py). Lapa ir īstajā ekrāna veidā, lai struktūru
   var izstaigāt, bet tā godīgi saka, ka materiāli vēl top.
   ──────────────────────────────────────────────────────────── */

.atverums--vietturis .atverums__teksts {
  display: flex;
  flex-direction: column;
  gap: calc(var(--u) * 22);
}
.vietturis__vecaks {
  margin: 0 0 calc(var(--u) * -14);
  font-size: var(--sv-mazs);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--teksts-pasiv-2);
}
.vietturis__virsraksts {
  margin: 0;
  font-size: var(--sv-virsraksts);
  font-weight: 500;
  line-height: 1.15;
}
.atverums__teksts .vietturis__plans,
.vietturis__plans {
  margin: 0;
  padding-left: calc(var(--u) * 18);
  border-left: calc(var(--u) * 3) solid rgba(255, 255, 255, 0.25);
  font-size: var(--sv-teksts);
  line-height: 1.45;
  text-align: left;
  color: var(--teksts-kluss);
}
.vietturis__plans span {
  display: block;
  margin-bottom: calc(var(--u) * 6);
  font-size: var(--sv-mazs);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--teksts-pasiv-2);
}


.legenda__vietturis { display: grid; gap: calc(var(--u) * 18); }

/* Apakšsadaļas kartes leģendā — pa tām var iet dziļāk arī tad, kad
   kartes punktu vēl nav. */
.legenda__saites {
  margin: calc(var(--u) * 26) 0 0;
  padding: 0;
  list-style: none;
  overflow-y: auto;
  overscroll-behavior: contain;
  min-height: 0;
}
.legenda__saite {
  display: block;
  padding: calc(var(--u) * 9) 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  font-size: calc(var(--u) * 20);
  color: var(--teksts);
}
.legenda__saite::after { content: " ›"; color: var(--teksts-pasiv-2); }
.legenda__saite:active { color: var(--teksts-pasiv-1); }


/* Paraugsatura atzīme — lai klients neuztver vietturi par īsto tekstu. */
.vietturis__zime {
  display: inline-block;
  align-self: flex-start;
  margin: 0;
  padding: calc(var(--u) * 4) calc(var(--u) * 10);
  border: 1px dashed rgba(255, 255, 255, 0.35);
  font-size: var(--sv-mazs);
  letter-spacing: 0.04em;
  color: var(--teksts-pasiv-1);
}
.atverums--vietturis .atverums__teksts p:not([class]) {
  margin: 0;
}
.legenda__vietturis .vietturis__plans { font-size: calc(var(--u) * 18); }
.sadala__ievads .vietturis__zime { margin-bottom: calc(var(--u) * 18); }
.sadala__ievads .vietturis__plans { margin-top: calc(var(--u) * 8); }

/* Neitrāls kartes punkts (vietturu kartes): tēmas vai kategorijas krāsa. */
.karte-punkts__vieta,
.legenda__vieta {
  display: block;
  width: calc(var(--u) * 26);
  height: calc(var(--u) * 26);
  border-radius: 50%;
  background: var(--krasa, var(--tema, #888));
  box-shadow: 0 0 0 calc(var(--u) * 3) #fff, 0 calc(var(--u) * 2) calc(var(--u) * 8) rgba(0, 0, 0, 0.5);
}
.legenda__vieta { width: calc(var(--u) * 22); height: calc(var(--u) * 22); }
.karte-punkts:active .karte-punkts__vieta { scale: 1.2; }
