/* Copyright (c) 2026 Rajesh Krishnasing. Alle rechten voorbehouden. */
/* PrimaPress, module handleiding: de indeling van Support > Handleiding, Wat is er nieuw en de printversie (klassen
 * m-handleiding-...). PrimaPress 2.0: de handleiding in de app volgt het designsysteem (docs/DESIGNSYSTEEM.md 8.4):
 * het artikel en de inhoud zijn een kaart, Wanneer doe je dit is een melding info, de koppen zijn de koppen van de
 * app. Geen kleurcode en geen getal voor een rand of een letter; alleen tokens van de laag betekenis. De losse
 * handleidingpagina (_STIJL in diensten.py) is een document en hoort hier niet bij. */

/* ---------------------------------------------------------------- Handleiding: inhoud links, hoofdstuk rechts */

.m-handleiding-vak {
  display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.25fr); gap: var(--pp-r-5); align-items: start;
}
@media (max-width: 1080px) {
  .m-handleiding-vak { grid-template-columns: minmax(0, 1fr); }
  /* onder elkaar: het hoofdstuk schuift met de pagina mee (geen tweede schuifbalk in het hoofdstuk) */
  .m-handleiding-lezen { position: static; }
  .m-handleiding-artikel { max-height: none; overflow: visible; }
}
.m-handleiding-inhoud .blokkop { margin-top: 0; }
.m-handleiding-inhoud .zoekveld { max-width: none; flex-basis: 100%; }
.m-handleiding-inhoud .zoekvak { max-height: calc(100vh - var(--pp-balk) - 300px); min-height: 240px; }
.zoektabel tr.m-handleiding-tegelbegin:not(:first-child) td { padding-top: var(--pp-r-4); }
.m-handleiding-fragment { margin-top: var(--pp-r-1); }

.m-handleiding-lezen { min-width: 0; position: sticky; top: calc(var(--pp-balk) + var(--pp-r-3)); }
.m-handleiding-artikel {
  margin: 0; outline: none; min-height: 200px; max-height: calc(100vh - var(--pp-balk) - 200px); overflow: auto;
}
.m-handleiding-artikel:focus-visible { box-shadow: var(--pp-ring); }
.m-handleiding-hoofdstuk p { max-width: 720px; }
/* het gebied boven de titel, zoals het soort boven de titel van een venster */
.m-handleiding-tegel { margin: 0 0 var(--pp-r-1); text-transform: uppercase; letter-spacing: .06em; font-weight: var(--pp-gewicht-half); }
.m-handleiding-titel { margin: 0 0 var(--pp-r-3); }
.m-handleiding-stappen { margin: 0 0 var(--pp-r-2); padding-left: var(--pp-r-6); max-width: 700px; }
.m-handleiding-stappen li { margin: var(--pp-r-1) 0; }
/* 2.0: Wanneer doe je dit (de werkinstructie), voor Zo doe je het: een melding info met de klok */
.m-handleiding-wanneer { margin: var(--pp-r-3) 0 var(--pp-r-2); max-width: 700px; }
.m-handleiding-wanneer .blokkop { margin-top: 0; }
.m-handleiding-wanneerlijst { margin: 0; padding-left: var(--pp-r-5); }
.m-handleiding-wanneerlijst li { margin: var(--pp-r-1) 0; }
.m-handleiding-herzien { margin: var(--pp-r-1) 0 0; }
/* een gevonden woord: het vlak van let op met de tekst van let op (6,3:1 licht, ook in donker en in een gekozen regel) */
mark.m-handleiding-treffer { background: var(--pp-let-vlak); color: var(--pp-let-tekst); padding: 0 1px; }
.zoektabel tr.gekozen mark.m-handleiding-treffer { background: var(--pp-let-vlak); color: var(--pp-let-tekst); }
.m-handleiding-bladeren { display: flex; justify-content: space-between; gap: var(--pp-r-2); margin-top: var(--pp-r-2); }

/* ---------------------------------------------------------------- Het deel Taken (2.0, les 4 en 7 uit de knop) */

/* Je bent klaar als je dit ziet: een melding tip met het plaatje eronder */
.m-handleiding-klaar { margin: var(--pp-r-3) 0; max-width: 720px; }
.m-handleiding-klaar .m-handleiding-plaatje { margin-top: var(--pp-r-2); }
/* de klikken: het rode bolletje met het cijfer, de letter of het cijfer van de stap, de tekst en het plaatje */
.m-handleiding-klikken { list-style: none; margin: 0 0 var(--pp-r-4); padding: 0; max-width: 720px; }
.m-handleiding-klik { margin: 0 0 var(--pp-r-5); }
.m-handleiding-kliktekst { display: flex; align-items: flex-start; gap: var(--pp-r-2); }
.m-handleiding-kliktekst p { margin: 0; min-width: 0; }
.m-handleiding-klik .m-handleiding-plaatje { margin: var(--pp-r-2) 0 0 var(--pp-r-8); }
.m-handleiding-bol {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  min-width: var(--pp-r-5); height: var(--pp-r-5); padding: 0 var(--pp-r-1);
  border-radius: var(--pp-straal-rond); background: var(--pp-accent); color: var(--pp-op-accent);
  font: var(--pp-gewicht-vet) var(--pp-maat-xs)/var(--pp-regel) var(--pp-letter); box-shadow: var(--pp-schaduw-1);
}
.m-handleiding-stapcode {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  min-width: var(--pp-r-5); height: var(--pp-r-5); padding: 0 var(--pp-r-1);
  border-radius: var(--pp-straal-s); background: var(--pp-navy); color: var(--pp-op-navy);
  font: var(--pp-gewicht-vet) var(--pp-maat-xs)/var(--pp-regel) var(--pp-letter-mono);
}
/* Wat als...: een vraag per blok */
.m-handleiding-vraag { margin: 0 0 var(--pp-r-5); max-width: 720px; }
.m-handleiding-vraag p { margin: 0 0 var(--pp-r-2); }
.m-handleiding-vraagkop { margin: 0 0 var(--pp-r-2); }

/* Een plaatje: het nagebouwde stukje scherm op het werkblad, met het bijschrift eronder */
.m-handleiding-plaatje { margin: 0; break-inside: avoid; }
.m-handleiding-scene {
  position: relative; display: inline-block; max-width: 100%; overflow: hidden;
  padding: var(--pp-r-3) var(--pp-r-4); background: var(--pp-canvas); border-radius: var(--pp-kaart-straal);
  box-shadow: var(--pp-schaduw-1); user-select: none;
}
.m-handleiding-bijschrift { margin: var(--pp-r-1) 0 0; max-width: 560px; }
/* waar je klikt: de ring in het rood van het merk en het bolletje rechtsboven */
.m-handleiding-wijs { position: relative; display: inline-flex; }
.m-handleiding-wijs-blok { display: flex; }
.m-handleiding-wijs > .m-handleiding-bol { position: absolute; top: calc(var(--pp-r-2) * -1); right: calc(var(--pp-r-2) * -1); }
.m-handleiding-doel { box-shadow: var(--pp-ring-accent); }
.m-handleiding-meldingvak, .m-handleiding-feiten, .m-handleiding-toetsen, .m-handleiding-map { position: relative; }
.m-handleiding-meldingvak > .m-handleiding-bol, .m-handleiding-feiten > .m-handleiding-bol,
.m-handleiding-map > .m-handleiding-bol { position: absolute; top: calc(var(--pp-r-2) * -1); right: calc(var(--pp-r-2) * -1); }
.m-handleiding-meldingvak > div { margin: 0; }

/* de navigatie in het klein: drie gebieden met de navy van de schil, het gekozen gebied met zijn scherm eronder */
.m-handleiding-rail {
  display: grid; gap: var(--pp-r-1); min-width: 220px; padding: var(--pp-r-2);
  background: var(--pp-schil); color: var(--pp-schil-tekst-2); border-radius: var(--pp-straal-m);
}
.m-handleiding-railitem {
  display: flex; align-items: center; gap: var(--pp-r-2); padding: var(--pp-r-1) var(--pp-r-2);
  border-radius: var(--pp-straal-s); font-weight: var(--pp-gewicht-half);
}
.m-handleiding-railitem.aan { background: var(--pp-schil-2); color: var(--pp-schil-tekst); }
.m-handleiding-railnaam { flex: 1; }
.m-handleiding-railitem kbd { background: var(--pp-schil-toets-vlak); border-color: var(--pp-schil-toets-rand); color: var(--pp-schil-tekst-2); }
.m-handleiding-railitem.aan kbd { color: var(--pp-schil-tekst); border-color: var(--pp-schil-toets-rand-aan); }
.m-handleiding-railsub { padding: var(--pp-r-1) var(--pp-r-2) var(--pp-r-1) var(--pp-r-8); }
.m-handleiding-railsubitem {
  display: block; padding: var(--pp-r-1) var(--pp-r-2); border-radius: var(--pp-straal-s);
  background: var(--pp-schil-hover); color: var(--pp-schil-tekst);
}
/* de knoppenrij in het klein: links de knoppen van het venster, rechts ESC en ENTER */
.m-handleiding-knoppenrij { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--pp-r-2) var(--pp-r-6); }
.m-handleiding-knoppen-links, .m-handleiding-knoppen-rechts { display: flex; flex-wrap: wrap; gap: var(--pp-r-2); }
.m-handleiding-toetsen { display: inline-flex; align-items: center; gap: var(--pp-r-2); }
.m-handleiding-veld { min-width: 260px; }
.m-handleiding-veld select, .m-handleiding-veld input { width: 100%; }
/* een venster in het klein, zoals Ook in Prindustry */
.m-handleiding-venster { margin: 0; min-width: 280px; padding: 0; overflow: hidden; }
.m-handleiding-vkop { padding: var(--pp-r-2) var(--pp-r-3); background: var(--pp-vlak-2); }
.m-handleiding-vregels { list-style: none; margin: 0; padding: var(--pp-r-2) var(--pp-r-3); display: grid; gap: var(--pp-r-2); }
.m-handleiding-vsub { padding-left: var(--pp-r-6); }
.m-handleiding-vvoet { display: flex; justify-content: flex-end; padding: var(--pp-r-2) var(--pp-r-3); background: var(--pp-vlak-2); }
/* de stappen van het werk: een rij die afbreekt; klaar met een vinkje in de kleur van goed, nu met de ring van het merk */
.m-handleiding-stapjes {
  list-style: none; margin: 0; padding: 0; display: grid; gap: var(--pp-r-2);
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); min-width: 0; max-width: 560px;
}
.m-handleiding-stapjes li {
  display: flex; align-items: center; gap: var(--pp-r-2); padding: var(--pp-r-1) var(--pp-r-2);
  background: var(--pp-vlak); border-radius: var(--pp-straal-s); color: var(--pp-tekst-2);
}
.m-handleiding-stapjes li.m-handleiding-stap-klaar { color: var(--pp-ok-tekst); }
.m-handleiding-stapjes li.m-handleiding-stap-nu { color: var(--pp-tekst); font-weight: var(--pp-gewicht-half); box-shadow: var(--pp-ring-accent); }
.m-handleiding-tabrij { display: flex; flex-wrap: wrap; gap: var(--pp-r-1); }
.m-handleiding-tabel { min-width: 280px; max-width: 100%; }
.m-handleiding-tabel td .m-handleiding-bol { margin-left: var(--pp-r-2); }
.m-handleiding-map { min-width: 240px; }
.m-handleiding-mapkop { display: flex; align-items: center; gap: var(--pp-r-2); margin-bottom: var(--pp-r-1); }
.m-handleiding-map ul { list-style: none; margin: 0; padding: 0 0 0 var(--pp-r-5); display: grid; gap: var(--pp-r-1); }
.m-handleiding-map li { display: flex; align-items: center; gap: var(--pp-r-2); }

@media (max-width: 760px) {
  .m-handleiding-klik .m-handleiding-plaatje { margin-left: 0; }
  .m-handleiding-scene { display: block; padding: var(--pp-r-3); }
  .m-handleiding-rail, .m-handleiding-veld, .m-handleiding-venster, .m-handleiding-tabel, .m-handleiding-map { min-width: 0; }
  .m-handleiding-stapjes { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); }
}

/* ---------------------------------------------------------------- Wat is er nieuw */

.zoektabel tr.m-handleiding-nieuwrij td:first-child { font-weight: var(--pp-gewicht-half); }
.m-handleiding-beheer { margin-top: var(--pp-r-1); }

/* ---------------------------------------------------------------- Printversie */

.m-handleiding-print { max-width: 820px; }
.m-handleiding-printkop { margin-bottom: var(--pp-r-2); }
.m-handleiding-printtitel { margin: 0 0 var(--pp-r-1); }
.m-handleiding-printsub { font-weight: var(--pp-gewicht-half); color: var(--pp-tekst); margin: 0 0 var(--pp-r-1); }
.m-handleiding-toc { margin: var(--pp-r-3) 0 var(--pp-r-2); }
.m-handleiding-toc .blokkop { margin-top: 0; }
.m-handleiding-toc ul { list-style: none; margin: 0; padding: 0; }
.m-handleiding-toc-tegels > li { margin: var(--pp-r-2) 0; }
.m-handleiding-toc-tegels > li > ul { padding-left: var(--pp-r-4); }
.m-handleiding-toc .linkknop { padding: var(--pp-r-1) 0; }
.m-handleiding-tegelkop { margin: var(--pp-r-6) 0 var(--pp-r-2); padding-bottom: var(--pp-r-1); }
.m-handleiding-print .m-handleiding-hoofdstuk {
  outline: none; margin-bottom: var(--pp-r-3);
  /* de bovenbalk en de titelbalk blijven bovenin staan: een hoofdstuk waar je naartoe springt, komt eronder */
  scroll-margin-top: calc(var(--pp-balk) + 58px);
}
.m-handleiding-print .m-handleiding-titel { margin: var(--pp-r-3) 0 var(--pp-r-2); }
.m-handleiding-printvoet { margin-top: var(--pp-r-6); padding-top: var(--pp-r-2); }

@media print {
  .m-handleiding-printscherm .titelbalk, .m-handleiding-geenprint { display: none !important; }
  .m-handleiding-print { max-width: none; }
  .m-handleiding-toc { background: none; box-shadow: none; }
  .m-handleiding-toc .linkknop { color: inherit; padding: 0; }
  .m-handleiding-tegelkop, .m-handleiding-titel, .m-handleiding-hoofdstuk .blokkop { break-after: avoid; }
  .m-handleiding-print .m-handleiding-hoofdstuk { break-inside: avoid; }
  .m-handleiding-lezen { position: static; }
  .m-handleiding-artikel { max-height: none; overflow: visible; box-shadow: none; }
  .m-handleiding-klik, .m-handleiding-vraag, .m-handleiding-plaatje { break-inside: avoid; }
}
