/* Mobile layout for the shift planner (MWShiftPlanner with ViewportBreakpoint set).
   Every rule is scoped under .mw-sp-mobile (set on .mw-sp-container while the mobile
   layout is active) or uses the mw-sp-mob-* prefix, so the desktop layout is untouched. */

/* NOTE: Corner cell — weekday label at the current scroll position, opens the day-jump menu */
.mw-sp-mob-corner {
    display: flex;
    align-items: stretch;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* NOTE: Floating drawer toggle — sits above the temporary drawer and its overlay
   (--mud-zindex-drawer is 1100) so it can also close an open drawer */
.mw-sp-mob-drawer-fab {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 1300;
}

.mw-sp-mob-corner-day {
    flex: 1 1 auto;
    min-width: 0;
    height: 100%;
}

/* NOTE: MWMenu wraps the activator in nested divs — stretch them so the label fills the cell */
.mw-sp-mob-corner-day .mud-menu,
.mw-sp-mob-corner-day .mud-menu-activator {
    width: 100%;
    height: 100%;
}

.mw-sp-mob-corner-day-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: 100%;
    height: 100%;
    cursor: pointer;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
}

.mw-sp-mob-day-item--selected {
    font-weight: 700;
    color: var(--mud-palette-primary);
}

/* NOTE: Compact header typography — shrink resource/time headers to maximize plan area */
.mw-sp-mobile .mw-sc-time-slot-horizontal {
    font-size: 0.7rem;
}

.mw-sp-mobile .mw-sc-resource-row-header {
    font-size: 0.72rem;
}

.mw-sp-mobile .mw-sc-group-name {
    font-size: 0.65rem;
}

/* NOTE: The child count adds noise the narrow group column cannot afford */
.mw-sp-mobile .mw-sc-group-count {
    display: none;
}

/* Team band header (opt-in ShowTeamBands) — bolder than the Bereich label so the team reads as the
   top level of the hierarchy in its narrow column. */
.mw-sp-team-band-label {
    font-weight: 700;
    letter-spacing: 0.02em;
}

/* Separator lines for the team-banded plan (opt-in). Drawn as inset box-shadows so they add NO
   layout width — a right edge splits each level from the one to its right (team | Bereich | positions)
   and a bottom edge splits stacked bands of the same level (team from team, Bereich from Bereich).
   The team band (detected by its label span) gets a heavier right divider so the team → Bereich
   relationship reads at a glance. */
.mw-sp-team-bands .mw-sc-group-header-horizontal {
    box-shadow:
        inset -1px 0 0 rgba(0, 0, 0, 0.4),
        inset 0 -1px 0 rgba(0, 0, 0, 0.4);
}

.mw-sp-team-bands .mw-sc-group-header-horizontal:has(.mw-sp-team-band-label) {
    box-shadow:
        inset -2px 0 0 rgba(0, 0, 0, 0.5),
        inset 0 -1px 0 rgba(0, 0, 0, 0.5);
}
