:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#211a28;--muted:#6f6578;--line:#e8dfec;--panel:#fff;--page:#fbf8fc;--purple:#7b3fb6;--purple-dark:#502178;--purple-soft:#6a4b7a;--orange:#f28c28;--gold:#f2b705;--green:#23845c;--red:#bf3c3c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{color:var(--ink);background:var(--page);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.loginPage{background:linear-gradient(135deg,#fff 0%,#faf3ff 46%,#fff5e9 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.loginPanel{border:1px solid var(--line);background:#ffffffe6;border-radius:8px;grid-template-columns:1fr 360px;align-items:center;gap:40px;width:min(940px,100%);min-height:520px;padding:48px;display:grid;box-shadow:0 24px 70px #3d1c5426}.loginLogo{width:180px;max-width:55vw;margin-bottom:22px;display:block}h1,h2,h3,p{margin-top:0}h1{margin-bottom:12px;font-size:48px}h2{margin-bottom:0}h3{margin-bottom:18px}.eyebrow{color:var(--orange);text-transform:uppercase;letter-spacing:0;margin-bottom:6px;font-size:12px;font-weight:800}.muted{color:var(--muted)}.error{color:var(--red);font-weight:700}.formError{margin-top:12px;margin-bottom:0}.tableError{max-width:220px;margin:8px 0 0;font-size:13px}.success{color:var(--green);font-weight:700}.appShell{grid-template-columns:280px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#2b1838;padding:26px 22px;box-shadow:10px 0 40px #2b183824}.brand{align-items:center;gap:15px;min-height:76px;margin-bottom:42px;display:flex}.brand img{object-fit:contain;background:0 0;border-radius:8px;flex:none;width:72px;height:72px}.brand strong{line-height:1.15;display:block}.brand small{color:#d8cce0;margin-top:5px;display:block}.sidebar nav{gap:11px;display:grid}.sidebar button{color:#eee7f4;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:46px;padding:13px 12px;display:flex}.sidebar button.active,.sidebar button:hover{color:#fff;background:#ffffff1f}.mainArea{min-width:0}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;height:86px;padding:0 28px;display:flex}.userPill{color:var(--muted);align-items:center;gap:10px;display:flex}.userPill button,.actions button{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:6px;padding:8px 10px;display:inline-flex}.pageGrid,.twoColumn{gap:22px;padding:28px;display:grid}.roomSchedulePage{gap:12px}.twoColumn{grid-template-columns:420px 1fr;align-items:start}.leftStack{gap:22px;display:grid}.adminTabs{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;gap:10px;width:fit-content;padding:8px;display:flex}.adminTabs button{color:var(--muted);background:0 0;border:0;border-radius:12px;padding:12px 18px;font-weight:800}.adminTabs button.active{background:var(--purple-soft);color:#fff}.locationTabs{flex-wrap:wrap;gap:10px;margin:18px 0;display:flex}.locationTabs button{color:var(--purple);cursor:pointer;background:#fffaf2;border:1px solid #e6d7eb;border-radius:999px;padding:10px 18px;font-weight:900}.locationTabs button.active{background:linear-gradient(135deg, var(--purple), var(--purple-dark));border-color:var(--purple);color:#fff}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px;box-shadow:0 10px 30px #3d1c540f}.scheduleFormPanel{padding:14px 16px}.scheduleFormPanel h3{color:#fff;border-radius:8px 8px 0 0;align-items:center;min-height:34px;margin-bottom:10px;padding:8px 14px;font-size:18px;display:inline-flex}.reserveRoomPanel h3{background:#238447}.standardRoomPanel h3{background:#7b3fb6}.archivedPanel{color:#fff;background:#2d183b;border-color:#432457}.archivedPanel h3,.archivedPanel table{color:#fff}.archivedPanel th{color:#d8c5e6}.archivedPanel td{border-bottom-color:#ffffff24}.archivedPanel .muted,.archivedPanel .empty{color:#d8c5e6}.archivedPanel .smallButton{color:var(--purple-dark);background:#fff4ea;border-color:#f3c9ad}.vacationLayout{grid-template-columns:minmax(320px,420px) minmax(520px,1fr);align-items:start;gap:22px;display:grid}.vacationCalendarPanel{padding:0;overflow:hidden;box-shadow:0 18px 45px #3d1c541f}.calendarToolbar{color:#fff;background:linear-gradient(135deg,#3a1554,#5a2385);justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.calendarToolbar h3{text-transform:capitalize;margin:0}.calendarToolbar button{color:#fff;background:#ffffff1f;border:1px solid #ffffff47;border-radius:8px;padding:8px 10px}.calendarLegend{border-bottom:1px solid var(--line);color:var(--muted);background:#fffaf5;flex-wrap:wrap;gap:12px;padding:14px 16px;font-size:13px;display:flex}.calendarLegend span{align-items:center;gap:6px;display:inline-flex}.calendarLegend i{border-radius:50%;width:10px;height:10px;display:inline-block}.calendarLegend i.approved{background:var(--green)}.calendarLegend i.pending{background:var(--orange)}.calendarLegend i.rejected{background:var(--red)}.monthGrid{background:#f1e8f6;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;padding:1px;display:grid}.weekday{text-align:center;color:var(--purple-dark);background:#fbf7fd;padding:10px 6px;font-size:12px;font-weight:900}.dayCell{background:#fff;align-content:start;gap:6px;min-height:86px;padding:8px;display:grid}.dayCell.reservedDay{background:#fff8ed;box-shadow:inset 0 0 0 1px #f28c2833}.mutedDay{color:#aaa0af;background:#faf7fb}.dayNumber{border-radius:8px;place-items:center;width:26px;height:26px;font-size:13px;font-weight:900;display:grid}.reservedDay .dayNumber{color:var(--purple-dark);background:#7b3fb61a}.dayReservations{gap:4px;display:grid}.reservationChip{color:#fff;text-align:center;word-break:break-word;background:var(--employee-color,var(--green));border-radius:6px;padding:3px 5px;font-size:11px;font-weight:900;line-height:1.15;box-shadow:0 4px 10px #211a281f}.reservationChip.pending{color:#2b1838;background:var(--orange);box-shadow:0 4px 10px #211a281f}.reservationChip.rejected{box-shadow:inset 0 0 0 2px var(--red), 0 4px 10px #211a281f;opacity:.78;text-decoration:line-through}.panelHeader{justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px;display:flex}.scheduleTitleLine{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.scheduleTitleLine h3{margin-bottom:0}.undoButton{color:var(--purple-dark);background:#f5effa;border:1px solid #7b3fb647;border-radius:999px;min-width:76px;padding:7px 13px;font-weight:800}.undoButton:disabled{opacity:.45;cursor:not-allowed}.redoButton{background:#fff7df;border-color:#f2b7056b}.undoHint{color:var(--muted);margin:7px 0 0;font-size:13px}.scheduleActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.scheduleActions select{min-width:190px;padding:8px 10px}.scheduleDropdownFilters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scheduleDropdownFilters select{background:#fff;min-width:210px}.statGrid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px;display:grid}.statCard{border:1px solid var(--line);border-left:5px solid var(--purple);background:#fff;border-radius:8px;padding:18px}.statCard:nth-child(2n){border-left-color:var(--orange)}.statCard span{color:var(--muted);margin-bottom:10px;display:block}.statCard strong{font-size:34px}.formStack,.formGrid{gap:14px;display:grid}.formGrid{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:end}.roomScheduleForm{grid-template-columns:repeat(8,minmax(92px,1fr)) minmax(126px,.85fr);align-items:end;gap:8px}.standardScheduleForm{grid-template-columns:repeat(7,minmax(106px,1fr)) minmax(126px,.85fr)}.reserveScheduleForm{grid-template-columns:repeat(9,minmax(76px,1fr)) minmax(112px,.75fr)}.roomScheduleForm label{gap:4px;font-size:13px}.roomScheduleForm input,.roomScheduleForm select{height:38px;padding:7px 9px}.roomScheduleForm .primaryButton{white-space:nowrap;min-height:38px;padding:8px 10px}.formRow{grid-template-columns:1fr 1fr;gap:12px;display:grid}label{color:#3a2f42;gap:7px;font-weight:700;display:grid}input,select,textarea{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:10px 12px}input[readonly],input:disabled{color:var(--muted);background:#f7f2fa}.tableInput{max-width:130px}.tableInput.wideInput{min-width:150px;max-width:190px}.passwordCell .tableInput{min-width:150px;max-width:180px}.disciplineEditor{gap:6px;min-width:170px;display:grid}.disciplineEditor select{background:#fff;border:1px solid #e4d4ea;border-radius:10px;min-height:36px;padding:6px 8px}.passwordMasked{color:#6a5771;background:#f4edf7;border-radius:999px;justify-content:center;min-width:88px;padding:8px 12px;font-weight:800;display:inline-flex}.iconButton{color:#51206d;cursor:pointer;background:#fffaf2;border:1px solid #e6d7eb;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.iconButton:disabled{opacity:.45;cursor:not-allowed}.tableActions{flex-wrap:wrap;gap:8px;display:flex}.passwordChoice span{align-items:center;gap:8px;display:flex}.passwordChoice input[type=checkbox]{width:auto;min-width:0;padding:0}textarea{resize:vertical;min-height:92px}.primaryButton{background:linear-gradient(135deg, var(--purple), var(--purple-dark));color:#fff;border:0;border-radius:8px;padding:12px 16px;font-weight:800}.filters{flex-wrap:wrap;gap:8px;display:flex}.filters input{width:150px}.tableWrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}.compactTable table{min-width:420px}.compactRoomTable table{min-width:760px;font-size:13px}.compactRoomTable th,.compactRoomTable td{padding:7px 8px}.compactRoomTable .smallButton{padding:7px 9px;font-size:12px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 10px}th{color:var(--muted);font-size:13px}.empty{padding:20px 4px 0}.actions{flex-wrap:wrap;gap:8px;display:flex}.smallButton{color:var(--purple-dark);background:#fff7ed;border:1px solid #7b3fb638;border-radius:8px;padding:8px 10px;font-weight:800}.dangerButton{color:#be123c;background:#fff1f2;border-color:#be123c4d}.selectedRow{outline-offset:-2px;background:#fff7ed;outline:2px solid #f9731659}.selectableRow{cursor:pointer}.modalBackdrop{z-index:30;background:#2b18386b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modalPanel{background:#fffdf9;border:1px solid #d8c5e6;border-radius:10px;width:min(980px,100%);max-height:min(760px,92vh);padding:22px;overflow:auto;box-shadow:0 30px 80px #2b183847}.compactModalBackdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2b183852}.compactModalPanel{border-radius:16px;width:min(620px,100vw - 28px);max-height:min(620px,90vh);padding:16px;animation:.18s cubic-bezier(.2,1.2,.28,1) both compactPop;box-shadow:0 22px 55px #2b18383d}.compactModalHeader{justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px;display:flex}.compactModalHeader h3{margin-bottom:0;font-size:22px}.compactCreateForm{grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px}.compactCreateForm label{border-radius:12px;gap:5px;padding:5px;font-size:13px;transition:background .14s,box-shadow .14s,transform .14s}.compactCreateForm label:hover{background:#f7f0fb;transform:translateY(-1px);box-shadow:0 0 0 1px #7b3fb61c,0 8px 18px #3d1c540f}.compactCreateForm input,.compactCreateForm select{border-radius:10px;padding:8px 10px;transition:background .14s,border-color .14s,box-shadow .14s}.compactCreateForm label:hover input,.compactCreateForm label:hover select,.compactCreateForm input:hover,.compactCreateForm select:hover{background:#fbf7ff;border-color:#d9c5eb}.reserveCreateForm label:hover{box-shadow:none;background:0 0;transform:none}.reserveCreateForm label:hover input,.reserveCreateForm label:hover select,.reserveCreateForm input:hover,.reserveCreateForm select:hover{border-color:var(--line);background:#fff}.timeWheelInput{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;display:grid}.timeWheelInput span{color:var(--purple-dark);font-weight:900}.timeWheelInput select{text-align:center;font-variant-numeric:tabular-nums;max-height:180px}.compactCreateForm .modalActions{grid-column:1/-1}.contextChoicePanel{border-radius:16px;width:min(360px,100vw - 28px);padding:16px;animation:.18s cubic-bezier(.2,1.2,.28,1) both compactPop}.contextChoiceActions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.contextChoiceActions button{color:var(--purple-dark);background:#f7f0fb;border:1px solid #7b3fb633;border-radius:14px;padding:14px 12px;font-weight:850;transition:background .14s,transform .14s,box-shadow .14s}.contextChoiceActions button:hover{background:#f1e7f8;transform:translateY(-1px);box-shadow:0 10px 24px #3d1c541f}@keyframes compactPop{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.modalActions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.timetablePanel{background:#fffdf9}.timetableStack{gap:26px;display:grid}.locationSheet{background:#fff;border:2px solid #3b2547;border-radius:8px;overflow:hidden;box-shadow:0 16px 38px #3d1c541a}.locationTitle{color:#fff;background:linear-gradient(135deg,#2b1838,#63308f);border-bottom:2px solid #3b2547;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.locationTitle h4{margin:0;font-size:22px}.locationTitle span{color:#ffd89b;font-weight:900}.weekdaySection{border-bottom:2px solid #3b2547}.weekdaySection:last-child{border-bottom:0}.weekdayTitle{text-transform:uppercase;color:#fff;background:linear-gradient(135deg, var(--purple), var(--purple-dark));border-bottom:1px solid #3b2547;padding:10px 14px;font-weight:950}.roomColumns{min-width:740px;display:grid}.dayTimeline{grid-template-columns:58px minmax(740px,1fr);align-items:start;display:grid}.timeScale{height:calc(var(--timeline-height) + 41px);grid-template-rows:41px var(--timeline-height);box-sizing:border-box;background:#fbf8fc;border-bottom:1px solid #3b2547;border-right:1px solid #3b2547;display:grid}.timeScaleTitle{color:var(--purple-dark);background:#f6effb;place-items:center;font-size:11px;font-weight:950;display:grid}.timeScaleTicks{height:var(--timeline-height);background:#fbf8fc;position:relative}.timeScaleHour{color:var(--purple-dark);font-size:12px;font-weight:900;position:absolute;left:8px;transform:translateY(-50%)}.timeScaleHour:after{content:"";background:#b79fc4;width:10px;height:1px;position:absolute;top:50%;right:-16px;transform:translateY(-50%)}.timeScaleHalf{background:#9b86a8;width:14px;height:1px;position:absolute;right:7px;transform:translateY(-50%)}.roomColumn{background:#fff;border-right:1px solid #3b2547;min-width:0}.roomColumn:last-child{border-right:0}.roomHeader{box-sizing:border-box;height:41px;color:var(--purple-dark);background:#f6effb;border-bottom:1px solid #3b2547;place-items:center;padding:0 10px;font-weight:950;display:grid}.roomLessons{align-content:start;gap:8px;min-height:118px;padding:10px;display:grid}.timelineRoom{height:var(--timeline-height);min-height:var(--timeline-height);touch-action:manipulation;background:repeating-linear-gradient(to bottom, transparent 0, transparent calc(var(--timeline-half-hour-height) - 1px), #f1e8f5 calc(var(--timeline-half-hour-height) - 1px), #f1e8f5 var(--timeline-half-hour-height), transparent var(--timeline-half-hour-height), transparent calc(var(--timeline-hour-height) - 1px), #e4d7ea calc(var(--timeline-hour-height) - 1px), #e4d7ea var(--timeline-hour-height)), #fff;padding:0 10px;display:block;position:relative}.timelineRoom .lessonBlock{z-index:2;align-content:start;gap:3px;padding:7px 8px;position:absolute;left:0;right:auto;overflow:hidden}.timelineRoom.droppableRoom{outline-offset:-6px;outline:1px dashed #7b3fb62e}.timelineRoom.slotHover:after{content:"";left:10px;right:10px;top:var(--slot-hover-top);height:calc(var(--timeline-hour-height) / 4);pointer-events:none;z-index:1;background:#7b3fb613;border:1px solid #7b3fb624;border-radius:10px;position:absolute;box-shadow:inset 0 0 0 1px #ffffff8c,0 6px 16px #3d1c540f}.timelineRoom .draggableLesson{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.timelineRoom .draggableLesson:active{cursor:grabbing}.timelineRoom .resizeHandle{cursor:ns-resize;opacity:0;background:#5021784d;border:0;border-radius:999px;width:auto;min-width:0;max-width:none;height:7px;padding:0;transition:opacity .15s;position:absolute;bottom:2px;left:18px;right:18px}.timelineRoom .lessonBlock:hover .resizeHandle{opacity:1}.timelineRoom .lessonBlock strong,.timelineRoom .lessonBlock span{font-size:13px;line-height:1.12}.timelineRoom .teacherLine{flex-wrap:wrap;gap:5px}.timelineRoom .lessonBlock em,.timelineRoom .lessonBlock button{padding:2px 6px;font-size:11px}.timelineRoom .lessonBlock button{text-overflow:ellipsis;white-space:nowrap;flex:76px;min-width:0;max-width:118px;overflow:hidden}.timelineRoom .lessonBlock em{flex:none}.timelineRoom .compactLesson{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 6px;padding:5px 7px}.timelineRoom .compactLesson strong,.timelineRoom .compactLesson span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.timelineRoom .compactLesson .teacherLine{flex-wrap:nowrap;grid-column:1/-1;min-width:0}.timelineRoom .compactLesson em,.timelineRoom .compactLesson button{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;overflow:hidden}.timelineRoom .lessonBlock .resizeHandle{text-overflow:clip;white-space:normal;flex:none;max-width:none;overflow:visible}.timelineEmpty{position:absolute;top:10px;left:10px;right:10px}.emptySlot{color:#8e8494;text-align:center;background:#fbf8fc;border:1px dashed #d9cce1;border-radius:8px;padding:10px;font-size:13px}.lessonBlock{border:1px solid #dfd1e7;border-left:5px solid var(--purple);background:#fff;border-radius:8px;gap:5px;padding:10px;display:grid;box-shadow:0 6px 14px #3d1c5414}.lessonBlock strong{color:#2b1838;font-size:14px}.lessonBlock span{font-weight:850}.teacherLine{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lessonBlock em{width:fit-content;color:var(--purple-dark);background:#f6effb;border:1px solid #dfd1e7;border-radius:6px;padding:3px 6px;font-size:12px;font-style:normal;font-weight:900}.lessonBlock button{color:#111;background:#e8f7ef;border:1px solid #23845c33;border-radius:8px;width:fit-content;padding:3px 6px;font-size:12px;font-weight:500}.lessonBlock.free{border-left-color:var(--green);background:#f6fff9}.lessonBlock.canceled{border-left-color:var(--green);opacity:.72;box-shadow:none;background:#ece7ef}.lessonBlock.claimed{border-left-color:var(--purple-dark);background:#f8f2fc}.lessonBlock.blocked{border-left-color:var(--purple-dark);box-shadow:none;background:#f1edf5}.releasedBadge{background:var(--green);color:#fff;border-radius:7px;width:fit-content;padding:4px 8px;font-size:12px;font-weight:950}.lessonBlock button.dangerInlineButton{color:#111;background:#fff6cf;border-color:#f2b70540}.printableTable table{border:2px solid #3b2547;min-width:820px}.printableTable th{color:#2b1838;background:#fff2df;border:1px solid #3b2547;font-weight:950}.printableTable td{border:1px solid #3b2547}.calendarList{gap:12px;display:grid}.calendarItem{border:1px solid var(--line);border-left:6px solid var(--muted);border-radius:8px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:14px;display:grid}.calendarItem span,.calendarItem small{color:var(--muted);margin-top:4px;display:block}.calendarItem.pending{border-left-color:var(--orange);background:#fffaf4}.calendarItem.approved{border-left-color:var(--green);background:#f2fbf7}.calendarItem.rejected{border-left-color:var(--red);background:#fff6f6}.badge{color:#fff;border-radius:8px;padding:6px 10px;font-weight:800}.badge.pending{background:var(--orange)}.badge.approved{background:var(--green)}.badge.rejected{background:var(--red)}.badge.planned{background:var(--purple-dark)}.badge.free,.badge.canceled{background:var(--green)}.badge.claimed{background:var(--purple)}.splitTables{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (max-width:1050px){.appShell{grid-template-columns:1fr}.sidebar{position:static}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.twoColumn,.vacationLayout,.formGrid,.statGrid,.splitTables{grid-template-columns:1fr}.loginPanel{grid-template-columns:1fr;padding:28px}.roomColumns,.printableTable table{min-width:680px}}@media (max-width:720px){h1{font-size:36px}.topbar{flex-direction:column;align-items:start;height:auto;padding:18px}.pageGrid,.twoColumn{padding:18px}.sidebar nav,.calendarItem{grid-template-columns:1fr}.userPill{flex-wrap:wrap}.dayCell{min-height:76px;padding:6px}.reservationChip{font-size:10px}.vacationPage,.roomSchedulePage{gap:14px;padding:12px}.vacationPage .panel,.roomSchedulePage .panel{padding:14px}.vacationLayout{gap:14px}.vacationLayout .formRow{grid-template-columns:1fr}.vacationCalendarPanel{border-radius:8px;padding:0}.calendarToolbar{gap:8px;padding:12px}.calendarToolbar h3{text-align:center;font-size:17px}.calendarToolbar button{padding:8px;font-size:13px}.calendarLegend{gap:8px;padding:10px 12px;font-size:12px}.weekday{padding:8px 2px;font-size:11px}.dayCell{gap:3px;min-height:58px;padding:4px}.dayNumber{border-radius:7px;width:22px;height:22px;font-size:12px}.dayReservations{flex-wrap:wrap;gap:2px;display:flex}.reservationChip{border-radius:50%;place-items:center;width:20px;height:20px;padding:0;font-size:9px;line-height:1;display:inline-grid}.vacationPage>.panel:first-child .tableWrap table,.vacationPage>.panel:first-child .tableWrap thead,.vacationPage>.panel:first-child .tableWrap tbody,.vacationPage>.panel:first-child .tableWrap tr,.vacationPage>.panel:first-child .tableWrap th,.vacationPage>.panel:first-child .tableWrap td{display:block}.vacationPage>.panel:first-child .tableWrap table{min-width:0}.vacationPage>.panel:first-child .tableWrap thead{display:none}.vacationPage>.panel:first-child .tableWrap tr{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:10px;padding:10px}.vacationPage>.panel:first-child .tableWrap td{border:0;padding:5px 0}.vacationPage>.panel:first-child .tableWrap td:first-child:before{content:"Служител: ";font-weight:900}.vacationPage>.panel:first-child .tableWrap td:nth-child(2):before{content:"Тип: ";font-weight:900}.vacationPage>.panel:first-child .tableWrap td:nth-child(3):before{content:"Период: ";font-weight:900}.vacationPage>.panel:first-child .tableWrap td:nth-child(4):before{content:"Статус: ";font-weight:900}.roomSchedulePage .panelHeader{gap:12px;display:grid}.scheduleActions,.scheduleDropdownFilters{justify-content:stretch;width:100%}.scheduleActions>*,.scheduleDropdownFilters>*{flex:100%;min-width:0}.locationTabs{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.locationTabs button{flex:none}.scheduleFormPanel{overflow:hidden}.roomScheduleForm,.standardScheduleForm,.reserveScheduleForm{grid-template-columns:1fr}.roomScheduleForm .primaryButton{width:100%}.compactRoomTable table{min-width:760px}.timetablePanel{padding:10px}.locationTitle{padding:12px}.locationTitle h4{font-size:18px}.weekdaySection{overflow-x:auto}.weekdayTitle{z-index:4;min-width:680px;position:sticky;left:0}.dayTimeline{grid-template-columns:48px minmax(620px,1fr);min-width:680px}.roomColumns{min-width:620px}.timeScaleHour{font-size:10px;left:5px}.roomHeader{padding:0 6px;font-size:12px}.timelineRoom .lessonBlock{padding:5px 6px}.timelineRoom .lessonBlock strong,.timelineRoom .lessonBlock span{font-size:11px}.timelineRoom .lessonBlock em,.timelineRoom .lessonBlock button{font-size:10px}}@media print{@page{size:A4 landscape;margin:8mm}body{background:#fff}.sidebar,.topbar,.pageGrid>.panel:not(.timetablePanel),.scheduleActions,.locationTabs,.filters,.undoButton,.undoHint,.lessonBlock button,.resizeHandle,.modalBackdrop{display:none!important}.appShell{min-height:0;display:block}.mainArea,.pageGrid{padding:0;display:block}.timetablePanel,.locationSheet{box-shadow:none;background:#fff;border:0;padding:0}.timetablePanel .panelHeader{margin:0 0 8px}.scheduleTitleLine h3{font-size:20px}.locationSheet{break-inside:avoid}.locationTitle{color:#111;background:#fff;border:1px solid #222;padding:8px 10px}.weekdayTitle{color:#111;background:#eee}.lessonBlock{box-shadow:none}}
