/* Use the actual schedule controller, time bounds and connected calendar. */
body { background: #f6f8fc; }
.sc-schedule-page-title { margin: 0 1.5rem .85rem; color: #14233f; font: 800 1.8rem/1.3 "Plus Jakarta Sans",sans-serif; }
.schedule-surface { border: 1px solid #e1e7f0; background: white; box-shadow: 0 3px 9px #14233f05; border-radius: .8rem; }
.schedule-toolbar { padding-block: .75rem; }
.schedule-btn { min-height: 44px; border-radius: .55rem; letter-spacing: 0; text-transform: none; }
.schedule-btn-primary { background: #1976f3; }
.schedule-view-switch { background: transparent; border: 0; gap: .35rem; padding: 0; }
.schedule-view-toggle { min-height: 44px; border-radius: .5rem; text-transform: none; letter-spacing: 0; font-size: .85rem; }
.schedule-view-toggle.is-active { background: #edf4ff; color: #175fc4; box-shadow: none; }
.sc-calendar-workspace { overflow: hidden; }
.sc-calendar-workspace h2 { font-size: 1.4rem; }
.schedule-board-grid { gap: 0; align-items: stretch; }
.schedule-day-column { border: 0; border-right: 1px solid #e1e7f0; border-radius: 0; padding: .65rem .4rem 0; gap: .5rem; background: white !important; box-shadow: none !important; }
.schedule-day-column:last-child { border-right: 0; }
.schedule-day-column[data-focus-level="primary"] { background: #f9fbff !important; }
.schedule-track { border: 0 !important; border-radius: 0; }
.schedule-track::before { display: none; }
.schedule-event-card { border-radius: .4rem; box-shadow: none; }
.schedule-event-title { line-height: 1.35; }
.schedule-event-location { font-size: .65rem; line-height: 1.4; }
.schedule-selected-day-panel:empty { display: none; }
@media(min-width:1024px) { .schedule-event-card { padding-inline: .5rem; } }
@media(max-width:767px) { .sc-schedule-page-title { margin-inline: 1rem; font-size: 1.4rem; } .schedule-day-column { padding-inline: .35rem; } }
html[data-sc-theme="dark"] body { background: #101827; }
html[data-sc-theme="dark"] .schedule-surface, html[data-sc-theme="dark"] .schedule-day-column { background: #182334 !important; border-color: #344258; }

.schedule-board-scroll { display: flex; align-items: start; }
.schedule-board-grid { flex: 1; }
.schedule-hours-rail { position: relative; flex: 0 0 3.4rem; color: #64748b; font: 500 .7rem/1.2 Inter,sans-serif; }
.schedule-hour-label { position: absolute; right: .55rem; transform: translateY(-50%); white-space: nowrap; }
.sc-calendar-workspace > div:first-child { align-items: center; flex-wrap: wrap; }
.sc-calendar-add-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.schedule-day-column > div:first-child { min-height: 3.7rem; }
@media(max-width:767px) { .schedule-hours-rail { flex-basis: 2.7rem; } }

.sc-calendar-workspace.schedule-surface { border-radius: .75rem !important; box-shadow: none !important; }
.sc-calendar-workspace .schedule-day-column { border-radius: 0 !important; border: 0 !important; border-right: 1px solid #e1e7f0 !important; padding: .65rem .35rem 0 !important; gap: .5rem !important; }
.sc-calendar-workspace .schedule-track { border: 0 !important; border-radius: 0 !important; }
.sc-calendar-workspace .schedule-day-column > div:first-child { min-height: 4rem; }
.sc-calendar-workspace .schedule-event-card { border-radius: .4rem !important; }

.sc-calendar-workspace .schedule-board-shell[data-view-mode] .schedule-track { border: 0 !important; border-radius: 0 !important; }
.sc-calendar-workspace [data-schedule-empty-day] { inset: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; font: 500 .7rem/1.4 Inter,sans-serif; letter-spacing: 0; text-transform: none; color: #8090a7; }
.sc-calendar-workspace [data-schedule-empty-day]:hover { background: #1976f308 !important; }
