/*
 * DraggableGridComponent (Base.Presentation/Editors/DraggableGrid) has no CSS isolation available —
 * this app's host page (Tevarai.Blazor.Server/Pages/_Host.cshtml) leaves the generated
 * "Tevarai.Blazor.Server.styles.css" bundle link commented out, so no *.razor.css file in this
 * codebase is ever loaded. These rules therefore live here instead, as a plain stylesheet linked
 * directly from _Host.cshtml, matching every other Presentation stylesheet's convention.
 */

/*
 * The editor fills whatever the XAF view item gives it rather than hardcoding a pixel height, so the
 * same grid works full-page and inside a sized DashboardViewItem. Host views can override the
 * --draggable-grid-height custom property to pin a specific height.
 */
.draggable-grid {
	display: flex;
	flex-direction: column;
	height: var(--draggable-grid-height, 100%);
	min-height: var(--draggable-grid-min-height, 20rem);
}

.draggable-grid .draggable-grid__grid {
	flex: 1 1 auto;
	min-height: 0;
}

/* Signal that rows are draggable only while reordering is actually enabled. */
.draggable-grid .draggable-grid__grid .dxbl-grid-drag-handle {
	cursor: grab;
}

.draggable-grid .draggable-grid__grid .dxbl-grid-drag-handle:active {
	cursor: grabbing;
}

/*
 * The select-all/select-row checkbox column (DraggableGridComponent.razor's "isEditableBool" branch)
 * is pinned into its own frozen pane (FixedPosition="Left") to keep it always leftmost and immovable.
 * Its header and data cells are tagged with this class from OnCustomizeElement, since the default
 * header-caption alignment doesn't match the cell alignment for a templated column, and DevExpress
 * draws the frozen pane's boundary line as a border/shadow on the cell itself — not reachable from
 * inside HeaderCaptionTemplate/CellDisplayTemplate.
 */
.draggable-grid .draggable-grid__grid .draggable-grid__selection-cell {
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: none !important;
	box-shadow: none !important;
}
