/* ============================================================
   SAMiT · nis2-check.css
   Styles nur fuer den NIS2-Selbstcheck unter
   /projekte/nis2-assessment/selbstcheck/.

   Bewusst eine eigene Datei: pages.css wird parallel bearbeitet,
   und der Selbstcheck ist in sich geschlossen.
   ============================================================ */

/* ------------------------------------------------------------
   Zeitleiste auf der NIS2-Landingpage.
   Die drei Karten liegen in einem Raster mit repeat(3, 1fr).
   Raster-Kinder schrumpfen von Haus aus nicht unter ihre
   min-content-Breite, und deutsche Komposita wie
   "Informationssystemsicherheitsgesetz" oder
   "Risikomanagementmaßnahmen" sind laenger als eine Spalte.
   Ergebnis war ein Ueberhang nach rechts, den overflow-x: hidden
   nur abgeschnitten hat. min-width: 0 erlaubt das Schrumpfen,
   die Umbruchregeln machen das Ergebnis lesbar statt zerhackt.
   ------------------------------------------------------------ */
.nis2-timeline__step { min-width: 0; }

.nis2-timeline__date,
.nis2-timeline__title,
.nis2-timeline__desc {
  overflow-wrap: break-word;
  hyphens: auto;
}

/* Der schwebende Header liegt ueber dem Seitenanfang. Die Projektseiten
   halten ueber .hero-page Abstand, diese Seite hat keinen Hero und braucht
   den Abstand deshalb selbst. */
.nis2-selbstcheck__intro {
  padding-top: clamp(7rem, 12vw, 11rem);
}

#nis2-check {
  --nis2-akzent: var(--security, #6D28D9);
  --nis2-gut:    #16A34A;
  --nis2-mittel: #F59E0B;
  --nis2-schwach:#DC2626;
  max-width: 860px;
  margin: clamp(1.5rem, 3vw, 2.5rem) auto 0;
  outline: none;
}

/* ---------- Karte ---------- */
.nis2-card {
  background: var(--bg-card);
  border: 1px solid var(--line);
  border-radius: 0;
  box-shadow: var(--shadow-1);
  padding: clamp(1.5rem, 4vw, 2.75rem);
}

.nis2-card h2 {
  margin: 0 0 0.75rem;
  font-size: var(--fs-2xl);
  line-height: 1.2;
}

.nis2-card--start .lead {
  max-width: 58ch;
}

.nis2-facts {
  list-style: none;
  margin: var(--s-3) 0 var(--s-4);
  padding: 0;
  display: grid;
  gap: 0.7rem;
}

.nis2-facts li {
  position: relative;
  padding-left: 1.6rem;
  font-size: var(--fs-sm);
  color: var(--ink-soft);
  line-height: 1.55;
}

/* Dasselbe abgehakte Kaestchen wie in allen anderen Listen der Website
   (Saman 2026-08-17). Vorher war hier ein blauer Punkt, der als einziger
   aus der Reihe fiel. */
.nis2-facts li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.28em;
  width: 13px;
  height: 13px;
  border-radius: 0;
  background: var(--v2-haken-box) center / contain no-repeat;
}

.nis2-facts strong { color: var(--ink); font-weight: 600; }

/* ---------- Fortschritt ---------- */
.nis2-progress { margin-bottom: var(--s-3); }

.nis2-progress__meta {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  font-size: var(--fs-xs);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin-bottom: 0.5rem;
}

.nis2-progress__rail {
  height: 4px;
  border-radius: var(--r-pill);
  background: var(--bg-soft);
  overflow: hidden;
}

.nis2-progress__bar {
  height: 100%;
  background: var(--nis2-akzent);
  border-radius: var(--r-pill);
  transition: width var(--t-med) var(--ease);
}

/* ---------- Frage ---------- */
.nis2-frage {
  font-size: var(--fs-xl);
  margin-bottom: 0.6rem;
}

.nis2-hilfe {
  font-size: var(--fs-sm);
  color: var(--ink-soft);
  margin: 0 0 var(--s-3);
  max-width: 60ch;
}

.nis2-blocklabel {
  font-size: var(--fs-xs);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--nis2-akzent);
  margin: 0 0 0.35rem;
  font-weight: 600;
}

/* ---------- Antwort-Optionen ---------- */
.nis2-optionen {
  display: grid;
  gap: 0.6rem;
  margin-bottom: var(--s-3);
}

.nis2-optionen--drei { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 700px) {
  .nis2-optionen--drei { grid-template-columns: minmax(0, 1fr); }
}

.nis2-option {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  width: 100%;
  text-align: left;
  padding: 0.85rem 1.1rem;
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--bg-card);
  color: var(--ink);
  font-size: var(--fs-sm);
  line-height: 1.45;
  cursor: pointer;
  transition: border-color var(--t-fast) var(--ease),
              background var(--t-fast) var(--ease),
              transform var(--t-fast) var(--ease);
}

.nis2-option:hover {
  border-color: var(--ink);
  transform: translateY(-1px);
}

.nis2-option:focus-visible {
  outline: 2px solid var(--nis2-akzent);
  outline-offset: 2px;
}

.nis2-option.is-aktiv {
  border-color: var(--nis2-akzent);
  background: color-mix(in srgb, var(--nis2-akzent) 8%, var(--bg-card));
  font-weight: 600;
}

.nis2-optionen--lang .nis2-option { align-items: flex-start; }

/* ---------- Reifegrad-Item ---------- */
.nis2-item {
  padding: var(--s-3) 0;
  border-top: 1px solid var(--line);
}
.nis2-item:first-of-type { border-top: none; padding-top: var(--s-2); }

.nis2-item__frage {
  margin: 0 0 0.8rem;
  font-size: var(--fs-base);
  line-height: 1.5;
}

.nis2-tag {
  display: inline-block;
  margin-left: 0.5rem;
  padding: 0.15rem 0.55rem;
  border-radius: var(--r-pill);
  font-size: var(--fs-xs);
  font-weight: 600;
  letter-spacing: 0.03em;
  vertical-align: 1px;
  white-space: nowrap;
}

.nis2-tag--kritisch   { background: color-mix(in srgb, var(--nis2-schwach) 12%, transparent); color: var(--nis2-schwach); }
.nis2-tag--wichtig    { background: color-mix(in srgb, var(--nis2-mittel) 16%, transparent);  color: #92610a; }
.nis2-tag--ergaenzend { background: var(--bg-soft); color: var(--ink-soft); }

/* ---------- Navigation ---------- */
.nis2-nav {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: var(--s-3);
  padding-top: var(--s-3);
  border-top: 1px solid var(--line);
}

.nis2-nav .btn[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
  transform: none;
}

.nis2-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.nis2-actions--ergebnis {
  margin-top: var(--s-4);
  padding-top: var(--s-3);
  border-top: 1px solid var(--line);
}

/* Zwischenstufe zwischen Betroffenheit und Reifegrad */
.nis2-bruecke {
  margin-top: var(--s-3);
}
.nis2-bruecke h3 {
  font-size: var(--fs-lg);
  margin: 0 0 0.5rem;
}
.nis2-bruecke p {
  margin: 0;
  font-size: var(--fs-sm);
  color: var(--ink-soft);
  max-width: 62ch;
  line-height: 1.6;
}

.nis2-actions--bruecke {
  margin-top: var(--s-3);
}

.nis2-nav--einzeln {
  justify-content: flex-start;
}

/* Nachhol-Aufforderung im Ergebnis, wenn Stufe 2 uebersprungen wurde */
.nis2-leistung .btn {
  margin-top: 0.4rem;
}

.nis2-resume {
  margin-top: var(--s-3);
  padding: var(--s-3);
  border: 1px dashed var(--line);
  border-radius: var(--r-sm);
  background: var(--bg-soft);
}
.nis2-resume p { margin: 0 0 var(--s-2); font-size: var(--fs-sm); color: var(--ink-soft); }

.nis2-hinweis-klein {
  margin: var(--s-3) 0 0;
  font-size: var(--fs-xs);
  color: var(--ink-soft);
  line-height: 1.5;
}

/* ---------- Sektorenliste zum Nachschlagen ---------- */
.nis2-details {
  margin-bottom: var(--s-3);
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  padding: 0.75rem 1.1rem;
  background: var(--bg-soft);
}
.nis2-details summary {
  cursor: pointer;
  font-size: var(--fs-sm);
  font-weight: 600;
}
.nis2-details ul { margin: 0.4rem 0 0.9rem; padding-left: 1.2rem; }
.nis2-details li { font-size: var(--fs-sm); color: var(--ink-soft); line-height: 1.5; }
.nis2-details__intro {
  margin: 0.9rem 0 0;
  font-size: var(--fs-xs);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--ink-soft);
  font-weight: 600;
}

/* ============================================================
   Ergebnis
   ============================================================ */
.nis2-card--ergebnis section { margin-bottom: var(--s-4); }
.nis2-card--ergebnis h3 { font-size: var(--fs-lg); margin: 0 0 0.6rem; }

.nis2-ergebnis__kopf { margin-bottom: var(--s-4); }
.nis2-ergebnis__kopf h2 { margin-bottom: 0; }

/* Kein Balken an der Kante (Entscheid Saman 2026-08-13). Die Ampel traegt
   im Selbstcheck ohnehin der Punkt und die Farbe der Ueberschrift, siehe
   weiter unten bei "#nis2-check .nis2-urteil". */
.nis2-urteil {
  padding: var(--s-3);
  border-radius: var(--r-sm);
  background: var(--bg-soft);
}

.nis2-urteil__label {
  font-size: var(--fs-xs);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-soft);
  font-weight: 600;
  margin: 0 0 0.35rem;
}
.nis2-urteil p { margin: 0 0 0.6rem; }
.nis2-urteil__rahmen {
  margin: 0.9rem 0 0;
  font-size: var(--fs-xs);
  color: var(--ink-soft);
  line-height: 1.5;
}

/* ---------- Score ---------- */
.nis2-score {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--s-3);
  align-items: center;
}
@media (max-width: 640px) {
  .nis2-score { grid-template-columns: minmax(0, 1fr); }
}

.nis2-score__zahl {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding: var(--s-3);
  border-radius: var(--r-sm);
  background: var(--ink);
  color: var(--bg);
  min-width: 190px;
}
.nis2-score__prozent {
  font-size: clamp(38px, 6vw, 54px);
  font-weight: 700;
  line-height: 1;
}
.nis2-score__prozent span { font-size: 0.5em; margin-left: 2px; }
.nis2-score__label { font-size: var(--fs-xs); opacity: 0.75; }
.nis2-score__text p { margin: 0; font-size: var(--fs-sm); color: var(--ink-soft); }
.nis2-score__text .nis2-urteil__label { margin-bottom: 0.35rem; }

/* ---------- Bloecke ---------- */
.nis2-bloecke {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--s-2) var(--s-3);
}
@media (max-width: 640px) {
  .nis2-bloecke { grid-template-columns: minmax(0, 1fr); }
}

.nis2-block__kopf {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 0.75rem;
}
.nis2-block__titel { font-size: var(--fs-sm); font-weight: 600; }
.nis2-block__wert  { font-size: var(--fs-sm); font-weight: 700; font-variant-numeric: tabular-nums; }
.nis2-block__rail {
  height: 6px;
  border-radius: var(--r-pill);
  background: var(--bg-soft);
  margin: 0.35rem 0 0.3rem;
  overflow: hidden;
}
.nis2-block__bar { height: 100%; border-radius: var(--r-pill); }
.nis2-block--gut     .nis2-block__bar { background: var(--nis2-gut); }
.nis2-block--mittel  .nis2-block__bar { background: var(--nis2-mittel); }
.nis2-block--schwach .nis2-block__bar { background: var(--nis2-schwach); }
.nis2-block--gut     .nis2-block__wert { color: var(--nis2-gut); }
.nis2-block--mittel  .nis2-block__wert { color: #92610a; }
.nis2-block--schwach .nis2-block__wert { color: var(--nis2-schwach); }
.nis2-block__artikel { font-size: var(--fs-xs); color: var(--ink-soft); }

/* ---------- Luecken ---------- */
.nis2-luecken ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-2); }
.nis2-luecke {
  padding: var(--s-3);
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--bg-card);
}
.nis2-luecke__frage  { margin: 0 0 0.3rem; font-weight: 600; line-height: 1.45; }
.nis2-luecke__meta   { margin: 0 0 0.6rem; font-size: var(--fs-xs); color: var(--ink-soft); }
.nis2-luecke__schritt{ margin: 0; font-size: var(--fs-sm); line-height: 1.55; color: var(--ink-soft); }
.nis2-luecke__schritt strong { color: var(--ink); }

/* ---------- Leistungs-Hinweis ---------- */
.nis2-leistung {
  padding: var(--s-3);
  border-radius: var(--r-sm);
  background: color-mix(in srgb, var(--nis2-akzent) 6%, var(--bg-card));
  border: 1px solid color-mix(in srgb, var(--nis2-akzent) 20%, transparent);
}
.nis2-leistung p { margin: 0 0 0.6rem; font-size: var(--fs-sm); }

/* ============================================================
   Druck · das ist zugleich der PDF-Export
   ============================================================ */
@media print {
  /* ACHTUNG: .nis2-selbstcheck__intro darf hier NICHT als Ganzes verschwinden,
     der Check samt Ergebnis steckt in genau dieser Sektion. Frueher stand sie
     in dieser Liste, dadurch druckte die Seite statt des Ergebnisses nur die
     Folgesektion "Was danach kommt". Ausgeblendet werden nur Brotkrume und
     Einleitungstext, die H1 bleibt als Titel des Ausdrucks stehen. */
  .site-header,
  .mobile-panel,
  .site-footer,
  .pregruendung,
  .skip-link,
  .nis2-actions,
  .nis2-nav,
  .nis2-hinweis-klein,
  .nis2-selbstcheck__intro .hero-page__crumb,
  .nis2-selbstcheck__intro > .section__inner > .lead,
  .nis2-leistung .btn,
  .samit-consent { display: none !important; }

  /* Nur auf der Selbstcheck-Seite: die uebrigen Sektionen (Zum Weiterlesen)
     gehoeren nicht ins PDF. :has() scoped das sauber auf diese Seite, aeltere
     Browser ignorieren die Zeile und drucken die Sektion halt mit. */
  main:has(#nis2-check) > .section:not(.nis2-selbstcheck__intro) { display: none !important; }

  body { background: #fff; }

  #nis2-check { max-width: none; }

  .nis2-card {
    border: none;
    box-shadow: none;
    padding: 0;
  }

  .nis2-card--ergebnis section {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .nis2-score__zahl {
    background: none;
    color: var(--ink);
    border: 2px solid var(--ink);
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .nis2-block__bar,
  .nis2-urteil,
  .nis2-leistung {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .nis2-bloecke { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  /* Quelle und Rahmen gehoeren auf den Ausdruck, auch wenn sie am
     Bildschirm im Footer stehen. */
  .nis2-card--ergebnis::after {
    content: 'NIS2-Selbstcheck · samit-ms.at · Selbsteinschätzung, keine Rechtsauskunft und kein behördliches Testat.';
    display: block;
    margin-top: 1.5rem;
    padding-top: 0.75rem;
    border-top: 1px solid #ccc;
    font-size: 10px;
    color: #555;
  }
}

/* ============================================================
   TRANSPARENTES KACHEL-SYSTEM 2026-08-11 (Entscheid Saman):
   Der Selbstcheck folgt jetzt dem Kachel-Look der uebrigen Seiten:
   transparente Flaechen, eine Haarlinie in Tintenblau, keine
   Schatten, keine Rundungen. Gefuellt bleibt nur, was eine
   Bedeutung traegt: die gewaehlte Antwort und die Fortschritts-
   und Ampelbalken.
   ============================================================ */
#nis2-check .nis2-card,
#nis2-check .nis2-option,
#nis2-check .nis2-luecke,
#nis2-check .nis2-details,
#nis2-check .nis2-resume,
#nis2-check .nis2-leistung,
#nis2-check .nis2-score__zahl {
  background: transparent;
  border: 1px solid var(--v2-blue, #1B3A5E);
  border-radius: 0;
  box-shadow: none;
}
#nis2-check .nis2-resume { border-style: dashed; }

/* Breite wie alle anderen Inhalts-Kacheln der Website (--c-grid), damit
   der Check nicht schmaler steht als der Text darueber. Lesbarkeit
   sichern die inneren Textspalten, nicht die Kachelbreite. */
#nis2-check { max-width: var(--c-grid); }
#nis2-check .nis2-frage,
#nis2-check .nis2-hilfe,
#nis2-check .nis2-card > p,
#nis2-check .nis2-urteil p,
#nis2-check .nis2-score__text p,
#nis2-check .nis2-luecke__schritt,
#nis2-check .nis2-hinweis-klein { max-width: 68ch; }
/* Lange Auswahllisten fuellen die breite Kachel in zwei Spalten. */
@media (min-width: 900px) {
  #nis2-check .nis2-optionen--lang { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Gewaehlte Antwort: zarte Blaufuellung, damit die Auswahl klar bleibt. */
#nis2-check .nis2-option.is-aktiv {
  background: rgba(27, 58, 94, 0.08);
  border-color: var(--v2-blue, #1B3A5E);
  border-width: 1.5px;
}
#nis2-check .nis2-option:hover { border-color: var(--v2-blue, #1B3A5E); transform: none; }

/* Score-Kachel ohne Vollfarbe, Zahl in Tintenblau. */
#nis2-check .nis2-score__zahl { color: var(--v2-blue, #1B3A5E); }
#nis2-check .nis2-score__label { color: var(--ink-soft); opacity: 1; }

/* Gewichts-Marken als Umriss statt Farbflaeche. */
#nis2-check .nis2-tag {
  background: transparent;
  border: 1px solid currentColor;
  border-radius: 0;
}
#nis2-check .nis2-tag--ergaenzend { color: var(--ink-soft); }

/* Balken behalten ihre Bedeutung, die Schiene wird nur angedeutet. */
#nis2-check .nis2-progress__rail,
#nis2-check .nis2-block__rail {
  background: rgba(27, 58, 94, 0.12);
  border-radius: 0;
}
#nis2-check .nis2-progress__bar,
#nis2-check .nis2-block__bar { border-radius: 0; }
#nis2-check .nis2-progress__bar { background: var(--v2-blue, #1B3A5E); }

/* ============================================================
   AUSDRUCK 2026-08-11 (Entscheid Saman): eigener, abschliessender
   Druckblock. Er steht bewusst am Dateiende, damit er die
   Bildschirm-Kachelregeln oben sicher uebersteuert. Ziel ist ein
   Blatt, das man einem Geschaeftsfuehrer hinlegen kann.
   ============================================================ */
@page {
  size: A4 portrait;
  margin: 16mm 15mm 14mm;
}

@media print {
  /* Grundmass: feste Punktgroessen statt vw-Werte, sonst richtet sich
     die Schrift nach der Papierbreite und wird winzig. */
  body { font-size: 10.5pt; line-height: 1.45; color: #111; }

  #nis2-check { max-width: 100%; margin: 0; }
  #nis2-check .nis2-card {
    border: none !important;
    padding: 0 !important;
    background: none !important;
  }

  /* Titel des Blattes */
  .nis2-selbstcheck__intro h1 { font-size: 20pt; margin: 0 0 2mm; }
  #nis2-check .nis2-card__kopf,
  #nis2-check .nis2-eyebrow { font-size: 8.5pt; letter-spacing: 0.08em; }
  #nis2-check h2 { font-size: 15pt; margin: 0 0 3mm; }
  #nis2-check h3 { font-size: 11.5pt; margin: 0 0 2mm; }

  /* Kein Absatz soll zwischen zwei Blaettern zerreissen. */
  #nis2-check section,
  #nis2-check .nis2-urteil,
  #nis2-check .nis2-luecke,
  #nis2-check .nis2-block,
  #nis2-check .nis2-score { break-inside: avoid; page-break-inside: avoid; }
  #nis2-check h2, #nis2-check h3 { break-after: avoid; page-break-after: avoid; }

  /* Innere Kacheln: duenne graue Linie statt Blau, spart Farbe und
     bleibt auf Schwarzweiss-Druckern lesbar. */
  #nis2-check .nis2-luecke,
  #nis2-check .nis2-score__zahl,
  #nis2-check .nis2-leistung {
    border: 0.5pt solid #999 !important;
    background: none !important;
    padding: 3mm 4mm !important;
  }
  #nis2-check .nis2-score__zahl { color: #111 !important; min-width: 0; }
  #nis2-check .nis2-score { grid-template-columns: auto minmax(0, 1fr); gap: 5mm; }
  #nis2-check .nis2-score__prozent { font-size: 26pt; }

  /* Zwei Spalten, aber mit Innenabstand, damit die rechte Spalte nicht
     an den Blattrand stoesst. Die Balken tragen Bedeutung, sie bleiben
     farbig und werden deshalb vom Drucker nicht wegoptimiert. */
  #nis2-check .nis2-bloecke {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3mm 8mm;
  }
  #nis2-check .nis2-block { min-width: 0; }
  #nis2-check .nis2-block__artikel { font-size: 8pt; }
  #nis2-check .nis2-block__rail,
  #nis2-check .nis2-block__bar,
  #nis2-check .nis2-tag {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  #nis2-check .nis2-block__rail { height: 4px; background: #e5e5e5 !important; }

  /* Am Bildschirm nuetzlich, auf Papier Ballast. */
  #nis2-check .nis2-details,
  #nis2-check .nis2-resume,
  #nis2-check .nis2-progress { display: none !important; }

  /* Auf Papier ist ein Link ohne Adresse eine Sackgasse: Ziel ausschreiben. */
  #nis2-check .nis2-leistung a[href^="/"]::after {
    content: " (samit-ms.at" attr(href) ")";
    font-size: 8pt;
    color: #555;
  }

  /* Fusszeile mit Quelle und Abgrenzung auf jedem Ausdruck. */
  .nis2-card--ergebnis::after {
    margin-top: 6mm;
    padding-top: 2mm;
    font-size: 8pt;
  }
}

/* ============================================================
   BETROFFENHEIT UND DRUCK-BRIEFKOPF 2026-08-11 (Entscheid Saman):
   Die farbige Kante am Urteil faellt weg. Stattdessen traegt die
   Betroffenheit selbst die Ampel: Titel und Statuspunkt sind rot,
   gelb oder gruen, je nach Stufe. Rundungen gibt es keine.
   ============================================================ */
#nis2-check .nis2-urteil {
  border-left: 0;
  border-radius: 0;
  background: transparent;
  border: 1px solid var(--v2-blue, #1B3A5E);
  padding: clamp(1.1rem, 2.5vw, 1.75rem);
}
#nis2-check .nis2-urteil h3 {
  display: flex;
  align-items: baseline;
  gap: 0.55rem;
}
/* Statuspunkt vor dem Titel, gleiche Farbe wie der Titel. */
#nis2-check .nis2-urteil h3::before {
  content: "";
  flex: 0 0 auto;
  width: 11px;
  height: 11px;
  background: currentColor;
  border-radius: 50%;   /* bewusste Ausnahme: ein Punkt, keine Kachel */
}
#nis2-check .nis2-urteil--hoch h3    { color: var(--nis2-schwach); }
#nis2-check .nis2-urteil--mittel h3  { color: #92610a; }
#nis2-check .nis2-urteil--niedrig h3 { color: var(--nis2-gut); }

/* Keine runden Ecken mehr im gesamten Selbstcheck. */
#nis2-check .nis2-card,
#nis2-check .nis2-option,
#nis2-check .nis2-luecke,
#nis2-check .nis2-details,
#nis2-check .nis2-resume,
#nis2-check .nis2-leistung,
#nis2-check .nis2-score__zahl,
#nis2-check .nis2-tag,
#nis2-check .nis2-progress__rail,
#nis2-check .nis2-progress__bar,
#nis2-check .nis2-block__rail,
#nis2-check .nis2-block__bar,
#nis2-check .btn { border-radius: 0; }

/* Briefkopf: am Bildschirm unsichtbar, auf Papier die Marke. */
.nis2-druckkopf { display: none; }

@media print {
  .nis2-druckkopf {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 8mm;
    padding-bottom: 3mm;
    margin-bottom: 6mm;
    border-bottom: 0.5pt solid #999;
  }
  .nis2-druckkopf img { width: 38mm; height: auto; }
  .nis2-druckkopf span { font-size: 8.5pt; color: #555; }

  /* Auch im Druck traegt die Betroffenheit die Ampelfarbe. */
  #nis2-check .nis2-urteil {
    border: 0.5pt solid #999 !important;
    padding: 4mm !important;
  }
  #nis2-check .nis2-urteil h3 {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
}
