/* ═══════════════════════════════════════════════════════════════════════════
   BLUE HORIZON DESIGN SYSTEM — components/link.css
   Version: 0.1.0 · Build: 2026-10-01

   Ein Verweis, der als Verweis erkennbar sein muss, aber kein Knopf ist.

   DIE REGEL DAHINTER, und sie ist eine Anforderung, keine Geschmacksfrage:
   Verweise sehen in diesem System NICHT wie Verweise aus. base.css setzt
   `a { color: inherit }`. Akzentfarbe im Ruhezustand gibt es ausschliesslich
   dort, wo ein Verweis im Fliesstext sonst unauffindbar waere.

   Daraus folgt die Bauart hier: Die Ruhefarbe ist --bh-text-tertiary, also
   schwaecher als Haupttext und kraeftiger als --bh-text-muted. Der Verweis
   ist abgesetzt, ohne farbig zu sein. Den Akzent gibt es erst im Hover.

   WARUM DIESE DATEI ERST JETZT ENTSTEHT: Das Muster war schon dreimal da,
   mit wortgleichen Deklarationen — .bh-section__link (patterns/overview.css
   208), .bh-public__footer-link (patterns/public.css 161) und .link im Team
   Hub. Alle drei sind aber an einen ORT gebunden: an einen Sektionskopf, an
   eine Fusszeile, an ein Projekt. Fuer einen Verweis in einem Feldwert, einer
   Tabellenzelle oder einer Filterzeile gab es nichts. Eine Namenslueke, keine
   Stilluecke — deshalb traegt diese Datei nichts Neues bei ausser dem Namen.
   Die drei bestehenden Stellen koennen hierauf zusammengefuehrt werden; das
   steht im BACKLOG und ist nicht Teil dieser Version.
   ═══════════════════════════════════════════════════════════════════════════ */

.bh-link {
  display: inline-flex;
  align-items: center;
  gap: var(--bh-space-1);
  color: var(--bh-text-tertiary);
  font-size: var(--bh-text-sm);
  font-weight: var(--bh-weight-medium);
  /* Haelt "Alle Termine ›" zwischen Text und Zeichen zusammen. Wer laengeren
     Text verlinkt, nimmt --inline oder --plain; beide heben es auf. */
  white-space: nowrap;
  transition: color var(--bh-transition);
}
.bh-link:hover  { color: var(--bh-color-accent); }
.bh-link:active { color: var(--bh-color-accent-bright); }

/* ── Im Fliesstext ──────────────────────────────────────────────────────────
   Die benannte Ausnahme der Regel: Mitten in einem Satz reicht ein
   Farbwechsel im Hover nicht, weil niemand einen Satz mit der Maus abtastet,
   um Verweise zu finden. Hier also Akzentfarbe UND Unterstreichung im
   Ruhezustand — dieselbe Entscheidung, die .bh-prose a fuer ganze
   Textbloecke trifft, nur fuer einen einzelnen Verweis.

   Nimmt Schriftgroesse und -gewicht der Umgebung an: Ein Verweis in einem
   Satz ist Teil des Satzes und darf dessen Zeilenbild nicht stoeren. */
.bh-link--inline {
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  white-space: normal;
  color: var(--bh-color-accent);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.bh-link--inline:hover { color: var(--bh-color-accent-bright); }

/* ── Ohne eigene Schrift ────────────────────────────────────────────────────
   Fuer Verweise, die in einer Umgebung mit eigener Schrift stehen — eine
   Mono-Spalte mit Kennungen etwa. Dort wuerde die Grundgroesse dieser
   Komponente die Spaltenbreite verschieben. Farbe und Hover bleiben. */
.bh-link--plain {
  font-size: inherit;
  font-weight: inherit;
  white-space: normal;
}

/* ── Zurueck ────────────────────────────────────────────────────────────────
   Der Pfeil steht im Stylesheet und nicht im Markup, weil er Dekoration ist:
   Ein Screenreader soll "Zurueck zur Uebersicht" vorlesen, nicht
   "Pfeil nach links Zurueck zur Uebersicht". */
.bh-link--back::before {
  content: '←';
  transition: transform var(--bh-transition);
}
.bh-link--back:hover::before { transform: translateX(-2px); }
