/* =========================================================================
   QUADRONET Layout - SEO- & KI-Check "Leuchtfeuer" (qn_page_audit)
   -------------------------------------------------------------------------
   25.10.2026. Markup: Resources/Private/Overrides/QnPageAudit/Templates/
   SeoCheck/Index.html (ersetzt die Vorlage der Extension). Die Ergebnisse
   kommen als HTML aus den Partials der Extension (Klassen qnseo-*) und
   werden hier eingefaerbt. Die neutrale seocheck.css der Extension wird
   mit dieser Vorlage NICHT geladen.

   Geschwister von Echolot (90) und Pruefstand (92): gleiches Pult, gleiche
   Nische, gleiche Palette, Knoepfe als Garagentor (55-garagentor.css).
   Instrument: Kueste bei Nacht mit Leuchtturm. Ruhe = das Feuer blinkt
   seine Kennung; .is-busy (setzt seocheck.js an .qnseo) = der Lichtkegel
   streicht ueber das Meer.

   BEWUSST OHNE @layer und alles unter .lq-leuchtfeuer - wie 90/92.

   Kontraste auf der Karte (hellster Punkt #22384A): Text #EAF4FF 10,9:1,
   leise #9FC0D8 6,3:1, Kritisch #FF8A7A 5,3:1, Wichtig #FFA94D 6,4:1,
   Hinweis #79B0C0 5,1:1, Gut #4FBE8B 5,2:1, Schrift auf Orange #141A1F 7,3:1.
   Suchergebnis-Vorschau: helle Karte #F7F9FA, Titel #1B2B38 13,9:1,
   Text #36434B 9,6:1, Adresse #56636B 5,9:1.
   ========================================================================= */

.lq-leuchtfeuer {
  --l-text:     var(--hell, #EAF4FF);
  --l-leise:    var(--hell-2, #9FC0D8);
  --l-orange:   var(--orange, #FF8800);
  --l-akzent:   var(--orange-hell, #FFA94D);
  --l-auf:      var(--auf-orange, #141A1F);
  --l-linie:    var(--qn-linie-fein, rgba(190, 215, 235, .18));
  --l-linie-2:  var(--qn-linie, rgba(190, 215, 235, .28));
  --l-fokus:    var(--qn-fokus, #FFD9A8);
  --l-schrift:  var(--qn-schriftfamilie, "IBM Plex Sans", system-ui, sans-serif);
  --l-titel:    var(--qn-schriftfamilie-ueberschrift, "Bebas Neue", sans-serif);
  --l-karte:    linear-gradient(160deg, #22384A 0%, #1B2B38 60%, #17242F 100%);
  --l-kritisch: #FF8A7A;
  --l-wichtig:  #FFA94D;
  --l-hinweis:  #79B0C0;
  --l-gut:      #4FBE8B;
  --l-info:     #9FC0D8;
  --l-wand-rgb: 52 82 103;
  --l-feld-rgb: 20 26 31;
  --l-osd:      500 .64rem/1.2 var(--l-schrift);

  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1.4rem, 3vw, 2.2rem);
  max-width: 64rem;
  color: var(--l-text);
  font-family: var(--l-schrift);
}
.lq-leuchtfeuer *,
.lq-leuchtfeuer *::before,
.lq-leuchtfeuer *::after { box-sizing: border-box; }
@media (max-width: 30rem) {
  .lq-leuchtfeuer .gt { --gt-luft-x: 1.1em; }
  .lq-leuchtfeuer .gt__mass,
  .lq-leuchtfeuer .gt__tor-schild { white-space: normal; text-align: center; }
}

/* Grundgeruest begrenzt Absaetze/Listen auf Lesebreite - in den Karten nicht */
.lq-leuchtfeuer :is(.qnseo-bericht, .qnseo-abschluss) :is(p, ol, ul, li, dl) { max-width: none; }

.lq-leuchtfeuer .qnseo-nur-vorlesen {
  position: absolute !important;
  width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
  white-space: nowrap; border: 0;
}
.lq-leuchtfeuer .qnseo-honig { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
/* Leere Plaetze belegen keine Rasterzeile (sonst doppelter Abstand) */
.lq-leuchtfeuer > #qnseo-footer:empty { display: none; }

.lq-leuchtfeuer a { color: var(--l-akzent); text-underline-offset: .2em; }
.lq-leuchtfeuer a:hover { color: #fff; }
.lq-leuchtfeuer a:focus-visible,
.lq-leuchtfeuer summary:focus-visible,
.lq-leuchtfeuer [tabindex]:focus-visible { outline: 3px solid var(--l-fokus); outline-offset: 2px; border-radius: 2px; }
.lq-leuchtfeuer .qnseo-bericht__titel:focus { outline: none; }
.lq-leuchtfeuer .qnseo-bericht__titel:focus-visible { outline: 3px solid var(--l-fokus); outline-offset: 4px; }

/* Kicker mit 8-Grad-Raute */
.lq-leuchtfeuer__kicker {
  display: inline-flex; align-items: center; gap: .7em;
  margin: 0 0 .7rem;
  font: 500 .72rem/1.5 var(--l-schrift);
  letter-spacing: .19em; text-transform: uppercase;
  color: var(--l-leise);
}
.lq-leuchtfeuer__kicker::before { content: ""; width: .6em; height: .6em; background: var(--l-orange); transform: rotate(8deg); }
.lq-leuchtfeuer__lead { max-width: 62ch; margin: 0; font-size: clamp(1rem, .96rem + .25vw, 1.12rem); line-height: 1.65; text-wrap: pretty; }


/* ===================================================================
   1. Pult
   =================================================================== */
.lq-leuchtfeuer__pult {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.4rem;
  padding: clamp(1.2rem, 3vw, 2rem);
  border: 1px solid var(--l-linie);
  border-left: 3px solid var(--l-orange);
  border-radius: 3px;
  background: var(--l-karte);
  box-shadow: var(--sch-blatt, 0 10px 30px -14px rgba(0, 0, 0, .66));
}
@media (min-width: 56rem) {
  .lq-leuchtfeuer__pult { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); align-items: stretch; gap: 2rem; }
}
.lq-leuchtfeuer__passer {
  position: absolute; top: .9rem; right: .9rem;
  width: 1.1rem; height: 1.1rem;
  border: 1px solid rgba(255, 169, 77, .7); border-radius: 50%;
  background:
    linear-gradient(rgba(255, 169, 77, .7), rgba(255, 169, 77, .7)) center / 1px 160% no-repeat,
    linear-gradient(rgba(255, 169, 77, .7), rgba(255, 169, 77, .7)) center / 160% 1px no-repeat;
  pointer-events: none;
}

.lq-leuchtfeuer__form { align-self: center; min-width: 0; margin: 0; }
.lq-leuchtfeuer__label {
  display: block; margin: 0 0 .55rem; padding: 0;
  font: 600 .78rem/1.3 var(--l-schrift);
  letter-spacing: .12em; text-transform: uppercase;
  color: var(--l-text);
}

/* Pruefumfang: zwei Schalter in der 8-Grad-Achse */
.lq-leuchtfeuer__umfang { min-width: 0; margin: 0 0 1.2rem; padding: 0; border: 0; }
.lq-leuchtfeuer__schalter { display: flex; flex-wrap: wrap; gap: .5rem; }
.lq-leuchtfeuer__wahl { position: relative; display: inline-flex; margin: 0; cursor: pointer; }
.lq-leuchtfeuer__wahl input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.lq-leuchtfeuer__wahl span {
  display: inline-flex; align-items: center; gap: .55em;
  min-height: 2.75rem; padding: .5rem 1.1rem;
  border: 1px solid var(--l-linie-2); border-radius: 2px;
  background: rgb(var(--l-feld-rgb) / .55);
  font-size: .9rem; font-weight: 600; color: var(--l-leise);
  transition: border-color .2s ease, color .2s ease, background-color .2s ease;
}
.lq-leuchtfeuer__wahl span::before {
  content: ""; width: .6em; height: .6em;
  border: 1px solid currentColor; transform: rotate(8deg);
}
.lq-leuchtfeuer__wahl input:checked + span { border-color: var(--l-orange); color: var(--l-text); background: rgb(255 136 0 / .12); }
.lq-leuchtfeuer__wahl input:checked + span::before { background: var(--l-orange); border-color: var(--l-orange); }
.lq-leuchtfeuer__wahl input:hover + span { color: var(--l-text); }
.lq-leuchtfeuer__wahl input:focus-visible + span { outline: 3px solid var(--l-fokus); outline-offset: 2px; }
.lq-leuchtfeuer__wahl input:disabled + span { opacity: .6; cursor: progress; }

.lq-leuchtfeuer__zeile { display: flex; flex-wrap: wrap; gap: .8rem; align-items: stretch; }
.lq-leuchtfeuer__nische { position: relative; display: flex; flex: 1 1 13rem; min-width: 0; }
.lq-leuchtfeuer__nische::before,
.lq-leuchtfeuer__nische::after {
  content: ""; position: absolute; z-index: 1;
  width: .9rem; height: .9rem;
  border: 0 solid var(--l-akzent);
  pointer-events: none; transition: border-color .2s ease;
}
.lq-leuchtfeuer__nische::before { top: -.4rem; left: -.4rem; border-width: 2px 0 0 2px; }
.lq-leuchtfeuer__nische::after  { bottom: -.4rem; right: -.4rem; border-width: 0 2px 2px 0; }
.lq-leuchtfeuer__nische:focus-within::before,
.lq-leuchtfeuer__nische:focus-within::after { border-color: var(--l-orange); }
.lq-leuchtfeuer__eingabe {
  display: block; flex: 1 1 auto; width: 100%; min-height: 3.1rem; height: auto; margin: 0;
  padding: .8em 1em;
  font: 400 1.05rem/1.4 var(--l-schrift); color: #fff;
  background: linear-gradient(180deg, rgb(var(--l-feld-rgb) / .95), rgb(var(--l-feld-rgb) / .8));
  border: 6px solid;
  border-top-color: rgba(15, 20, 24, .95);
  border-left-color: rgba(22, 28, 33, .95);
  border-right-color: rgb(var(--l-wand-rgb) / .55);
  border-bottom-color: rgb(var(--l-wand-rgb) / .7);
  border-radius: 2px;
  box-shadow: inset 0 3px 12px rgba(0, 0, 0, .75), inset 0 0 0 1px rgba(0, 0, 0, .6), 0 1px 0 rgba(255, 255, 255, .05);
  transition: border-color .22s ease, box-shadow .22s ease;
}
.lq-leuchtfeuer__eingabe::placeholder { color: rgba(234, 244, 255, .5); font-style: italic; opacity: 1; }
.lq-leuchtfeuer__eingabe:focus,
.lq-leuchtfeuer__eingabe:focus-visible {
  outline: none; border-color: var(--l-orange);
  box-shadow: inset 0 3px 12px rgba(0, 0, 0, .45), 0 0 0 3px rgb(255 136 0 / .28), 0 0 22px -4px rgb(255 136 0 / .55);
}
.lq-leuchtfeuer__eingabe:-webkit-autofill,
.lq-leuchtfeuer__eingabe:-webkit-autofill:focus {
  -webkit-text-fill-color: #fff;
  -webkit-box-shadow: inset 0 0 0 1000px rgb(var(--l-feld-rgb)) !important;
  caret-color: #fff;
}
.lq-leuchtfeuer__eingabe[readonly] { opacity: .7; cursor: progress; }

/* Knopf "Pruefen" = Garagentor, wie beim Pruefstand eingepasst */
.lq-leuchtfeuer__zeile .gt { flex: 0 0 auto; --gt-luft-y: 1em; --gt-luft-x: 1.9em; --gt-tiefe: 80px; }
@media (max-width: 30rem) {
  .lq-leuchtfeuer__zeile .gt { flex: 1 1 100%; }
  .lq-leuchtfeuer__zeile .gt .gt__buehne { width: 100%; }
}

.lq-leuchtfeuer__hinweis { margin: .9rem 0 0; font-size: .84rem; line-height: 1.5; color: var(--l-leise); }
.lq-leuchtfeuer__hinweis--leise { margin-top: .35rem; font-size: .78rem; }
.lq-leuchtfeuer__umfang .lq-leuchtfeuer__hinweis { margin-top: .5rem; }
.lq-leuchtfeuer__hinweis strong { color: var(--l-akzent); font-weight: 600; font-variant-numeric: tabular-nums; }


/* ===================================================================
   2. Instrument: Kueste bei Nacht
   =================================================================== */
.lq-leuchtfeuer__instrument {
  position: relative;
  align-self: center;
  aspect-ratio: 5 / 3;
  min-height: 12rem;
  overflow: hidden;
  border: 1px solid var(--l-linie);
  border-radius: 3px;
  background: linear-gradient(180deg, #0B1218 0%, #12202B 62%, #183244 73%, #0F1C26 100%);
}
.lq-leuchtfeuer__svg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.lq-leuchtfeuer__sterne circle { fill: rgba(234, 244, 255, .55); }
.lq-leuchtfeuer__horizont { stroke: rgba(159, 192, 216, .35); stroke-width: 1; }
.lq-leuchtfeuer__wellen path { fill: none; stroke: rgba(159, 192, 216, .18); stroke-width: 1.2; }
.lq-leuchtfeuer__schiff path { fill: #2E4A5C; }
.lq-leuchtfeuer__fels { fill: #1B2B38; stroke: rgba(159, 192, 216, .25); stroke-width: 1; }
.lq-leuchtfeuer__schaft { fill: #EAF4FF; }
.lq-leuchtfeuer__ring { fill: #E8651A; }
.lq-leuchtfeuer__galerie { fill: #3B5263; }
.lq-leuchtfeuer__laterne { fill: #FFD9A8; stroke: #3B5263; stroke-width: 2; }
.lq-leuchtfeuer__dach { fill: #E8651A; }
.lq-leuchtfeuer__feuer { fill: url(#lq-lf-glanz); opacity: .9; }
.lq-leuchtfeuer__kegel { fill: url(#lq-lf-kegel); }
.lq-leuchtfeuer__strahl { transform-box: view-box; transform-origin: 318px 79px; opacity: .55; }
.lq-leuchtfeuer__boden { stroke: var(--l-akzent); stroke-width: 1.2; opacity: .6; }

.lq-leuchtfeuer__osd {
  position: absolute;
  display: flex; align-items: center; gap: .5em;
  font: var(--l-osd);
  letter-spacing: .16em; text-transform: uppercase;
  color: var(--l-text);
  text-shadow: 0 1px 2px rgba(0, 0, 0, .8);
}
.lq-leuchtfeuer__osd--ol { top: .9rem; left: 1rem; }
.lq-leuchtfeuer__osd--or { top: .9rem; right: 1rem; color: var(--l-akzent); }
.lq-leuchtfeuer__osd--ul { bottom: .8rem; left: 1rem; color: var(--l-leise); letter-spacing: .08em; }
.lq-leuchtfeuer__osd--ur { bottom: .8rem; right: 1rem; color: var(--l-leise); letter-spacing: .08em; }
.lq-leuchtfeuer__punkt { width: .5rem; height: .5rem; border-radius: 50%; background: var(--l-gut); box-shadow: 0 0 8px var(--l-gut); }
.lq-leuchtfeuer__lauf { display: none; }
.is-busy .lq-leuchtfeuer__punkt { background: var(--l-orange); box-shadow: 0 0 8px var(--l-orange); }
.is-busy .lq-leuchtfeuer__bereit { display: none; }
.is-busy .lq-leuchtfeuer__lauf { display: inline; }
.is-busy .lq-leuchtfeuer__strahl { opacity: .95; }
@media (max-width: 26rem) {
  .lq-leuchtfeuer__osd--ur { display: none; }
}


/* ===================================================================
   3. Fehler, Fortschritt
   =================================================================== */
.lq-leuchtfeuer__fehler {
  display: grid; gap: .3rem;
  padding: 1rem 1.2rem;
  border: 1px solid rgba(255, 138, 122, .45);
  border-left: 3px solid var(--l-kritisch);
  border-radius: 3px;
  background: rgba(229, 55, 44, .08);
  line-height: 1.5;
}
.lq-leuchtfeuer__fehler[hidden],
.lq-leuchtfeuer__ergebnis[hidden],
.lq-leuchtfeuer__fortschritt[hidden] { display: none; }
.lq-leuchtfeuer__fehler-titel {
  font: 600 .72rem/1.4 var(--l-schrift);
  letter-spacing: .16em; text-transform: uppercase;
  color: var(--l-kritisch);
}

.lq-leuchtfeuer__fortschritt {
  display: grid; gap: .6rem;
  padding: 1.1rem 1.3rem;
  border: 1px solid var(--l-linie);
  border-left: 3px solid var(--l-orange);
  border-radius: 3px;
  background: rgba(10, 16, 21, .32);
}
.lq-leuchtfeuer__fortschritt-kopf { margin: 0; font: 600 .72rem/1.4 var(--l-schrift); letter-spacing: .16em; text-transform: uppercase; color: var(--l-akzent); }
.lq-leuchtfeuer__balken { position: relative; height: .65rem; overflow: hidden; background: rgb(var(--l-feld-rgb) / .9); box-shadow: inset 0 1px 3px rgba(0, 0, 0, .7); }
.lq-leuchtfeuer__balken-fuellung {
  display: block; height: 100%;
  width: var(--qnseo-prozent, 0%);
  background: linear-gradient(90deg, #E8651A, var(--l-orange) 70%, var(--l-akzent));
  transition: width .5s ease;
}
.lq-leuchtfeuer__fortschritt-text { margin: 0; font-size: .86rem; color: var(--l-leise); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }


/* ===================================================================
   4. Bericht (Partials SeoCheck/* der Extension)
   =================================================================== */
.lq-leuchtfeuer .qnseo-stufe--kritisch { --_s: var(--l-kritisch); }
.lq-leuchtfeuer .qnseo-stufe--wichtig  { --_s: var(--l-wichtig); }
.lq-leuchtfeuer .qnseo-stufe--hinweis  { --_s: var(--l-hinweis); }
.lq-leuchtfeuer .qnseo-stufe--info     { --_s: var(--l-info); }
.lq-leuchtfeuer .qnseo-stufe--gut      { --_s: var(--l-gut); }
.lq-leuchtfeuer .qnseo-ampel--kritisch   { --_a: var(--l-kritisch); }
.lq-leuchtfeuer .qnseo-ampel--verbessern { --_a: var(--l-wichtig); }
.lq-leuchtfeuer .qnseo-ampel--gut        { --_a: var(--l-gut); }

.lq-leuchtfeuer .qnseo-bericht { display: grid; gap: clamp(1.1rem, 2.6vw, 1.6rem); min-width: 0; }
.lq-leuchtfeuer .qnseo-bericht__kopf {
  padding: clamp(1.1rem, 2.6vw, 1.6rem);
  border: 1px solid var(--l-linie);
  border-top: 3px solid var(--l-orange);
  border-radius: 3px;
  background: var(--l-karte);
  box-shadow: var(--sch-tief, 0 26px 60px -26px rgba(0, 0, 0, .78));
}
.lq-leuchtfeuer .qnseo-bericht__titel {
  margin: 0;
  font: 400 clamp(1.8rem, 1.4rem + 1.4vw, 2.6rem)/1 var(--l-titel);
  font-synthesis: none; letter-spacing: .02em; text-transform: uppercase;
  color: var(--l-text);
  overflow-wrap: anywhere;
}
.lq-leuchtfeuer .qnseo-bericht__url { margin: .5rem 0 0; font-size: .86rem; line-height: 1.55; color: var(--l-leise); overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-bericht__url span { color: var(--l-text); }
.lq-leuchtfeuer .qnseo-bericht__hinweis { margin: .8rem 0 0; font-size: .86rem; color: var(--l-akzent); }

/* Zaehler: vier Bojen */
.lq-leuchtfeuer .qnseo-zaehler { display: grid; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); gap: 4px; margin: 1.1rem 0 0; padding: 0; list-style: none; }
.lq-leuchtfeuer .qnseo-zaehler__eintrag {
  display: grid; gap: .1rem; margin: 0;
  padding: .7rem .8rem .65rem;
  border-top: 3px solid var(--_s);
  background: rgba(10, 16, 21, .32);
}
.lq-leuchtfeuer .qnseo-zaehler__eintrag::before { content: none; }
.lq-leuchtfeuer .qnseo-zaehler__zahl { font: 400 2.2rem/1 var(--l-titel); font-variant-numeric: tabular-nums; color: var(--_s); }
.lq-leuchtfeuer .qnseo-zaehler__label { font: 600 .66rem/1.35 var(--l-schrift); letter-spacing: .08em; text-transform: uppercase; color: var(--l-leise); hyphens: auto; }

/* Uebersicht: Ampel je Bereich */
.lq-leuchtfeuer .qnseo-uebersicht { display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: 4px; margin: 0; padding: 0; list-style: none; }
.lq-leuchtfeuer .qnseo-uebersicht__eintrag { margin: 0; }
.lq-leuchtfeuer .qnseo-uebersicht__eintrag::before { content: none; }
.lq-leuchtfeuer .qnseo-uebersicht__link {
  display: grid; gap: .2rem; height: 100%;
  padding: .75rem .85rem;
  border: 1px solid var(--l-linie);
  border-top: 3px solid var(--_a);
  background: var(--l-karte);
  color: var(--l-text); text-decoration: none;
  transition: border-color .2s ease, transform .2s ease;
}
.lq-leuchtfeuer .qnseo-uebersicht__link:hover { border-color: var(--_a); color: var(--l-text); }
.lq-leuchtfeuer .qnseo-uebersicht__titel { font-weight: 600; font-size: .92rem; }
.lq-leuchtfeuer .qnseo-uebersicht__ampel { font: 400 1.35rem/1 var(--l-titel); letter-spacing: .04em; text-transform: uppercase; color: var(--_a); }
.lq-leuchtfeuer .qnseo-uebersicht__zahlen { font-size: .76rem; color: var(--l-leise); font-variant-numeric: tabular-nums; }

/* Suchergebnis-Vorschau: helle Karte wie ein Blatt Papier */
.lq-leuchtfeuer .qnseo-snippet { display: grid; gap: .7rem; }
.lq-leuchtfeuer .qnseo-snippet__ueberschrift,
.lq-leuchtfeuer .qnseo-bots__titel,
.lq-leuchtfeuer .qnseo-teil__titel {
  margin: 0;
  font: 400 clamp(1.4rem, 1.2rem + .8vw, 1.9rem)/1.05 var(--l-titel);
  font-synthesis: none; letter-spacing: .03em; text-transform: uppercase;
  color: var(--l-text);
}
.lq-leuchtfeuer .qnseo-snippet__karte {
  max-width: 42rem;
  padding: 1rem 1.25rem 1.1rem;
  border-left: 3px solid var(--l-orange);
  border-radius: 2px;
  background: #F7F9FA;
  box-shadow: 0 14px 34px -18px rgba(0, 0, 0, .8);
  font-family: Arial, Helvetica, sans-serif;
}
.lq-leuchtfeuer .qnseo-snippet__adresse { margin: 0; font-size: .82rem; color: #56636B; overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-snippet__titel { margin: .25rem 0 .3rem; font-size: 1.2rem; line-height: 1.3; color: #1B2B38; font-weight: 600; overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-snippet__text { margin: 0; font-size: .9rem; line-height: 1.55; color: #36434B; overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-snippet .is-leer { color: #B3261E; font-style: italic; font-weight: 400; }
.lq-leuchtfeuer .qnseo-snippet__mass { margin: 0; font-size: .8rem; line-height: 1.5; color: var(--l-leise); }

/* Bereiche */
.lq-leuchtfeuer .qnseo-bereiche { display: grid; gap: clamp(.9rem, 2vw, 1.2rem); }
.lq-leuchtfeuer .qnseo-bereich {
  min-width: 0;
  padding: clamp(1rem, 2.4vw, 1.4rem);
  border: 1px solid var(--l-linie);
  border-top: 3px solid var(--_a);
  border-radius: 3px;
  background: var(--l-karte);
  scroll-margin-top: calc(var(--kopf, 7.5rem) + 1rem);
}
.lq-leuchtfeuer .qnseo-bereich__kopf { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .2rem 1rem; }
.lq-leuchtfeuer .qnseo-bereich__titel {
  margin: 0;
  font: 400 clamp(1.35rem, 1.15rem + .7vw, 1.75rem)/1.05 var(--l-titel);
  font-synthesis: none; letter-spacing: .03em; text-transform: uppercase;
  color: var(--l-text);
}
.lq-leuchtfeuer .qnseo-bereich__ampel {
  margin: 0; padding: .25rem .55rem;
  border: 1px dashed var(--_a); border-radius: 3px;
  font: 600 .7rem/1.2 var(--l-schrift); letter-spacing: .12em; text-transform: uppercase;
  color: var(--_a);
  transform: rotate(-2deg);
}
.lq-leuchtfeuer .qnseo-bereich__kurz { flex: 1 1 100%; margin: .15rem 0 0; font-size: .84rem; color: var(--l-leise); }

.lq-leuchtfeuer :is(.qnseo-befunde, .qnseo-themen) { display: grid; gap: 4px; margin: .9rem 0 0; padding: 0; list-style: none; }
.lq-leuchtfeuer :is(.qnseo-befund, .qnseo-thema) {
  margin: 0;
  padding: .75rem .9rem .8rem;
  border-left: 3px solid var(--_s);
  background: rgba(10, 16, 21, .32);
}
.lq-leuchtfeuer :is(.qnseo-befund, .qnseo-thema)::before { content: none; }
.lq-leuchtfeuer .qnseo-befund__kopf { display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem .75rem; margin: 0; }
.lq-leuchtfeuer .qnseo-befund__stufe {
  font: 600 .66rem/1.3 var(--l-schrift); letter-spacing: .14em; text-transform: uppercase;
  color: var(--_s);
}
.lq-leuchtfeuer .qnseo-befund__titel { font-weight: 600; font-size: .95rem; line-height: 1.4; color: var(--l-text); }
.lq-leuchtfeuer .qnseo-befund__detail {
  margin: .35rem 0 0;
  font: 400 .78rem/1.5 ui-monospace, "Cascadia Mono", Consolas, monospace;
  color: var(--l-leise);
  overflow-wrap: anywhere;
}
.lq-leuchtfeuer .qnseo-befund__text { margin: .4rem 0 0; font-size: .88rem; line-height: 1.55; color: var(--l-text); }
.lq-leuchtfeuer .qnseo-befund__tipp { margin: .4rem 0 0; font-size: .86rem; line-height: 1.55; color: var(--l-leise); }
.lq-leuchtfeuer .qnseo-befund__tipp strong { color: var(--l-akzent); font-weight: 600; }

.lq-leuchtfeuer .qnseo-bestanden { margin-top: .9rem; }
.lq-leuchtfeuer .qnseo-bestanden > summary,
.lq-leuchtfeuer .qnseo-thema__beispiele > summary {
  display: inline-flex; align-items: center; gap: .5em;
  min-height: 2.25rem;
  font-size: .84rem; font-weight: 600;
  color: var(--l-gut);
  cursor: pointer; list-style: none;
}
.lq-leuchtfeuer .qnseo-thema__beispiele > summary { color: var(--l-akzent); }
.lq-leuchtfeuer :is(.qnseo-bestanden, .qnseo-thema__beispiele) > summary::-webkit-details-marker { display: none; }
.lq-leuchtfeuer :is(.qnseo-bestanden, .qnseo-thema__beispiele) > summary::before {
  content: ""; width: .45rem; height: .45rem;
  border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: rotate(-45deg); transition: transform .2s ease;
}
.lq-leuchtfeuer :is(.qnseo-bestanden, .qnseo-thema__beispiele)[open] > summary::before { transform: rotate(45deg); }
.lq-leuchtfeuer .qnseo-bestanden__liste { display: grid; gap: .3rem; margin: .4rem 0 0; padding: 0; list-style: none; }
.lq-leuchtfeuer .qnseo-bestanden__eintrag { position: relative; margin: 0; padding-left: 1.2rem; font-size: .86rem; line-height: 1.5; }
.lq-leuchtfeuer .qnseo-bestanden__eintrag::before {
  content: ""; position: absolute; left: .1rem; top: .5em;
  width: .45rem; height: .45rem; border-radius: 50%;
  background: var(--l-gut);
}
.lq-leuchtfeuer .qnseo-bestanden__detail { display: block; font: .76rem/1.45 ui-monospace, Consolas, monospace; color: var(--l-leise); overflow-wrap: anywhere; }

/* Bots */
.lq-leuchtfeuer .qnseo-bots { display: grid; gap: .7rem; min-width: 0; }
.lq-leuchtfeuer .qnseo-tabelle-huelle { overflow-x: auto; border: 1px solid var(--l-linie); border-radius: 3px; background: var(--l-karte); }
.lq-leuchtfeuer .qnseo-tabelle { width: 100%; min-width: 34rem; border-collapse: collapse; font-size: .86rem; }
.lq-leuchtfeuer .qnseo-tabelle :is(th, td) { padding: .5rem .75rem; border-bottom: 1px solid var(--l-linie); text-align: left; vertical-align: top; }
.lq-leuchtfeuer .qnseo-tabelle thead th { font: 600 .68rem/1.3 var(--l-schrift); letter-spacing: .12em; text-transform: uppercase; color: var(--l-leise); background: rgba(10, 16, 21, .45); }
.lq-leuchtfeuer .qnseo-tabelle tbody th { font-weight: 600; color: var(--l-text); }
.lq-leuchtfeuer .qnseo-tabelle td { color: var(--l-leise); }
.lq-leuchtfeuer .qnseo-bots__zwischen th {
  padding-top: .9rem;
  font: 600 .66rem/1.3 var(--l-schrift) !important; letter-spacing: .14em; text-transform: uppercase;
  color: var(--l-akzent) !important;
  background: transparent;
}
.lq-leuchtfeuer .qnseo-bots__status code { display: block; margin-top: .2rem; font-size: .74rem; color: var(--l-leise); }
.lq-leuchtfeuer .qnseo-marke {
  display: inline-block; padding: .12rem .45rem;
  border: 1px solid currentColor; border-radius: 2px;
  font: 600 .7rem/1.3 var(--l-schrift); letter-spacing: .08em; text-transform: uppercase;
}
.lq-leuchtfeuer .qnseo-marke--ja { color: var(--l-gut); }
.lq-leuchtfeuer .qnseo-marke--nein { color: var(--l-kritisch); }
.lq-leuchtfeuer .qnseo-bots__gruppe--training .qnseo-marke--nein { color: var(--l-info); }
.lq-leuchtfeuer .qnseo-bots__hinweis { margin: 0; font-size: .8rem; color: var(--l-leise); }

/* Komplettpruefung: Teile, Themen, Seitenliste */
.lq-leuchtfeuer .qnseo-teil { display: grid; gap: clamp(.9rem, 2vw, 1.2rem); min-width: 0; }
.lq-leuchtfeuer .qnseo-teil__intro,
.lq-leuchtfeuer .qnseo-teil__leer { margin: 0; font-size: .86rem; color: var(--l-leise); }
.lq-leuchtfeuer .qnseo-thema__anzahl { margin-left: auto; font: 400 1.35rem/1 var(--l-titel); color: var(--_s); font-variant-numeric: tabular-nums; }
.lq-leuchtfeuer .qnseo-thema__beispiele { margin-top: .5rem; }
.lq-leuchtfeuer .qnseo-thema__beispiele ul { display: grid; gap: .25rem; margin: .3rem 0 0; padding: 0; list-style: none; }
.lq-leuchtfeuer .qnseo-thema__beispiele li { margin: 0; padding-left: .9rem; border-left: 1px solid var(--l-linie-2); font-size: .82rem; line-height: 1.5; }
.lq-leuchtfeuer .qnseo-thema__beispiele li::before { content: none; }
.lq-leuchtfeuer :is(.qnseo-thema__url, .qnseo-seite__url) { font: .78rem/1.5 ui-monospace, Consolas, monospace; color: var(--l-text); overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-thema__detail { display: block; color: var(--l-leise); overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-thema__mehr { margin: .4rem 0 0; font-size: .8rem; color: var(--l-leise); }

.lq-leuchtfeuer .qnseo-seiten { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }
.lq-leuchtfeuer .qnseo-seite { margin: 0; border-left: 3px solid var(--_a); background: rgba(10, 16, 21, .32); }
.lq-leuchtfeuer .qnseo-seite::before { content: none; }
.lq-leuchtfeuer .qnseo-seite > details > summary {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .3rem 1rem;
  min-height: 2.75rem; padding: .5rem .8rem;
  cursor: pointer; list-style: none;
}
.lq-leuchtfeuer .qnseo-seite > details > summary::-webkit-details-marker { display: none; }
.lq-leuchtfeuer .qnseo-seite__pfad { min-width: 0; font: .82rem/1.4 ui-monospace, Consolas, monospace; color: var(--l-text); overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-seite__zahlen { display: flex; align-items: center; gap: .35rem; }
.lq-leuchtfeuer .qnseo-seite__zahl {
  min-width: 2rem; padding: .1rem .3rem;
  text-align: center; font: 400 1.05rem/1.2 var(--l-titel);
  color: var(--_s); background: rgba(10, 16, 21, .45);
}
.lq-leuchtfeuer .qnseo-seite__zahl.is-null { color: rgba(159, 192, 216, .45); }
.lq-leuchtfeuer .qnseo-seite__inhalt { padding: 0 .9rem .8rem; font-size: .84rem; line-height: 1.5; }
.lq-leuchtfeuer .qnseo-seite__inhalt p { margin: .3rem 0 0; }
.lq-leuchtfeuer .qnseo-seite__titel { color: var(--l-leise); overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-seite__befunde { display: grid; gap: .25rem; margin: .45rem 0 0; padding: 0; list-style: none; }
.lq-leuchtfeuer .qnseo-seite__befunde li { margin: 0; padding-left: .7rem; border-left: 2px solid var(--_s); }
.lq-leuchtfeuer .qnseo-seite__befunde li::before { content: none; }
.lq-leuchtfeuer .qnseo-seite__befunde .qnseo-befund__detail { display: block; margin: .1rem 0 0; }


/* ===================================================================
   5. Abschluss (Override SeoCheck/Abschluss.html mit Garagentoren)
   =================================================================== */
.lq-leuchtfeuer .qnseo-abschluss {
  display: grid; gap: 1.2rem;
  margin-top: clamp(1rem, 2.4vw, 1.6rem);
  padding: clamp(1.1rem, 2.6vw, 1.6rem);
  border: 1px solid var(--l-linie);
  border-left: 3px solid var(--l-orange);
  border-radius: 3px;
  background: rgba(10, 16, 21, .32);
}
.lq-leuchtfeuer .qnseo-abschluss__einordnung { display: grid; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.lq-leuchtfeuer .qnseo-abschluss__einordnung li { position: relative; margin: 0; padding-left: 1.3rem; font-size: .9rem; line-height: 1.55; }
.lq-leuchtfeuer .qnseo-abschluss__einordnung li::before {
  content: ""; position: absolute; left: 0; top: .6em;
  width: .45rem; height: .45rem;
  background: var(--l-orange); transform: rotate(8deg);
}
.lq-leuchtfeuer .lq-leuchtfeuer__tore { display: flex; flex-wrap: wrap; align-items: stretch; gap: .7rem .8rem; margin: 0; padding: 0; list-style: none; }
/* Garagentore im Abschluss kompakt (Dirk, 25.10.2026): Nebenaktionen unter
   einem langen Bericht - flacher, kleinere Schrift, weniger Tiefe. Der
   "Pruefen"-Knopf oben im Pult bleibt gross. Rueckweg: diesen Block entfernen. */
.lq-leuchtfeuer .qnseo-abschluss .gt {
  --gt-schrift: .78rem;
  --gt-luft-y: .55em;
  --gt-luft-x: 1.35em;
  --gt-wand: 6px;
  --gt-tiefe: 46px;
}
.lq-leuchtfeuer .lq-leuchtfeuer__tore > li { display: flex; margin: 0; }
.lq-leuchtfeuer .lq-leuchtfeuer__tore > li::before { content: none; }
.lq-leuchtfeuer .lq-leuchtfeuer__tor { display: flex; }
.lq-leuchtfeuer .qnseo-bericht-aktionen { padding-bottom: 1.2rem; border-bottom: 1px solid var(--l-linie); }
.lq-leuchtfeuer :is(.qnseo-bericht-aktionen__hinweis, .qnseo-bericht-aktionen__status) { flex: 1 1 100%; margin: 0; font-size: .84rem; line-height: 1.5; color: var(--l-leise); }
.lq-leuchtfeuer .qnseo-bericht-aktionen__hinweis strong { color: var(--l-text); font-weight: 600; overflow-wrap: anywhere; }
.lq-leuchtfeuer .qnseo-bericht-aktionen__status { color: var(--l-text); }
.lq-leuchtfeuer .qnseo-bericht-aktionen__status:empty { display: none; }
.lq-leuchtfeuer .qnseo-bericht-aktionen__status.is-error { padding-left: .8rem; border-left: 3px solid var(--l-kritisch); color: var(--l-kritisch); }
.lq-leuchtfeuer .gt.is-loading { cursor: progress; }
@media (max-width: 30rem) {
  .lq-leuchtfeuer .lq-leuchtfeuer__tore > li,
  .lq-leuchtfeuer .lq-leuchtfeuer__tor { flex: 1 1 100%; }
  .lq-leuchtfeuer .lq-leuchtfeuer__tore .gt { width: 100%; }
}

/* Neutrale Knoepfe (falls der Abschluss der Extension greift) */
.lq-leuchtfeuer .qnseo-weg {
  display: inline-flex; align-items: center;
  min-height: 2.75rem; padding: .55rem 1rem;
  border: 1px solid var(--l-linie-2); border-radius: 2px;
  background: transparent;
  font: 600 .88rem/1.3 var(--l-schrift); color: var(--l-text);
  text-decoration: none; cursor: pointer;
}
.lq-leuchtfeuer .qnseo-weg:hover { border-color: var(--l-akzent); color: var(--l-akzent); }
.lq-leuchtfeuer .qnseo-weg--haupt { border-color: var(--l-orange); background: var(--l-orange); color: var(--l-auf); }


/* ===================================================================
   6. Erklaerung
   =================================================================== */
.lq-leuchtfeuer__info { border: 1px solid var(--l-linie); border-radius: 3px; background: rgba(10, 16, 21, .25); }
.lq-leuchtfeuer__info > summary { position: relative; padding: .95rem 3rem .95rem 1.2rem; font-weight: 600; cursor: pointer; list-style: none; }
.lq-leuchtfeuer__info > summary::-webkit-details-marker { display: none; }
.lq-leuchtfeuer__info > summary::after {
  content: ""; position: absolute; right: 1.2rem; top: 50%;
  width: .55rem; height: .55rem;
  border-right: 2px solid var(--l-akzent); border-bottom: 2px solid var(--l-akzent);
  transform: translateY(-70%) rotate(45deg); transition: transform .2s ease;
}
.lq-leuchtfeuer__info[open] > summary::after { transform: translateY(-30%) rotate(225deg); }
.lq-leuchtfeuer__info-text { padding: 0 1.2rem 1.1rem; }
.lq-leuchtfeuer__info-text p { margin: 0 0 .8rem; max-width: 70ch; line-height: 1.6; color: var(--l-text); }
.lq-leuchtfeuer__info-text p:last-child { margin-bottom: 0; color: var(--l-leise); }


/* ===================================================================
   7. Bewegung - nur mit Bewegungswunsch
   =================================================================== */
@media (prefers-reduced-motion: no-preference) {
  /* Ruhe: Kennung "Blz. 4 s" - ein Blitz alle vier Sekunden */
  @keyframes lq-lf-kennung {
    0%, 70%, 100% { opacity: .55; }
    78% { opacity: 1; }
    86% { opacity: .55; }
  }
  /* Lauf: der Lichtkegel dreht sich - in der Seitenansicht wird er
     schmal (zeigt zum Betrachter/weg) und wieder breit */
  @keyframes lq-lf-drehen {
    0%   { transform: scaleX(1); opacity: .95; }
    40%  { transform: scaleX(.08); opacity: .35; }
    50%  { transform: scaleX(-.08); opacity: .15; }
    90%  { transform: scaleX(-1); opacity: .2; }
    100% { transform: scaleX(1); opacity: .95; }
  }
  @keyframes lq-lf-glanz { 50% { opacity: .55; } }
  @keyframes lq-lf-punkt { 50% { opacity: .25; } }
  @keyframes lq-lf-wellen { to { transform: translateX(-40px); } }

  .lq-leuchtfeuer__strahl { animation: lq-lf-kennung 4s ease-in-out infinite; }
  .lq-leuchtfeuer__wellen path { animation: lq-lf-wellen 6s linear infinite; }
  .is-busy .lq-leuchtfeuer__strahl { animation: lq-lf-drehen 2.6s linear infinite; }
  .is-busy .lq-leuchtfeuer__feuer { animation: lq-lf-glanz 1.3s ease-in-out infinite; }
  .is-busy .lq-leuchtfeuer__punkt { animation: lq-lf-punkt .8s steps(1) infinite; }

  @keyframes lq-lf-ein { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
  .lq-leuchtfeuer .qnseo-bericht { animation: lq-lf-ein .45s ease-out both; }
}
