/* Taktfink: Slogan in der Mitte des Portal-Kopfes. Schrift Satoshi aus fonts.css (liegt auf dem eigenen Server). */
.portal-slogan {
  flex: 1 1 auto;
  margin: 0;
  padding: 0 12px;
  text-align: center;
  font-family: 'Satoshi', system-ui, sans-serif;
  font-weight: 500;
  font-size: clamp(18px, 2.4vw, 26px);
  line-height: 1.15;
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .18);
  overflow-wrap: anywhere;
}

@media (max-width: 700px) {
  .portal-slogan {
    order: 3;
    flex: 0 0 100%;
    padding: 4px 0 0;
    font-size: 22px;
  }
}

/* Hinweise oben auf den Seiten: eine einheitliche Karte, die Art erkennt man am farbigen Streifen links */
.hinweis-stapel { display: grid; gap: 8px; margin: 12px 16px 0; }
.hinweis-karte {
  --akzent: #147f94;
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 12px 16px 12px 20px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid #e1e6ee;
  box-shadow: 0 1px 2px rgba(20, 30, 40, .06);
  font: 15px/1.45 system-ui, sans-serif;
  color: #1d2430;
  text-decoration: none;
}
.hinweis-karte::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 4px;
  border-radius: 4px;
  background: var(--akzent);
}
.hinweis-karte strong { font-weight: 600; }
.hinweis-karte .hinweis-art {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .02em;
  color: var(--akzent);
  text-transform: uppercase;
}
.hinweis-karte .hinweis-text { flex: 1 1 auto; min-width: 0; }
.hinweis-karte.geburtstag { --akzent: #c2571a; }
.hinweis-karte.krank { --akzent: #b3261e; }
.hinweis-karte.nachricht { --akzent: #147f94; }
.hinweis-karte.nachricht.dringend { --akzent: #b3261e; }
.hinweis-karte.termin { --akzent: #1f5fa8; }
.hinweis-karte.erinnerung-typ { --akzent: #b08a1e; }
.hinweis-karte.erinnerung-typ.heute { --akzent: #b3261e; }
.hinweis-karte.zimmer { --akzent: #2e8b57; }
.kein-druck > .hinweis-karte { margin: 10px 16px 0; }
.kein-druck > .hinweis-karte + .hinweis-karte { margin-top: 8px; }
.spalte-links > .hinweis-karte { margin: 0 0 10px; }
.hinweis-mehr { margin: 2px 4px 6px; font: 13px/1.4 system-ui, sans-serif; color: #5a6474; }
.hinweis-karte .lampe-licht { display: none; }

/* Der Kasten mit allen Hinweisen: klein, ruhig, untereinander */
.infos-box { margin: 10px 16px 0; background: #fff; border: 1px solid #e1e6ee; border-radius: 14px; overflow: hidden; box-shadow: 0 1px 2px rgba(20, 30, 40, .05); }
.infos-kopf { display: flex; align-items: center; padding: 8px 14px; font: 600 14px system-ui, sans-serif; color: #3b4454; background: #f7f9fb; cursor: pointer; list-style: none; user-select: none; }
.infos-kopf::-webkit-details-marker { display: none; }
.infos-kopf::after { content: '▾'; margin-left: auto; font-size: 16px; color: #5a6474; transition: transform .2s; }
.infos-box[open] > .infos-kopf { border-bottom: 1px solid #e1e6ee; }
.infos-box[open] > .infos-kopf::after { transform: rotate(180deg); }
.hinweis-karte.abwesend { --akzent: #5a6474; }
.infos-zeile.hinweis-karte { margin: 0; padding: 7px 14px; border: 0; border-bottom: 1px solid #f0f2f5; border-radius: 0; box-shadow: none; font: 14px/1.35 system-ui, sans-serif; background: #fff; }
.infos-zeile.hinweis-karte:last-child { border-bottom: 0; }
.infos-zeile.hinweis-karte::before { position: static; width: 8px; height: 8px; border-radius: 50%; top: auto; bottom: auto; flex: 0 0 8px; }
.spalte-links > .infos-box { margin-left: 0; margin-right: 0; }
.infos-zeile .hinweis-schliessen {
  flex: 0 0 auto;
  margin-left: auto;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #5a6474;
  font: 20px/1 system-ui, sans-serif;
  cursor: pointer;
}
.infos-zeile .hinweis-schliessen:hover,
.infos-zeile .hinweis-schliessen:focus-visible { background: #eef1f5; color: #1d2430; outline: none; }
