/* ==========================================================
   STT Post Production - Schedule Clean Rebuild V35
   ========================================================== */

:root {
  --stt-v35-font: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* ----------------------------------------------------------
   Scope only when JS confirms this is the schedule page.
   ---------------------------------------------------------- */
body.stt-v35-schedule-page {
  --stt-v35-text: 13.5px;
  --stt-v35-event: 14.5px;
}

/* ----------------------------------------------------------
   TOP SMALL COPY
   ---------------------------------------------------------- */
body.stt-v35-schedule-page .stt-v35-stat-label {
  font-family: var(--stt-v35-font) !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 760 !important;
  letter-spacing: .02em !important;
}

body.stt-v35-schedule-page .stt-v35-stat-sub {
  font-family: var(--stt-v35-font) !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
}

body.stt-v35-schedule-page .stt-v35-eyebrow {
  font-family: var(--stt-v35-font) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 780 !important;
  letter-spacing: .055em !important;
}

body.stt-v35-schedule-page .stt-v35-legend,
body.stt-v35-schedule-page .stt-v35-legend * {
  font-family: var(--stt-v35-font) !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
}

body.stt-v35-schedule-page .stt-v35-pill {
  font-family: var(--stt-v35-font) !important;
  font-size: 11.8px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

body.stt-v35-schedule-page .stt-v35-control,
body.stt-v35-schedule-page .stt-v35-control * {
  font-family: var(--stt-v35-font) !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
}

/* ----------------------------------------------------------
   CALENDAR TABLE — THE IMPORTANT V35 GUARANTEE
   No semantic guessing. Every descendant gets a readable floor.
   ---------------------------------------------------------- */
body.stt-v35-schedule-page table.stt-v35-calendar,
body.stt-v35-schedule-page table.stt-v35-calendar * {
  font-family: var(--stt-v35-font) !important;
}

/*
 * Every text-bearing HTML element inside calendar cells:
 * customer names can no longer remain at 8px even when nested in <small>.
 */
body.stt-v35-schedule-page table.stt-v35-calendar td,
body.stt-v35-schedule-page table.stt-v35-calendar td div,
body.stt-v35-schedule-page table.stt-v35-calendar td span,
body.stt-v35-schedule-page table.stt-v35-calendar td small,
body.stt-v35-schedule-page table.stt-v35-calendar td strong,
body.stt-v35-schedule-page table.stt-v35-calendar td b,
body.stt-v35-schedule-page table.stt-v35-calendar td em,
body.stt-v35-schedule-page table.stt-v35-calendar td i,
body.stt-v35-schedule-page table.stt-v35-calendar td a,
body.stt-v35-schedule-page table.stt-v35-calendar td p {
  font-size: var(--stt-v35-text) !important;
  line-height: 1.25 !important;
  transform: none !important;
  scale: 1 !important;
  zoom: 1 !important;
}

body.stt-v35-schedule-page table.stt-v35-calendar th,
body.stt-v35-schedule-page table.stt-v35-calendar th * {
  font-family: var(--stt-v35-font) !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 720 !important;
  transform: none !important;
  scale: 1 !important;
  zoom: 1 !important;
}

/* Day number */
body.stt-v35-schedule-page table.stt-v35-calendar .stt-v35-day-number {
  font-size: 13px !important;
  line-height: 1.1 !important;
  font-weight: 720 !important;
}

/* ----------------------------------------------------------
   EVENT BAR — all descendants explicitly larger than cell text.
   ---------------------------------------------------------- */
body.stt-v35-schedule-page .stt-v35-event {
  min-height: 28px !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  overflow: hidden !important;
}

body.stt-v35-schedule-page .stt-v35-event,
body.stt-v35-schedule-page .stt-v35-event div,
body.stt-v35-schedule-page .stt-v35-event span,
body.stt-v35-schedule-page .stt-v35-event small,
body.stt-v35-schedule-page .stt-v35-event strong,
body.stt-v35-schedule-page .stt-v35-event b,
body.stt-v35-schedule-page .stt-v35-event em,
body.stt-v35-schedule-page .stt-v35-event i,
body.stt-v35-schedule-page .stt-v35-event a,
body.stt-v35-schedule-page .stt-v35-event p {
  font-family: var(--stt-v35-font) !important;
  font-size: var(--stt-v35-event) !important;
  line-height: 1.22 !important;
  transform: none !important;
  scale: 1 !important;
  zoom: 1 !important;
}

body.stt-v35-schedule-page .stt-v35-event strong,
body.stt-v35-schedule-page .stt-v35-event b {
  font-weight: 780 !important;
}

/* ----------------------------------------------------------
   RIGHT SELECTED-DAY PANEL — second V35 guarantee.
   Everything readable, then key lines get larger sizes.
   ---------------------------------------------------------- */
body.stt-v35-schedule-page .stt-v35-day-panel,
body.stt-v35-schedule-page .stt-v35-day-panel div,
body.stt-v35-schedule-page .stt-v35-day-panel span,
body.stt-v35-schedule-page .stt-v35-day-panel small,
body.stt-v35-schedule-page .stt-v35-day-panel strong,
body.stt-v35-schedule-page .stt-v35-day-panel b,
body.stt-v35-schedule-page .stt-v35-day-panel p,
body.stt-v35-schedule-page .stt-v35-day-panel em,
body.stt-v35-schedule-page .stt-v35-day-panel i {
  font-family: var(--stt-v35-font) !important;
  font-size: 13.5px !important;
  line-height: 1.38 !important;
  transform: none !important;
  scale: 1 !important;
  zoom: 1 !important;
}

body.stt-v35-schedule-page .stt-v35-panel-eyebrow {
  font-size: 12.5px !important;
  line-height: 1.2 !important;
  font-weight: 780 !important;
  letter-spacing: .045em !important;
}

body.stt-v35-schedule-page .stt-v35-panel-date {
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 780 !important;
}

body.stt-v35-schedule-page .stt-v35-panel-customer {
  font-size: 15.5px !important;
  line-height: 1.25 !important;
  font-weight: 790 !important;
}

body.stt-v35-schedule-page .stt-v35-panel-category,
body.stt-v35-schedule-page .stt-v35-panel-project,
body.stt-v35-schedule-page .stt-v35-panel-status {
  font-size: 13.5px !important;
  line-height: 1.3 !important;
}

body.stt-v35-schedule-page .stt-v35-panel-category,
body.stt-v35-schedule-page .stt-v35-panel-status {
  font-weight: 730 !important;
}

/* ----------------------------------------------------------
   Remaining small visible leaf copy in schedule content.
   ---------------------------------------------------------- */
body.stt-v35-schedule-page .stt-v35-readable {
  font-family: var(--stt-v35-font) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

/* Sidebar: only tiny descriptive text. */
.sidebar .stt-v35-sidebar-readable {
  font-family: var(--stt-v35-font) !important;
  font-size: 11.5px !important;
  line-height: 1.35 !important;
}

.sidebar .brand::after {
  font-family: var(--stt-v35-font) !important;
  font-size: 8.5px !important;
  line-height: 1.25 !important;
  letter-spacing: .045em !important;
}

/* ----------------------------------------------------------
   Mobile/tablet
   ---------------------------------------------------------- */
@media (max-width: 900px) {
  body.stt-v35-schedule-page {
    --stt-v35-text: 12.5px;
    --stt-v35-event: 12.5px;
  }

  body.stt-v35-schedule-page .stt-v35-event {
    min-height: 24px !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }

  body.stt-v35-schedule-page .stt-v35-day-panel,
  body.stt-v35-schedule-page .stt-v35-day-panel div,
  body.stt-v35-schedule-page .stt-v35-day-panel span,
  body.stt-v35-schedule-page .stt-v35-day-panel small,
  body.stt-v35-schedule-page .stt-v35-day-panel strong,
  body.stt-v35-schedule-page .stt-v35-day-panel b,
  body.stt-v35-schedule-page .stt-v35-day-panel p {
    font-size: 12.5px !important;
  }

  body.stt-v35-schedule-page .stt-v35-panel-customer {
    font-size: 14.5px !important;
  }
}