/* ================================================== */
/* CSS for control sap.suite.ui.commons/NetworkGraph  */
/* Base theme                                         */
/* ================================================== */

.sapMSelectList li[data-islast='true'],
.sapMSelectList li[data-islast='true'] {
	border-bottom: var(--sapElement_BorderWidth) var(--sapContent_FocusStyle) var(--sapContent_ForegroundBorderColor);
}

.sapSuiteUiCommonsNetworkGraph {
	display: flex;
	min-width: 150px;
	min-height: 150px;
	flex-direction: column;
}

.sapSuiteUiCommonsNetworkGraphFullScreen {
	width: 100% !important;
}

.sapSuiteUiCommonsNetworkGraph:focus {
	outline: var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);
	outline-offset: 0;
}

.sapSuiteUiCommonsNetworkGraphPanning {
	cursor: move;
	cursor: grabbing;
}

.sapSuiteUiCommonsNetworkGraphEventWrapper {
	fill: none;
	pointer-events: all;
}

.sapSuiteUiCommonsNetworkGraphContentWrapperAccessibility {
	position: absolute;
	left:-10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.sapSuiteUiCommonsNetworkGraphScroller {
	overflow: auto;
	width: 100%;
	display: flex;
	position: relative;
	z-index: 0;
}

.sapSuiteUiCommonsNetworkGraphInnerScrollerCenter {
	position: relative;
	margin: auto;
}

.sapSuiteUiCommonsNetworkGraphInnerScrollerCenter.sapSuiteUiCommonsNetworkGraphInnerScrollerNoMargin {
	margin: 0;
	height: fit-content;
	min-height: 0;
}

.sapSuiteUiCommonsNetworkGraphSearchField {
	max-width: 220px;
}

.sapSuiteUiCommonsNetworkGraphBackgroundWhite {
	background-color: var(--sapGroup_ContentBackground);
}

.sapSuiteUiCommonsNetworkGraphBackgroundDefault {
	background-color: var(--sapBackgroundColor);
}

.sapSuiteFlickerFreeRect {
	fill: var(--sapBackgroundColor);
	width: 1000px;
	height: 1000px;
}

.sapSuiteUiCommonsNetworkGraphToolbar {
	flex-shrink: 0;
}

/** Svg elements **/
.sapSuiteUiCommonsNetworkGraphSvg {
	vertical-align: bottom;
	width: 100%;
	height: 100%;
	flex-shrink: 0;
	overflow: hidden;
	position: absolute;
	transform-origin: top left;
	pointer-events: none;
}

.sapSuiteUiCommonsNetworkGraphContainerOverlay {
	background-color: var(--sapList_Background);
	width: 100%;
	height: 100%;
}

.sapSuiteUiCommonsNetworkGraphIcon {
	dominant-baseline: central;
	pointer-events: none;
}

html[dir=rtl] .sapSuiteUiCommonsNetworkGraphIcon {
	transform-box: fill-box;
	transform-origin: center;
	transform: scaleX(-1);
}

.sapSuiteUiCommonsNetworkGraphSvg .sapSuiteUiCommonsNetworkGraphIcon,
.sapSuiteUiCommonsNetworkGraphDivActionButton .sapSuiteUiCommonsNetworkGraphIcon,
.sapSuiteUiCommonsNetworkTopGroup .sapSuiteUiCommonsNetworkGraphIcon,
.sapSuiteUiCommonsNetworkGroupHeader .sapSuiteUiCommonsNetworkGraphIcon {
	font-family: var(--sapContent_IconFontFamily);
}

.sapSuiteUiCommonsNetworkGraphLegend {
	width: 200px;
	height: 100%;
	flex-shrink: 0;
	margin: 10px;
	overflow: scroll;
}

.sapSuiteUiCommonsNetworkGraphContentWrapper {
	display: flex;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.sapSuiteUiCommonsNetworkGraphContentWrapper:focus {
	outline: var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);
	outline-offset: 1px;
}

.sapSuiteUiCommonsNetworkGraphContentFocusHidden:focus {
	outline: none;
}

/** Legend **/
.sapSuiteUiCommonsNetworkGraphLegendLine {
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-bottom: 2px;
	width: fit-content;
}

.sapSuiteUiCommonsNetworkGraphLegendTitleLine {
	padding-top: 10px;
}

.sapSuiteUiCommonsNetworkGraphLegendTitleNode,
.sapSuiteUiCommonsNetworkGraphLegendTitleLine {
	padding-bottom: 2px;
}

.sapSuiteUiCommonsNetworkGraphLegendLine:hover {
	background-color: var(--sapButton_Hover_Background);
}

.sapSuiteUiCommonsNetworkGraphLegendColorLine {
	width: 10px;
	height: 10px;
	margin: 6px;
	background-color: var(--sapContent_ForegroundBorderColor);
	border: var(--sapElement_BorderWidth) var(--sapContent_FocusStyle) var(--sapContent_ForegroundBorderColor);
	flex-shrink: 0; /* Prevent shrinking */
}

.sapSuiteUiCommonsNetworkGraphLegendLineLabel {
	margin-right: 5px;
}

/** Attributes **/
.sapSuiteUiCommonsNetworkGraphSvg .sapSuiteUiCommonsNetworkGraphAttribute {
	font-size: var(--sapFontSmallSize);
	fill: var(--sapTextColor);
}

.sapSuiteUiCommonsNetworkGraphSvg .sapSuiteUiCommonsNetworkGraphAttributeValue {
	font-family: var(--sapFontFamily);
}

.sapSuiteUiCommonsNetworkGraphAttributeValue {
	font-family: var(--sapFontFamily);
}

.sapSuiteUiCommonsNetworkGraphLegendColorLine.sapSuiteUiCommonsNetworkElementSuccess {
	background-color: var(--sapSuccessBorderColor);
}

.sapSuiteUiCommonsNetworkGraphLegendColorLine.sapSuiteUiCommonsNetworkElementError {
	background-color: var(--sapErrorBorderColor);
}

.sapSuiteUiCommonsNetworkGraphLegendColorLine.sapSuiteUiCommonsNetworkElementInformation {
	background-color: var(--sapHighlightColor);
}

.sapSuiteUiCommonsNetworkGraphLegendColorLine.sapSuiteUiCommonsNetworkElementWarning {
	background-color: var(--sapWarningBorderColor);
}

.sapSuiteUiCommonsNetworkAlertWrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--sapTextColor);
	opacity: 0;
	pointer-events: none;
	transition: opacity ease-in-out;
	z-index: 500;
}

.sapSuiteUiCommonsNetworkAlertText {
	font-size: 1.375rem;
	color: var(--sapTile_Background);
	position: relative;
	margin: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
}

/* ============================================== */
/* CSS for control sap.suite.ui.commons/GraphMap  */
/* ============================================== */

.sapSuiteUiCommonsNetworkGraphMapDivNodes {
	pointer-events: none;
	transform-origin: top left;
	position: absolute;
	width: 100%;
}

.sapSuiteUiCommonsNetworkGraphMapSvg {
	vertical-align: bottom;
	width: 100%;
	height: 100%;
	flex-shrink: 0;
	overflow: hidden;
}

.sapSuiteUiCommonsNetworkGraphMapDivGroups {
	pointer-events: none;
	transform-origin: top left;
	position: absolute;
	width: 100%;
}

html[dir=rtl] .sapSuiteUiCommonsNetworkGraphMapDivGroups,
html[dir=rtl] .sapSuiteUiCommonsNetworkGraphMapDivNodes {
	transform-origin: top right;
}

.sapSuiteUiCommonsNetworkGraphMapDivNodes .sapSuiteUiCommonsNetworkBox .sapSuiteUiCommonsNetworkGraphDivInner,
.sapSuiteUiCommonsNetworkGraphMapDivNodes .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiCommonsNetworkGraphDivInner {
	pointer-events: none;
}

.sapSuiteUiCommonsNetworkGraphMapBoundary {
	fill: none;
	stroke: var(--sapContent_ForegroundBorderColor);
	vector-effect: non-scaling-stroke;
	stroke-width: 2px;
	shape-rendering: crispEdges;
}

.sapSuiteUiCommonsNetworkGraphMapTitle {
	height: 3rem;
	display: flex;
	align-items: center;
	padding-left: 10px;
	padding-right: 10px;
	border-bottom: var(--sapElement_BorderWidth) var(--sapContent_FocusStyle) var(--sapGroup_TitleBorderColor);
	flex-shrink: 0;
	box-sizing: border-box;
}

.sapUiSizeCompact .sapSuiteUiCommonsNetworkGraphMapTitle {
	height: 2rem;
}

.sapSuiteUiCommonsNetworkGraphMapNavigator {
	stroke: var(--sapActiveColor);
	fill: none;
	stroke-width: 2px;
	vector-effect: non-scaling-stroke;
}

.sapSuiteUiCommonsNetworkGraphSvgNavigator {
	position: absolute;
	pointer-events: none;
}

.sapSuiteUiCommonsNetworkGraphMapContent {
	margin: 12px;
	display: flex;
	position: relative;
}

.sapSuiteUiCommonsNetworkGraphMapTitleText {
	font-size: var(--sapFontLargeSize);
	color: var(--sapTextColor);
}

.sapSuiteUiCommonsNetworkGraphMap {
	width: 100%;
	display: flex;
	flex-direction: column;
}

.sapSuiteNetworkGraphErrorText {
	margin: 5px;
	color: var(--sapErrorBorderColor);
}

.sapSuiteUiCommonsNetworkGraph.sapSuiteUiCommonsNetworkGraphLayered.sapSuiteUiCommonsNetworkGraphCrispEdges .sapSuiteUiCommonsNetworkGraphSvg path,
.sapSuiteUiCommonsNetworkGraph.sapSuiteUiCommonsNetworkGraphLayered.sapSuiteUiCommonsNetworkGraphCrispEdges .sapSuiteUiCommonsNetworkGraphSvg line,
.sapSuiteUiCommonsNetworkGraph.sapSuiteUiCommonsNetworkGraphLayered.sapSuiteUiCommonsNetworkGraphCrispEdges .sapSuiteUiCommonsNetworkGraphSvg rect {
	shape-rendering: crispedges;
}

.sapSuiteUiCommonsNetworkGraph.sapSuiteUiCommonsNetworkGraphLayered.sapSuiteUiCommonsNetworkGraphDefaultLineWidth .sapSuiteUiCommonsNetworkGraphSvg path,
.sapSuiteUiCommonsNetworkGraph.sapSuiteUiCommonsNetworkGraphLayered.sapSuiteUiCommonsNetworkGraphDefaultLineWidth .sapSuiteUiCommonsNetworkGraphSvg rect {
	vector-effect: non-scaling-stroke;
}

.sapSuiteUiCommonsNetworkGraph.sapSuiteUiCommonsNetworkGraphLayered .sapSuiteUiCommonsNetworkLineArrow {
	vector-effect: none;
	shape-rendering: auto;
}

.sapSuiteUiCommonsNetworkLaneBorder {
	stroke-dasharray: 5, 5;
}

.sapSuiteUiCommonsNetworkGraphLaneIcon {
	font-family: var(--sapContent_IconFontFamily);
	pointer-events: none;
}

.sapSuiteUiCommonsNetworkGraphLaneIconWrapper {
	cursor: pointer;
	fill: none;
	pointer-events: fill;
}

.sapSuiteUiCommonsNetworkGraphDivNodes {
	position: absolute;
	pointer-events: none;
	transform-origin: top left;
	width: 100%;
	height: 100%;
	z-index: 8;
}

.sapSuiteUiCommonsNetworkGraphDivNodesCentered {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

.sapSuiteUiCommonsNetworkGraphDivGroups {
	transform-origin: top left;
	position: absolute;
	overflow: hidden;
	width: 100%;
}

.sapSuiteUiCommonsNetworkGraphSwimLane .sapSuiteUiCommonsNetworkGraphDivGroups {
	z-index: 49;
	pointer-events: none;
}

.sapSuiteUiCommonsNetworkGraphSwimLane .sapSuiteUiCommonsNetworkGraphSvg {
	pointer-events: all;
}

.sapSuiteUiCommonsNetworkGroupCollapsed.sapSuiteUiCommonsNetworkGroupVerticalSwimLane .sapSuiteUiCommonsNetworkGroupHeader {
	opacity: 0.8;
}

.sapSuiteUiCommonsNetworkGraphLineButtons {
	position: absolute;
	z-index: 9;
	display: flex;
}

.sapSuiteUiCommonsNetworkGraphNoDataWrapper {
	margin-left: auto;
	margin-right: auto;
	margin-top: auto;
	margin-bottom: auto;
	display: flex;
	flex-direction: unset;
	align-items: center;
}

.sapSuiteUiCommonsNetworkGraphLoadingWrapper {
	margin-left: auto;
	margin-right: auto;
	margin-top: auto;
	margin-bottom: auto;
	display: flex;
	flex-direction: unset;
	align-items: center;
}

.sapSuiteNetworkGraphSvgMargin {
	margin: auto;
}

.sapSuiteNetworkGraphSvgPosition {
	position: relative;
}

.sapSuiteUiCommonsNetworkGraphMapDivGroupsLeft {
	left: 0;
}

.sapSuiteUiCommonsNetworkGroup.sapSuiteUiCommonsNetworkElementFocus {
	outline: var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);
	outline-offset: 1px;
}