/* ============================================================
   Secretary — Syncfusion Scheduler overrides
   Extracted from TimeEntryScheduler.razor. Global because these
   target Syncfusion's .e-schedule internals.
   ============================================================ */

.e-schedule .e-resource-left-td {
    width: 300px !important;
    min-width: 300px !important;
}

.e-schedule .e-resource-cells {
    width: 300px !important;
    min-width: 300px !important;
    position: relative;
}

/* Vertical colour bar on resource cells */
.resource-color-bar {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    height: 100%;
}

/* Agenda view */
.e-schedule .e-agenda-view .e-resource-column {
    width: 300px !important;
    min-width: 300px !important;
}

.e-schedule .e-agenda-view .e-resource-text {
    width: 300px !important;
    min-width: 300px !important;
    position: relative;
}

.e-schedule .e-agenda-view .e-content-table .e-resource-cells {
    width: 300px !important;
    min-width: 300px !important;
    position: relative;
}

.e-schedule .e-resource-cells.e-child-node.e-resource-left-td {
    padding-left: 0;
}

.appointment-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.e-appointment {
    top: 10px !important;
}

/* M365 (read-only) appointments: muted, no edit affordances */
.e-schedule .e-appointment.e-read-only {
    opacity: 0.75;
    filter: saturate(0.65);
    cursor: default !important;
    font-style: italic;
}

.e-schedule .e-appointment.e-read-only .e-appointment-details {
    cursor: default !important;
}

/* M365 resource row header: subtle muted background */
.e-schedule .m365-resource-header {
    background: var(--neutral-layer-2);
}
