/* =============================================================================
   Act Management page CSS
   Prefix: mw-acts-*
   ============================================================================= */

/* NOTE: The Acts/Artists shared action controls now ride the data-grid's own toolbar row via each
   grid's ToolBarContent (see ActManagementPage / ArtistManagementPage) — no absolute-positioned
   floating bar. The former .mw-acts-shell / .mw-acts-controls rules were removed with it. */

/* NOTE: Full-viewport layout for the Booking grid — a flex column filling exactly to the viewport
   bottom, so the grid at Height="100%" reaches the bottom with no fixed-size gap. Uses the same
   dense-appbar math as the entitlements page (.mw-et-layout): MudMainContent's padding-top is
   appbar*0.75 (dense bar), so we subtract that, not the full appbar (--mw-full-height would leave an
   appbar/4 gap). */
.mw-acts-layout {
    height: calc(100vh - var(--mud-appbar-height) + var(--mud-appbar-height) / 4);
    display: flex;
    flex-direction: column;
    min-height: 0;
}

/* NOTE: The Booking toolbar spans the full grid width (not the default content-width tab) so the
   pane switch + select control can sit at the far right while the action buttons stay left. */
.mw-acts-layout .mw-dg-toolbar {
    display: flex;
    width: 100%;
}

/* NOTE: Right-align the Acts/Artists pane switch — margin-left:auto absorbs the slack before it, so
   the switch and everything after it (the select control) are pushed to the toolbar's right edge,
   while search + the action buttons stay left. */
.mw-acts-layout .mw-dg-toolbar .mw-sg {
    margin-left: auto;
}

/* NOTE: Keep the Cards-view search field narrow and left-aligned so the floating
   control bar on the right never overlaps it (mirrors the grid's own 200px search). */
.mw-acts-card-search {
    max-width: 460px;
}

/* NOTE: Scroll viewport for the virtualized Cards view. <Virtualize> needs an ancestor
   with a fixed height + overflow so it can measure the visible window and render only the
   cards in view. Without this every card (and every thumbnail) mounted at once. */
.mw-acts-card-scroll {
    height: calc(var(--mw-full-height) - 120px);
    overflow-y: auto;
}

/* NOTE: Single-line clipped cell content with an ellipsis. Pair with a title="" attribute so
   the full text shows on hover. Used for long free-text grid columns; keeps rows uniform-height
   (tall/variable rows break the grid's row virtualization).
   The cap MUST be a fixed px, not 100%: the grid table is table-layout:auto with width:max-content,
   so a column grows to fit its content — max-width:100% resolves against that content-driven width
   and never clips. A definite max-width on this block span caps the span's content width, which in
   turn caps the auto-layout column, so the text finally clips with an ellipsis. */
.mw-acts-clip {
    display: block;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* NOTE: Compact incentive breakdown in the grid cell. Each DC/MM/SM part is its own span;
   nowrap keeps every part and the whole row on a single line so grid rows stay uniform-height
   (variable-height rows break the grid's row virtualization). Slightly reduced font so three
   parts fit the column comfortably. */
.mw-acts-incentives {
    font-size: 0.8125rem;
    white-space: nowrap;
}

.mw-acts-incentives > span {
    white-space: nowrap;
}
