/* =========================================================================
   Lesbarkeits-Nachzug für Dominacall24

   Gemessen am 06.09.2026: 1316 von 4499 geprüften Textstellen lagen unter
   der WCAG-Schwelle (4,5:1 bei normaler Schrift, 3:1 ab 24px oder ab
   18,66px fett). Grund: --c-sand-200 (138 118 96) kommt selbst bei voller
   Deckung nur auf 4,26 bis 4,41:1 gegen den dunklen Verlauf/die Karten —
   jede Transparenzstufe darunter (/40 bis /80) fällt zwangsläufig durch.

   Diese Datei hebt ausschließlich Textfarben an. Rahmen, Flächen, Verläufe
   und Schriftgrößen bleiben unangetastet — deshalb eine eigene Datei statt
   einer Änderung an resources/css/app.css (die Token dort tragen auch
   border-sand-200/30 und bg-sand-200/10-40, die nicht betroffen sind, und
   der Tailwind-Build ist ohnehin eingefroren).

   Nachgerechnet (WCAG 2.1, gegen den dunkelsten Grund rgb(26,10,20) und die
   Kartenfläche rgb(26,17,24)): 158 138 114 kommt auf 5,77:1 / 5,57:1, auf
   der noch helleren Ash-Fläche auf 4,74:1 — alle drei über der Schwelle.

   Wird nur eingebunden, wenn NICHT MissLiberty (siehe layouts/app.blade.php,
   layouts/provider.blade.php, layouts/guest.blade.php). Das :not(.ml-theme)
   hier ist eine zweite Absicherung für den Fall, dass eine Seite die Datei
   einmal ungeprüft mitzieht — es ändert nichts an MissLiberty, weil dort
   <html> die Klasse .ml-theme trägt.
   ========================================================================= */

:root:not(.ml-theme) {
    --dc-sand-t: 158 138 114;
    --dc-gold-t: 172 145 83;
}

html:not(.ml-theme) .text-sand-200,
html:not(.ml-theme) .text-sand-200\/80,
html:not(.ml-theme) .text-sand-200\/70,
html:not(.ml-theme) .text-sand-200\/60,
html:not(.ml-theme) .text-sand-200\/50,
html:not(.ml-theme) .text-sand-200\/40 { color: rgb(var(--dc-sand-t)); }

html:not(.ml-theme) .text-sand-100\/80,
html:not(.ml-theme) .text-sand-100\/70,
html:not(.ml-theme) .text-sand-100\/60 { color: rgb(var(--c-sand-100)); }

html:not(.ml-theme) .text-gold\/70,
html:not(.ml-theme) .text-gold\/60,
html:not(.ml-theme) .text-gold\/50,
html:not(.ml-theme) .text-gold\/40:not([aria-hidden="true"]) { color: rgb(var(--dc-gold-t)); }

html:not(.ml-theme) .placeholder-sand-200\/40::placeholder,
html:not(.ml-theme) .placeholder-sand-200\/50::placeholder { color: rgb(var(--dc-sand-t)); }

/* ------------------------------------------------ Anzeigenkarte ------ */

/*
 | Die ganze Karte klickbar, der Ort trotzdem ein echter Link.
 |
 | Vorher war die Karte EIN grosses <a>, und der Ortsname darin ein <span>
 | mit Alpine-Klick. Fuer Besucher klickbar, fuer Suchmaschinen nicht
 | vorhanden — auf Startseite, Suche, Stadt- und Bundeslandseiten. Links
 | ineinander sind in HTML nicht erlaubt, deshalb dieser Weg: Der Titellink
 | legt sich mit einem Pseudo-Element ueber die ganze Karte, der Ortslink
 | liegt mit z-index darueber.
 */
.dc-karte { position: relative; }
.dc-karte-haupt::after { content: ""; position: absolute; inset: 0; z-index: 0; }
.dc-karte-ort { position: relative; z-index: 1; }

/* ------------------------------------------------ Bildnachweis ------- */

/*
 | Die Zeile unter einem Bild im Artikel.
 |
 | Sie nennt Quelle und Fotograf — Pixabay wuenscht sich das so, auch wenn
 | es nicht verlangt ist. Klein, ruhig, deutlich abgesetzt vom Fliesstext,
 | damit niemand sie fuer einen Satz des Artikels haelt.
 */
.blog-content figure { margin: 2rem 0; }
.blog-content figure img { margin: 0; }

.blog-content figcaption,
.blog-content .bildnachweis {
    margin: .5rem 0 0;
    font-size: .8125rem;
    line-height: 1.5;
    color: rgb(var(--c-sand) / .55);
    letter-spacing: .01em;
}

.blog-content figcaption a,
.blog-content .bildnachweis a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
}
