/* Opening hours sign maker. The preview stage and the paper controls come from css/_print-kit.css. Borders: 1px hairline. */
#visu-tools .vt-opening-hours-sign .vt-oh-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
#visu-tools .vt-opening-hours-sign .vt-oh-week { margin-top: 20px !important; display: grid; gap: 8px; }
#visu-tools .vt-opening-hours-sign .vt-oh-week > legend { margin-bottom: 4px; }
#visu-tools .vt-opening-hours-sign .vt-oh-day { display: grid; grid-template-columns: 104px 116px minmax(0, 1fr); gap: 8px 10px; align-items: center; padding: 8px 0; border-top: 1px solid var(--vt-line); }
#visu-tools .vt-opening-hours-sign .vt-oh-name { font-size: 14.5px; font-weight: 600; color: var(--vt-ink); }
#visu-tools .vt-opening-hours-sign .vt-oh-day select { min-height: 42px; padding: 8px 10px !important; font-size: 15px !important; }
#visu-tools .vt-opening-hours-sign .vt-oh-times { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; min-width: 0; }
#visu-tools .vt-opening-hours-sign .vt-oh-pair { display: inline-flex; align-items: center; gap: 6px; color: var(--vt-muted); }
#visu-tools .vt-opening-hours-sign input[type=time] { width: 134px; min-height: 42px; padding: 8px 10px; border-radius: 12px; border: 1px solid var(--vt-line-2); background: #fff; color: var(--vt-ink);
  font: inherit; font-size: 15px; font-variant-numeric: tabular-nums; }
#visu-tools .vt-opening-hours-sign .vt-oh-add { font-size: 13.5px; }
#visu-tools .vt-opening-hours-sign #vt-oh-copyweek { margin-top: 2px; }
#visu-tools .vt-opening-hours-sign #vt-oh-warn { margin-top: 12px !important; }
#visu-tools .vt-opening-hours-sign :is(.vt-oh-opts, .vt-oh-extra, .vt-oh-look) { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--vt-line); }
#visu-tools .vt-opening-hours-sign .vt-oh-opts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 20px; align-items: start; }
#visu-tools .vt-opening-hours-sign .vt-oh-opts .vt-check { grid-column: 1 / -1; min-height: 0; }
#visu-tools .vt-opening-hours-sign .vt-oh-look { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 20px; align-items: start; }
#visu-tools .vt-opening-hours-sign .vt-oh-look .vt-pk-logo { grid-column: 1 / -1; }
#visu-tools .vt-opening-hours-sign .vt-oh-privacy { margin-top: 16px !important; }
#visu-tools .vt-opening-hours-sign .vt-oh-cta p { max-width: 78ch; }
@media (max-width: 600px) {
  #visu-tools .vt-opening-hours-sign :is(.vt-oh-grid, .vt-oh-opts, .vt-oh-look) { grid-template-columns: minmax(0, 1fr); }
  #visu-tools .vt-opening-hours-sign .vt-oh-day { grid-template-columns: minmax(0, 1fr) 128px; }
  #visu-tools .vt-opening-hours-sign .vt-oh-times { grid-column: 1 / -1; }
  #visu-tools .vt-opening-hours-sign input[type=time] { width: 126px; }
  #visu-tools .vt-opening-hours-sign .vt-seg-items:has(input[name="vt-oh-time"]) { flex-wrap: wrap; overflow-x: visible; margin: 0; padding: 0; }
}
