/* Estilos mínimos do app (arquivo externo para não violar a CSP). */

html,
body {
	height: 100%;
	margin: 0;
	padding: 0;
}

.omApsBody > .sapUiComponentContainer {
	height: 100%;
}

/* NavContainer ocupa o espaço restante abaixo da ShellBar (item flex). */
.omApsNav {
	min-height: 0;
}

.omApsTiles {
	padding: 1rem;
}

/* --- Sequenciamento: KPIs do cabeçalho --------------------------------- */

.omApsKpiBar {
	padding-top: 0.5rem;
}

.omApsKpi {
	min-width: 9rem;
	padding: 0 1.5rem 0 0;
}

.omApsKpiValue {
	font-size: 1.125rem;
}

/* --- Sequenciamento: timeline (om.aps.control.GanttTimeline) ------------ */

.omApsGantt {
	--omApsGanttLabelWidth: 10rem;
	--omApsGanttRowHeight: 2.5rem;
	width: 100%;
	font-size: 0.875rem;
}

.omApsGanttEmpty {
	padding: 1rem;
	color: var(--sapContent_LabelColor, #6a6d70);
}

.omApsGanttScroll {
	width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	border: 1px solid var(--sapList_BorderColor, #e5e5e5);
	border-radius: 0.25rem;
}

.omApsGanttGrid {
	position: relative;
	display: inline-block;
	min-width: 100%;
}

.omApsGanttRow {
	display: flex;
	align-items: stretch;
	min-height: var(--omApsGanttRowHeight);
	border-bottom: 1px solid var(--sapList_BorderColor, #e5e5e5);
}

.omApsGanttRow:last-child {
	border-bottom: none;
}

.omApsGanttHeadRow {
	position: sticky;
	top: 0;
	z-index: 3;
	min-height: 2.25rem;
	background-color: var(--sapList_HeaderBackground, #f7f7f7);
}

.omApsGanttLabel {
	position: sticky;
	left: 0;
	z-index: 2;
	flex: 0 0 var(--omApsGanttLabelWidth);
	width: var(--omApsGanttLabelWidth);
	box-sizing: border-box;
	padding: 0.6rem 0.75rem;
	background-color: var(--sapList_Background, #fff);
	border-right: 1px solid var(--sapList_BorderColor, #e5e5e5);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.omApsGanttHeadRow .omApsGanttLabel {
	z-index: 4;
	font-weight: bold;
	background-color: var(--sapList_HeaderBackground, #f7f7f7);
	color: var(--sapList_HeaderTextColor, #32363a);
}

.omApsGanttScale,
.omApsGanttLane {
	position: relative;
	flex: 0 0 auto;
}

.omApsGanttScale {
	height: 2.25rem;
}

.omApsGanttTick,
.omApsGanttGridline {
	position: absolute;
	top: 0;
	bottom: 0;
	border-left: 1px solid var(--sapList_BorderColor, #e5e5e5);
}

.omApsGanttTickText {
	position: absolute;
	top: 0.6rem;
	left: 0.375rem;
	font-size: 0.75rem;
	white-space: nowrap;
	color: var(--sapContent_LabelColor, #6a6d70);
}

.omApsGanttNow {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 1;
	border-left: 2px dashed var(--sapErrorBorderColor, #bb0000);
	pointer-events: none;
}

.omApsGanttBar {
	position: absolute;
	top: 0.3rem;
	bottom: 0.3rem;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	border-radius: 0.25rem;
	overflow: hidden;
	cursor: pointer;
	font-size: 0.75rem;
	color: var(--sapContent_ContrastTextColor, #fff);
}

.omApsGanttBar:hover {
	filter: brightness(1.1);
}

.omApsGanttBar:focus {
	outline: 0.125rem solid var(--sapContent_FocusColor, #000);
	outline-offset: -0.125rem;
}

.omApsGanttBar--late {
	box-shadow: inset 0 0 0 0.125rem var(--sapErrorBorderColor, #bb0000);
}

/* Trecho de setup: hachura sobre a cor da ordem. */
.omApsGanttSetup {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	background-image: repeating-linear-gradient(45deg,
			rgba(0, 0, 0, 0.35) 0, rgba(0, 0, 0, 0.35) 0.1875rem,
			rgba(0, 0, 0, 0) 0.1875rem, rgba(0, 0, 0, 0) 0.375rem);
}

.omApsGanttBarText {
	position: relative;
	padding: 0 0.375rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Paleta de gráficos do tema (Horizon): consistente em claro e escuro. */
.omApsGanttBar--c0 {
	background-color: var(--sapChart_OrderedColor_1, #5899da);
}

.omApsGanttBar--c1 {
	background-color: var(--sapChart_OrderedColor_2, #e8743b);
}

.omApsGanttBar--c2 {
	background-color: var(--sapChart_OrderedColor_3, #19a979);
}

.omApsGanttBar--c3 {
	background-color: var(--sapChart_OrderedColor_4, #ed4a7b);
}

.omApsGanttBar--c4 {
	background-color: var(--sapChart_OrderedColor_5, #945ecf);
}

.omApsGanttBar--c5 {
	background-color: var(--sapChart_OrderedColor_6, #13a4b4);
}

.omApsGanttBar--c6 {
	background-color: var(--sapChart_OrderedColor_7, #525df4);
}

.omApsGanttBar--c7 {
	background-color: var(--sapChart_OrderedColor_8, #bf399e);
}


/* ==== Onda D · D6 — pré-visualização do layout de etiqueta (designer) ==== */
.omSupLabelPreview {
	border: 1px dashed var(--sapField_BorderColor, #89919a);
	border-radius: 0.25rem;
	padding: 0.5rem;
	background-color: var(--sapField_Background, #fff);
	overflow: hidden;
}

.omSupLabelPreviewField {
	font-family: var(--sapFontFamily, "72", Arial, sans-serif);
	font-size: var(--sapFontSmallSize, 0.75rem);
	line-height: 1.4;
}