/* Meeting Management — availability / room timelines (MeetingTimeline.razor) and the meeting calendar. */

.mtl { width: 100%; }
.mtl-scroll { overflow-x: auto; overflow-y: hidden; padding-bottom: 2px; }
.mtl-grid { min-width: 640px; }
.mtl-head, .mtl-row { display: flex; align-items: stretch; }
.mtl-label { flex: 0 0 210px; max-width: 210px; padding: 4px 8px; font-size: 12.5px; line-height: 1.25; overflow: hidden; }
.mtl-label .mtl-sub { display: block; font-size: 11px; color: var(--text-muted, #8c9097); }
.mtl-track-wrap { flex: 1 1 auto; position: relative; }
.mtl-row { border-top: 1px solid rgba(128, 128, 128, .15); min-height: 34px; }
.mtl-row.mtl-combined { border-top: 2px solid rgba(128, 128, 128, .35); background: rgba(var(--primary-rgb, 13, 110, 253), .03); }
.mtl-track { position: absolute; inset: 5px 0; border-radius: 4px; background: rgba(128, 128, 128, .18); overflow: hidden; }
.mtl-work { position: absolute; top: 0; bottom: 0; background: rgba(38, 191, 148, .14); }
.mtl-seg { position: absolute; top: 2px; bottom: 2px; border-radius: 3px; font-size: 10.5px; line-height: 1.1; padding: 2px 4px;
           overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #fff; cursor: default; }
.mtl-seg.k-1 { background: rgba(230, 83, 60, .85); }             /* meeting */
.mtl-seg.k-1.mtl-link { cursor: pointer; }
.mtl-seg.k-2 { background: rgba(132, 90, 223, .85); }            /* approved leave */
.mtl-seg.k-3 { background: repeating-linear-gradient(45deg, rgba(245, 184, 73, .9), rgba(245, 184, 73, .9) 6px, rgba(245, 184, 73, .6) 6px, rgba(245, 184, 73, .6) 12px); color: #222; } /* tentative */
.mtl-seg.k-4, .mtl-seg.k-5, .mtl-seg.k-7 { background: rgba(108, 117, 125, .55); }  /* holiday / weekly off / not employed */
.mtl-seg.k-free { background: rgba(38, 191, 148, .75); }          /* combined: everyone free */
.mtl-seg.k-fit { background: rgba(38, 191, 148, 1); }
.mtl-seg.k-room { background: rgba(230, 83, 60, .85); }
.mtl-seg.k-room.mtl-link { cursor: pointer; }
.mtl-slot { position: absolute; top: 0; bottom: 0; border: 2px solid rgba(var(--primary-rgb, 13, 110, 253), 1); border-radius: 4px;
            background: rgba(var(--primary-rgb, 13, 110, 253), .08); pointer-events: none; z-index: 2; }
.mtl-ticks { position: relative; height: 18px; font-size: 10.5px; color: var(--text-muted, #8c9097); }
.mtl-ticks span { position: absolute; transform: translateX(-50%); white-space: nowrap; }
.mtl-ticks span:first-child { transform: none; }
.mtl-ticks span:last-child:not(:first-child) { transform: translateX(-100%); }  /* end label stays inside the track — centred, it overflowed and forced a scrollbar */
.mtl-legend { display: flex; flex-wrap: wrap; gap: 12px; font-size: 11.5px; margin-top: 6px; }
.mtl-legend i { display: inline-block; width: 12px; height: 12px; border-radius: 2px; vertical-align: -2px; margin-right: 4px; }
.mtl-status { font-size: 10.5px; }

/* week view: one mini track per day cell */
.mtl-week td, .mtl-week th { vertical-align: middle; font-size: 12px; }
.mtl-week .mtl-mini { position: relative; height: 22px; border-radius: 3px; background: rgba(128, 128, 128, .18); overflow: hidden; min-width: 90px; }
.mtl-week .mtl-mini .mtl-seg { top: 0; bottom: 0; padding: 0; border-radius: 0; }

#meetingCalendar .fc-event { cursor: pointer; }
.meeting-agenda { white-space: pre-wrap; }
