/* === offen ===========================================================
   Der leuchtende Punkt vor den Öffnungszeiten.
   Christopher, 03.10.2026: „Ich möchte einen grünen oder leuchtenden Punkt
   vor den Öffnungszeiten. Je nachdem, ob es innerhalb der Öffnungszeiten
   ist, leuchtet es grün oder rot."

   Zwei Farbwerte stehen bewusst NICHT in den Haustoken: Grün und Rot gibt
   es dort nicht, und aus Blau und Gold lässt sich „offen" und „zu" nicht
   bauen — es ist genau das, was er bestellt hat. Beide sind auf den hellen,
   warmen Grund abgestimmt und bleiben auf diesen einen Punkt beschränkt;
   sie gelten nirgends sonst im Theme.

   Der Zustand steht nicht im HTML (die Seite ist zwischengespeichert),
   sondern wird von assets/js/offen.js gesetzt. Ohne JavaScript bleibt der
   Punkt verborgen und behauptet nichts.
   ==================================================================== */

.offen-punkt{
  --offen-licht:var(--text-leise);
  --offen-hof:rgba(107,118,134,.18);
  --offen-hof-aus:rgba(107,118,134,0);

  display:inline-flex; align-items:center;
  vertical-align:middle;
  margin-inline-end:.5em;
  position:relative;
}

/* Vor dem Urteil von offen.js sagt der Punkt nichts. */
.offen-punkt[hidden]{ display:none }

.offen-punkt.ist-offen{
  --offen-licht:#2F8F5B;
  --offen-hof:rgba(47,143,91,.22);
  --offen-hof-aus:rgba(47,143,91,0);
}
.offen-punkt.ist-zu{
  --offen-licht:#C0392B;
  --offen-hof:rgba(192,57,43,.20);
  --offen-hof-aus:rgba(192,57,43,0);
}

.offen-licht{
  flex:none;
  width:.58em; height:.58em;
  border-radius:var(--r-rund);
  background:var(--offen-licht);
  box-shadow:0 0 0 .18em var(--offen-hof);
}

/* Sehr dezent: ein langsamer Atemzug, kein Blinken. */
.offen-punkt.ist-offen .offen-licht{
  animation:offen-puls 2.8s var(--weich) infinite;
}
@keyframes offen-puls{
  0%,100%{ box-shadow:0 0 0 .18em var(--offen-hof) }
  55%    { box-shadow:0 0 0 .52em var(--offen-hof-aus) }
}

/* Wer keine Bewegung will, bekommt einen stillen Punkt. */
@media (prefers-reduced-motion:reduce){
  .offen-punkt.ist-offen .offen-licht{ animation:none }
}

/* „Jetzt geöffnet" / „Jetzt geschlossen" — für Screenreader lesbar,
   im Bild unsichtbar. Der Punkt allein wäre für sie stumm. */
.offen-wort{
  position:absolute;
  width:1px; height:1px;
  margin:-1px; padding:0; border:0;
  overflow:hidden; white-space:nowrap;
  clip:rect(0 0 0 0); clip-path:inset(50%);
}
