/* Pegnitzer Biergarten — Öffnungszeiten Widget */

.bg-oeff {
  font-family: 'Roboto Slab', Georgia, serif;
  color: #383837;
  text-align: left;
  max-width: 320px;
  margin: 0 auto;
}

.bg-oeff__status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .55);
  font-size: 1.05rem;
  line-height: 1.2;
  margin-bottom: 14px;
}

.bg-oeff__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #B33A3A;
  flex: 0 0 auto;
}

.bg-oeff--open .bg-oeff__dot { background: #4a7a2a; }
.bg-oeff--open_closes_soon .bg-oeff__dot,
.bg-oeff--closed_opens_soon .bg-oeff__dot,
.bg-oeff--closed_will_open_today .bg-oeff__dot { background: #B4884B; }

.bg-oeff--open .bg-oeff__msg { color: #2c4d12; }
.bg-oeff--open_closes_soon .bg-oeff__msg,
.bg-oeff--closed_opens_soon .bg-oeff__msg,
.bg-oeff--closed_will_open_today .bg-oeff__msg { color: #6e4f15; }
.bg-oeff--closed_next_day .bg-oeff__msg,
.bg-oeff--closed_no_next .bg-oeff__msg { color: #8a2929; }

.bg-oeff__reason {
  font-style: italic;
  margin: -6px 0 14px;
  color: #6c6c6b;
}

.bg-oeff__week {
  list-style: none;
  padding: 0;
  margin: 0 0 14px;
}

.bg-oeff__week li {
  padding: 4px 0;
}

.bg-oeff__row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.bg-oeff__week li.is-today { font-weight: 700; color: #445136; }

.bg-oeff__day  { text-align: left; }
.bg-oeff__time { text-align: right; font-variant-numeric: tabular-nums; }
.bg-oeff__day small { font-weight: 400; color: #6c6c6b; margin-left: 2px; }

.bg-oeff__time-old {
  color: #6c6c6b;
  font-size: .9em;
  font-weight: 400;
  text-decoration: line-through;
  margin-right: 4px;
}

.bg-oeff__week li.is-exception {
  background: rgba(180, 136, 75, .14);
  border-left: 3px solid #B4884B;
  margin: 4px -10px;
  padding: 6px 10px 6px 12px;
  border-radius: 0 3px 3px 0;
}

.bg-oeff__week li.is-closed-exception .bg-oeff__time {
  color: #8a2929;
  font-style: italic;
}

.bg-oeff__exc-note {
  font-style: italic;
  color: #6c6c6b;
  font-size: .9em;
  margin-top: 2px;
}

.bg-oeff__notes {
  margin: 0 0 14px;
  padding: 10px 12px;
  background: rgba(180, 136, 75, .15);
  border-left: 3px solid #B4884B;
  font-size: .95rem;
}

.bg-oeff__notes strong { display: block; margin-bottom: 4px; color: #6e4f15; }
.bg-oeff__notes ul { list-style: none; margin: 0; padding: 0; }
.bg-oeff__notes li { padding: 2px 0; }
.bg-oeff__notes em { color: #6c6c6b; }

.bg-oeff__kitchen {
  margin: 0;
  padding-top: 8px;
  border-top: 1px dashed rgba(68, 81, 54, .3);
  color: #445136;
}
