.surgical-dashboard, .surgical-calendar-panel, .surgical-agenda { min-width: 0; }
.surgical-mobile-agenda { display: none; }
.surgical-heading { margin-bottom: 14px; }
.surgical-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; margin-bottom: 14px; }
.surgical-kpi, .surgical-card { background: #fff; border: 1px solid #d8e4ef; border-radius: 5px; box-shadow: 0 2px 8px rgba(24, 57, 89, .05); }
.surgical-kpi { min-height: 90px; display: flex; align-items: center; gap: 13px; padding: 12px; }
.surgical-kpi small { display: block; min-height: 30px; color: #36516d; font-size: .74rem; line-height: 1.25; }
.surgical-kpi strong { display: block; margin-top: 2px; color: #102e56; font-size: 1.6rem; }
.kpi-symbol { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 42px; border-radius: 7px; background: #e8f2ff; color: #0966cc; font-size: 1.5rem; font-weight: 700; }
.kpi-symbol.warning { background: #fff3db; color: #c47900; }
.kpi-symbol.success { background: #e2f7ed; color: #15965b; }
.kpi-symbol.danger { background: #ffe9ec; color: #c93245; }
.surgical-main-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(255px, 24%); align-items: start; gap: 12px; }
.surgical-card { overflow: hidden; }
.surgical-panel-head { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; padding: 13px 15px; border-bottom: 1px solid #d8e4ef; }
.surgical-panel-head h2, .surgical-rail-head h2 { margin: 0; color: #143e6e; font-size: 1.15rem; }
.surgical-panel-head p { margin: 3px 0 0; color: #617a92; font-size: .79rem; }
.surgical-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.surgical-controls .button { min-width: 31px; padding-inline: 8px; text-align: center; text-decoration: none; }
.surgical-rail { display: grid; gap: 10px; }
.surgical-rail-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 12px; border-bottom: 1px solid #d8e4ef; }
.surgical-rail-head h2 { font-size: .96rem; }
.surgical-rail-head a { color: #075fc7; font-size: .75rem; text-decoration: none; white-space: nowrap; }
.surgical-upcoming { display: flex; gap: 9px; padding: 10px 12px; border-bottom: 1px solid #ecf1f6; color: #1b3658; text-decoration: none; }
.surgical-upcoming:hover { background: #f1f7ff; }
.surgical-upcoming time { flex: 0 0 38px; color: #164f93; font-size: .76rem; font-weight: 700; }
.surgical-upcoming span { min-width: 0; }
.surgical-upcoming strong, .surgical-upcoming small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.surgical-upcoming strong { font-size: .75rem; }
.surgical-upcoming small { margin-top: 2px; color: #5b7290; font-size: .72rem; }
.surgical-room { display: flex; justify-content: space-between; gap: 8px; padding: 8px 12px; border-bottom: 1px solid #edf2f6; font-size: .76rem; }
.surgical-room span { color: #526e8a; text-align: right; }
.surgical-alert { margin: 0; padding: 10px 12px; border-bottom: 1px solid #edf2f6; color: #a76800; font-size: .78rem; }
.surgical-empty { padding: 18px; color: #667d94; font-size: .82rem; text-align: center; }
.surgical-week-scroll, .surgical-month-scroll { max-width: 100%; overflow: auto; }
.surgical-week { min-width: 860px; }
.surgical-week.single-day { min-width: 370px; }
.surgical-week-head, .surgical-week-body { display: grid; grid-template-columns: 60px repeat(7, minmax(0, 1fr)); }
.surgical-week.single-day .surgical-week-head, .surgical-week.single-day .surgical-week-body { grid-template-columns: 60px minmax(0, 1fr); }
.surgical-week-head { min-height: 47px; border-bottom: 1px solid #dbe6ef; }
.surgical-hour-heading, .surgical-day-heading { display: flex; justify-content: center; align-items: center; flex-direction: column; border-right: 1px solid #dbe6ef; color: #26486c; font-size: .75rem; }
.surgical-day-heading span { color: #6a8097; font-size: .7rem; }
.surgical-day-heading.is-today { background: #e7f2ff; color: #075fc7; }
.surgical-hours { display: flex; flex-direction: column; }
.surgical-hours span { height: 56px; flex: 0 0 56px; padding: 4px 6px; border-right: 1px solid #dbe6ef; border-bottom: 1px solid #e4edf5; color: #73879c; font-size: .7rem; }
.surgical-day-track { position: relative; border-right: 1px solid #dbe6ef; background: repeating-linear-gradient(to bottom, #fff 0, #fff 55px, #e4edf5 55px, #e4edf5 56px); }
.surgical-event { position: absolute; z-index: 1; display: flex; flex-direction: column; overflow: hidden; gap: 2px; padding: 5px; border-left: 3px solid #3289e9; border-radius: 4px; background: #e7f2ff; color: #143e6e; text-decoration: none; font-size: .68rem; line-height: 1.15; }
.surgical-event:hover, .surgical-month-event:hover { z-index: 2; outline: 2px solid #126bcb; }
.surgical-event strong, .surgical-event span, .surgical-event small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.surgical-event.confirmed, .surgical-month-event.confirmed { border-color: #15965b; background: #dff7ea; }
.surgical-event.pending, .surgical-month-event.pending { border-color: #ed9b18; background: #fff3dc; }
.surgical-event.cancelled, .surgical-month-event.cancelled { border-color: #c93245; background: #ffe7ec; }
.surgical-event.draft, .surgical-month-event.draft { border-color: #778ca7; background: #edf2f7; }
.surgical-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; padding: 12px 15px; border-bottom: 1px solid #dbe6ef; }
.surgical-filters label { display: grid; gap: 4px; color: #324d68; font-size: .74rem; font-weight: 650; }
.surgical-filters input, .surgical-filters select { min-height: 34px; max-width: 210px; padding: 5px 8px; border: 1px solid #bccddd; border-radius: 4px; background: #fff; color: #162c42; }
.surgical-agenda .table-scroll { margin: 0; }
.surgical-month { display: grid; min-width: 700px; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.surgical-month-weekday { padding: 9px 4px; border-right: 1px solid #e0e8f0; text-align: center; color: #304d70; font-size: .72rem; font-weight: 700; }
.surgical-month-day { min-height: 115px; padding: 5px; border-top: 1px solid #dbe6ef; border-right: 1px solid #dbe6ef; }
.surgical-month-day.outside { background: #f5f7fa; }
.surgical-month-date { display: flex; justify-content: space-between; gap: 3px; margin-bottom: 5px; color: #174b84; text-decoration: none; font-weight: 700; }
.surgical-month-date small { color: #687d91; font-size: .65rem; font-weight: 400; }
.surgical-month-event { display: block; margin: 3px 0; padding: 4px; overflow: hidden; border-left: 3px solid #3289e9; border-radius: 3px; background: #e7f2ff; color: #143e6e; font-size: .66rem; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 1250px) { .surgical-main-grid { grid-template-columns: 1fr; } .surgical-rail { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); } }
@media (max-width: 760px) { .surgical-mobile-agenda { display: block; margin-bottom: 12px; text-align: center; } .surgical-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } .surgical-main-grid { display: flex; flex-direction: column; } .surgical-calendar-panel, .surgical-rail { width: 100%; } .surgical-rail { display: grid; grid-template-columns: 1fr; } }
@media (max-width: 480px) { .surgical-kpis { grid-template-columns: 1fr; } .surgical-filters label, .surgical-filters input, .surgical-filters select { width: 100%; max-width: none; } }
