/* Relaunch 2026, Bereich „guides“ (app/Views/v2/guides.php): Ratgeber, Länder, Prüfungen, Aktionsseiten.
   Nur Tokens, nur logische Eigenschaften. */

/* Abschnitte (Kacheln in der Hauptspalte) */
.gd-body { padding-block: var(--space-8) var(--space-4); }
.gd-h { font: 750 clamp(21px, 2.4cqi, 26px)/1.2 var(--font-display); letter-spacing: -.01em; margin: 0 0 var(--space-3); }
.gd-sec > p, .gd-prose p, .gd-prose ul, .gd-prose ol { margin: 0 0 var(--space-3); font-size: 17px; line-height: 1.6; }
.gd-prose { max-width: var(--measure); }
.gd-prose > :last-child, .gd-sec > :last-child { margin-bottom: 0; }
.gd-prose ul { padding-inline-start: 20px; }
.gd-prose a, .gd-sec > p a, .gd-note a, .gd-sources a, .gd-table a:not(.lg-chip), .gd-cprose a, .gd-mail {
  color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1.5px; }
.gd-sec .lg-table-wrap { margin-top: var(--space-4); }
.gd-note { margin: var(--space-3) 0 0; font-size: 14px; color: var(--text-muted); }
.gd-list { margin: var(--space-3) 0 0; padding-inline-start: 20px; display: grid; gap: var(--space-2); font-size: 16px; line-height: 1.5; }
.gd-chips { margin-top: var(--space-3); }
.gd-sources { margin: 0; font-size: 14px; color: var(--text-muted); max-width: var(--measure); }
.gd-table td .lg-chips { gap: 6px; }
.gd-nowrap { white-space: nowrap; }

/* Audio in Tabellen */
.gd-say { display: inline-flex; align-items: center; gap: var(--space-2); }
.gd-say > span { display: grid; }

/* Hero-Panels */
.gd-panel-t { font: 800 22px/1.15 var(--font-display); }
.gd-wrow { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); }
.gd-wregion { font-size: 14px; }
.gd-cp-side { display: grid; justify-items: start; gap: var(--space-4); }
.gd-hero-hello { margin-top: var(--space-5); }
.gd-kpis { background: var(--surface); color: var(--text); }
.gd-kpi-sm { font-size: 17px !important; line-height: 1.25 !important; }

/* Sprachkarte */
.gd-lead-sec { max-width: var(--measure); margin-bottom: var(--space-5); }
.gd-map__fig { display: grid; gap: var(--space-4); min-width: 0; }
.gd-rname { font-size: 12px !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
[dir="rtl"] .gd-rname { text-transform: none; letter-spacing: 0; }
.gd-rnote { color: var(--text) !important; }
.lg-region__words b { font-weight: 700; }
.gd-noau { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 var(--space-3); border: 1px dashed var(--line-strong); border-radius: var(--radius-full); font-size: 14px; }
.gd-noau small { color: var(--text-muted); }
.gd-ctile { padding: var(--space-3); }
.gd-ctile .lg-tile__head { display: block; }
.gd-ctile .lg-minimap { height: 150px; }

/* Aktionsseiten */
.gd-box { max-width: var(--measure); padding: var(--space-5) var(--space-6); border-radius: var(--radius-md); background: var(--highlight-soft); border-inline-start: 6px solid var(--highlight); }
.gd-box p { margin: 0; font-size: 18px; line-height: 1.55; }
.gd-cprose h2 { margin-top: 0; }
.gd-hello { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr)); }
.gd-hello__i { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); min-width: 0; }
.gd-hello__txt { display: grid; gap: 2px; min-width: 0; }
.gd-hello__t { font: 700 20px/1.2 var(--font-display); overflow-wrap: anywhere; }
.gd-hello__ph { font-size: 14px; color: var(--text-muted); }
.gd-hello__n { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--text-muted); }
.gd-idea .gd-list { margin-top: 0; font-size: 15px; }
.gd-rel h3 { margin: 0; }
.gd-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.gd-two { display: grid; gap: var(--space-6); grid-template-columns: minmax(0, 1fr); align-items: start; }
@container lg (min-width: 900px) { .gd-two { grid-template-columns: 7fr 4fr; } }
.gd-cite-h { font: 750 20px/1.2 var(--font-display); margin: 0; }
.gd-cite-p { margin: 0; font-size: 15px; }
.gd-mat-p { margin: 0; font-size: 14px; }
.gd-stack { min-width: 0; max-width: 420px; }

/* Diagramme + Einbettungscode */
.gd-charts { grid-template-columns: repeat(auto-fill, minmax(min(100%, 440px), 1fr)); }
.gd-chart { margin: 0; }
.gd-embed-h { margin: 0; font-size: 13px; color: var(--text-muted); }
.gd-embed-h b { color: var(--text); }
.gd-embed { flex: 1 1 200px; min-width: 0; padding: var(--space-2) var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface-sunken); color: var(--text);
  font: 13px/1.4 ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace; resize: vertical; direction: ltr; text-align: left; }
.gd-embed:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.gd-cols .lg-cols__x span { min-width: 0; overflow: visible; }

/* Quiz (js/campaign.js rendert, guides.php ergänzt lg-Klassen) */
.gd-quiz { max-width: 760px; }
.gd-quiz .cp-opts { display: grid; gap: var(--space-2); }
.gd-quiz .lg-opt { text-align: start; color: var(--text); font: 600 17px/1.3 var(--font-text); cursor: pointer; }
.gd-quiz .cp-reason { margin: 0; font-size: 17px; line-height: 1.55; }
.gd-quiz .cp-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.gd-quiz .cp-also { margin: 0; color: var(--text-muted); }
.gd-quiz .cp-also a { color: var(--accent-text); }
.gd-quiz .cp-q-result { font-size: 32px; }

@media print {
  body:has([data-cp-print]) :is(.lg-header, .lg-footer, .lg-ad, .lg-anchor, .lg-header__iosbar, .lg-embed, .lg-hero__actions, .gd-actions) { display: none !important; }
  body:has([data-cp-print]) .lg-hero--campaign { background: none; color: inherit; }
}
.gd-cgrid { margin-top: var(--space-4); }
/* Länder-Übersicht: die Deutschlandkarte im Hero ist mobil nur Deko — die Kacheln darunter zeigen alle Karten. */
@container lg (max-width: 959px) { .lg-hero__side:has(> .gd-heromap) { display: none; } }
