/* Anvil Lesepfade -- Uebersicht, Pfad, Station-Box. Farben aus dem Theme. */

.alp-uebersicht .alp-stufe-titel { margin: 1.6rem 0 .6rem; color: var(--gold, #c9a227); font-size: 1.05rem; letter-spacing: .04em; text-transform: uppercase; }
.alp-karten { display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: 1rem; }
.alp-karte { border: 1px solid var(--border, #444); border-radius: var(--radius-md, 6px); background: var(--bg-card, rgba(255,255,255,.03)); padding: 1rem 1.1rem 1.2rem; position: relative; }
.alp-karte-fertig { border-color: var(--accent, #c9a227); }
.alp-karte-titel { margin: 0 0 .5rem; font-size: 1.05rem; }
.alp-karte-titel a { color: var(--gold, #c9a227); text-decoration: none; }
.alp-karte-titel a:hover { text-decoration: underline; }
.alp-karte-text p { margin: 0 0 .6rem; font-size: .9rem; color: var(--text-muted, #bbb); }
.alp-karte-meta { margin: .4rem 0 .4rem; font-size: .75rem; font-family: 'Share Tech Mono', monospace; color: var(--text-dim, #888); }
.alp-fortschritt { color: var(--accent, #c9a227); }
.alp-balken { height: 3px; background: var(--border, #444); border-radius: 2px; overflow: hidden; }
.alp-balken-fuellung { display: block; height: 100%; background: var(--accent, #c9a227); transition: width .3s; }

.alp-pfad-meta { font-family: 'Share Tech Mono', monospace; font-size: .75rem; color: var(--text-dim, #888); letter-spacing: .04em; text-transform: uppercase; }
.alp-pfad-titel-en { margin: -.4rem 0 .8rem; color: var(--text-muted, #bbb); }
.alp-pfad-text p { font-size: 1.02rem; }
.alp-weiterlesen { margin: 1rem 0 1.4rem; padding: .8rem 1rem; border: 1px solid var(--accent, #c9a227); border-radius: var(--radius-md, 6px); background: var(--bg-card, rgba(255,255,255,.03)); display: flex; flex-wrap: wrap; gap: .6rem 1.2rem; align-items: center; }
.alp-weiterlesen-link { font-weight: 600; color: var(--gold, #c9a227); text-decoration: none; }
.alp-weiterlesen-link:hover { text-decoration: underline; }
.alp-zuruecksetzen { background: none; border: 1px solid var(--border, #444); color: var(--text-dim, #888); border-radius: 4px; padding: .2rem .6rem; font-size: .75rem; cursor: pointer; }
.alp-zuruecksetzen:hover { color: var(--text-body, #eee); border-color: var(--text-dim, #888); }

.alp-stationen { list-style: none; margin: 1rem 0 0; padding: 0; counter-reset: none; }
.alp-station { position: relative; padding: .9rem 0 .9rem 3rem; border-top: 1px solid var(--border, #444); }
.alp-station:last-child { border-bottom: 1px solid var(--border, #444); }
.alp-station-nr { position: absolute; left: 0; top: .85rem; width: 2rem; height: 2rem; border-radius: 50%; border: 1px solid var(--accent, #c9a227); color: var(--accent, #c9a227); display: flex; align-items: center; justify-content: center; font-family: 'Share Tech Mono', monospace; font-size: .85rem; }
/* Schrift auf Akzent: --on-accent, das gepruefte Paar (seit 0.1.3). */
.alp-station-gelesen-ja .alp-station-nr { background: var(--accent, #c9a227); color: var(--on-accent, #111); }
.alp-station-kopf { display: flex; flex-wrap: wrap; gap: .3rem .6rem; align-items: baseline; }
.alp-station-titel { font-weight: 600; font-size: 1.02rem; color: var(--gold, #c9a227); text-decoration: none; }
a.alp-station-titel:hover { text-decoration: underline; }
.alp-station-fehlt .alp-station-titel { color: var(--text-dim, #888); }
.alp-station-hinweis, .alp-station-typ { font-size: .72rem; font-family: 'Share Tech Mono', monospace; color: var(--text-dim, #888); text-transform: uppercase; letter-spacing: .04em; }
.alp-station-gelesen { font-size: .75rem; color: var(--accent, #c9a227); }
.alp-station-text p { margin: .4rem 0 0; color: var(--text-muted, #bbb); font-size: .95rem; }
.alp-leer, .alp-leer-gesamt { color: var(--text-dim, #888); font-style: italic; }

.alp-station-box { margin: 2rem 0 0; padding: 1rem 1.2rem; border: 1px solid var(--border, #444); border-left: 3px solid var(--accent, #c9a227); border-radius: var(--radius-md, 6px); background: var(--bg-card, rgba(255,255,255,.03)); }
.alp-eintrag + .alp-eintrag { margin-top: .8rem; padding-top: .8rem; border-top: 1px dashed var(--border, #444); }
.alp-eintrag-kopf { margin: 0 0 .3rem; font-size: .8rem; font-family: 'Share Tech Mono', monospace; letter-spacing: .03em; color: var(--text-dim, #888); }
.alp-eintrag-kopf a { color: var(--gold, #c9a227); }
.alp-eintrag.is-aktiv .alp-eintrag-kopf { color: var(--accent, #c9a227); }
.alp-eintrag-nachbarn { margin: 0; display: flex; flex-wrap: wrap; gap: .4rem 1.5rem; }
.alp-eintrag-nachbarn a { color: var(--gold, #c9a227); text-decoration: none; font-weight: 600; }
.alp-eintrag-nachbarn a:hover { text-decoration: underline; }
.alp-ende { color: var(--text-dim, #888); font-style: italic; }
.alp-eintrag-text p { margin: .5rem 0 0; font-size: .9rem; color: var(--text-muted, #bbb); }

.alp-weiter { margin: 1rem 0; padding: .8rem 1rem; border: 1px solid var(--accent, #c9a227); border-radius: var(--radius-md, 6px); background: var(--bg-card, rgba(255,255,255,.03)); }
.alp-weiter-kopf { margin: 0 0 .2rem; font-size: .72rem; font-family: 'Share Tech Mono', monospace; letter-spacing: .04em; text-transform: uppercase; color: var(--text-dim, #888); }
.alp-weiter-inhalt { margin: 0; }
.alp-weiter-inhalt a { color: var(--gold, #c9a227); font-weight: 600; }

/* Das hidden-Attribut muss gegen die display-Regeln oben gewinnen. */
.alp-weiterlesen[hidden], .alp-weiter[hidden], .alp-fortschritt[hidden], .alp-station-gelesen[hidden], .alp-weiterlesen-link[hidden] { display: none !important; }
