/* WoE schedule (module=woe) */

/* ---------- status card: live status | server clock and the visitor's time zone ---------- */
.woe-now__card { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 16px 24px; }
.woe-now__card.is-live { border-color: rgba(52, 211, 153, .4); }
.woe-now__card.is-live::before { background: var(--lk-success); }
.woe-now__icon { align-self: start; margin-top: 2px; }
.woe-now__body { min-width: 0; }
.woe-now__title { margin: 0 0 6px !important; }
.woe-now__status { margin: 0; font-family: var(--lk-font-display); font-size: var(--lk-fs-xl); font-weight: 700; line-height: 1.3; color: #fff; }
.woe-now__status strong { color: var(--lk-purple-200); font-weight: 800; }
.woe-now__in { color: var(--lk-text-2); font-weight: 600; white-space: nowrap; }
.woe-now__badge { margin-right: 10px; vertical-align: 3px; font-family: var(--lk-font); }
.woe-now__local { margin: 4px 0 0; color: var(--lk-text-2); }
.woe-now__facts { display: grid; gap: 12px; margin: 0; padding-left: 24px; border-left: 1px solid var(--lk-line); font-size: var(--lk-fs-sm); }
.woe-now__facts > div { min-width: 0; }
.woe-now__facts dt { font-size: var(--lk-fs-xs); font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--lk-text-3); }
.woe-now__facts dd { margin: 2px 0 0; color: var(--lk-text); font-variant-numeric: tabular-nums; }
@media (max-width: 860px) {
  .woe-now__card { grid-template-columns: auto minmax(0, 1fr); }
  .woe-now__facts { grid-column: 2; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); padding: 14px 0 0; border-left: 0; border-top: 1px solid var(--lk-line); }
}
@media (max-width: 480px) {
  .woe-now__card { grid-template-columns: minmax(0, 1fr); }
  .woe-now__icon { display: none; }
  .woe-now__facts { grid-column: 1; }
}

/* ---------- weekly table: one row per session, days grouped ---------- */
.woe-week__table thead th { white-space: normal; vertical-align: bottom; }
.woe-week__table th.woe-week__day { width: 1%; }
.woe-week__tz { display: block; margin-top: 3px; font-size: 12.5px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--lk-text-2); }
/* row headers (day names) are not column headers: no sticky header look */
.woe-week__table tbody th {
  position: static; z-index: auto; background: none; border-bottom: 0;
  font-size: 14.5px; font-weight: 700; letter-spacing: 0; text-transform: none; color: #fff;
}
.woe-week__table tbody td { border-bottom: 0; font-variant-numeric: tabular-nums; }
.woe-week__table tbody tr > * { padding-top: 7px; padding-bottom: 7px; }
.woe-week__table tbody tr.is-first > * { padding-top: 14px; }
.woe-week__table tbody tr.is-last > * { padding-bottom: 14px; }
.woe-week__table tbody tr.is-first:not(:first-child) > * { border-top: 1px solid var(--lk-line); }
.woe-week__row.is-off th { color: var(--lk-text-2); }
.woe-week__row.is-live > * { background: rgba(52, 211, 153, .08); }
.woe-week__row.is-next > * { background: rgba(161, 53, 255, .1); }
.woe-week__range { white-space: nowrap; color: var(--lk-text); font-weight: 600; }
.woe-week__flag { margin-left: 6px; vertical-align: 1px; }
.woe-week__none { color: var(--lk-text-3); }
.woe-week__yours { color: var(--lk-text-2); white-space: nowrap; }
.woe-week__short { display: none; }

@media (max-width: 560px) {
  .woe-now__status { font-size: var(--lk-fs-lg); }
  .woe-week__table, .woe-week__table tbody th { font-size: 13.5px; }
  .woe-week__table th, .woe-week__table td { padding-left: 10px; padding-right: 10px; }
  /* three letter day names; the full name stays for screen readers */
  .woe-week__long { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  .woe-week__short { display: inline; }
}

/* legacy schedule table (woe/custom view) */
.woe-schedule .woe-server { font-weight: 700; color: #fff; vertical-align: top; border-right: 1px solid var(--lk-line); }
.woe-schedule .woe-time { white-space: nowrap; color: var(--lk-text); font-weight: 600; }
.woe-schedule .woe-time .lk-badge { margin-left: 6px; font-variant-numeric: tabular-nums; }
.woe-schedule .woe-sep { width: 1%; color: var(--lk-text-3); text-align: center; }

/* empty state (no WoE hours configured) */
.woe-links { justify-content: center; margin-top: 18px; }
/* buttons inside an empty state keep their normal icon size */
.lk-empty .lk-btn i { display: inline-block; margin: 0; font-size: .95em; color: inherit; opacity: 1; }
