/* NOTE: This file was generated as an optimized version of "library.source.less" for the Theme Designer. */

/*!
 * OpenUI5
 * (c) Copyright 2026 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */

@import "../../../../../../Base/baseLib/baseTheme/base.less"; /* ORIGINAL IMPORT PATH: "../../../../../sap/ui/core/themes/base/base.less" */

@import "../../../../../sap/ui/core/themes/base/global.less";

/* START "ActionsStrip.less" */
/* ======================================================== */
/* CSS for control sap.ui.integration.controls/ActionsStrip */
/* Base theme                                               */
/* ======================================================== */

.sapUiIntActionsStrip {
	display: flex;
	align-items: center;
	flex: 1;
	min-width: 0;

	.sapMIBar {
		flex: 1;
		padding: 0;
	}

	.sapMBarChild:first-child {
		margin-left: 0;
	}

	.sapMLabel {
		font-weight: normal;
		font-family: var(--sapFontFamily);
		color: var(--sapContent_LabelColor);
	}
}
/* END "ActionsStrip.less" */

/* START "AdaptiveCard.less" */
/* ================================================ */
/* CSS for control sap.ui.integration.AdaptiveCard  */
/* Base theme                                       */
/* ================================================ */

.ac-actionSet {
	padding: 0.125rem;
}

/* The following is based on the public css classes for styling of Adaptive Cards.
   See https://learn.microsoft.com/en-us/adaptive-cards/sdk/rendering-cards/javascript/native-styling. */

.ac-container.ac-selectable:hover {
	background-color: var(--sapTile_Hover_Background);
	cursor: pointer;
}

.ac-container.ac-selectable:active {
	background-color: var(--sapTile_Active_Background);
	cursor: pointer;
}
/* END "AdaptiveCard.less" */

/* START "AnalyticsCloudContent.less" */
/* ================================================================== */
/* CSS for control sap.ui.integration.controls/AnalyticsCloudContent  */
/* Base theme                                                         */
/* ================================================================== */

.sapFCard {

	.sapFCardContent:has(.sapFCardAnalyticsCloudContent),
	.sapFCardAnalyticsCloudContent {
		overflow: visible;
	}

	.sapFCardContent:has(.sapFCardAnalyticsCloudContent) {
		padding-bottom: 0.8rem;
	}

	.sapUiIntAnalyticsCloudContentContainer {
		height: 100%;
		width: 100%;
	}
}
/* END "AnalyticsCloudContent.less" */

/* START "BlockingMessage.less" */
/* =========================================================== */
/* CSS for control sap.ui.integration.controls/BlockingMessage */
/* Base theme                                                  */
/* =========================================================== */

.sapUiIntBlockingMsg {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}
/* END "BlockingMessage.less" */

/* START "CalendarContent.less" */
/* =========================================================== */
/* CSS for control sap.ui.integration.controls/CalendarContent */
/* Base theme                                                  */
/* =========================================================== */

.sapFCardCalendarContent .sapFCalCard {
	padding: 1rem;

	.sapUiCal:not(.sapUiCalInt) {
		width: 100%;
		padding: 0;
		min-height: 16.5rem;
		min-width: 16.5rem;
	}

	.sapUiCalMonthPicker,
	.sapUiCalYearPicker {
		left: 0;
		margin-left: 0;
	}

	.sapUiCal .sapUiCalMonthView {
		padding: 0;
	}

	.sapUiCalendarAppContainer {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		box-sizing: border-box;
		padding-right: 0;
	}

	.sapFCalCardLineSeparator {
		border-top: 0.0625rem solid var(--sapGroup_ContentBorderColor);
		margin-bottom: 1rem;
	}

	.sapUiCalendarAppContainer > .sapUiCalendarAppContainerLeft {
		padding: 0;
		width: 15%;
		margin: 0 0.75rem 0 0;

		.sapUiCalendarAppStart {
			font-size: @sapMFontMediumSize;
			color: var(--sapTextColor);
			text-align: right;
		}

		.sapUiCalendarAppEnd {
			font-size: var(--sapFontSmallSize);
			color: var(--sapContent_LabelColor);
			margin-top: 0.25rem;
			text-align: right;
		}
	}

	.sapUiCalendarAppContainer > .sapUiCalendarAppContainerRight {
		flex: 1 1 auto;
		margin-right: 0;
		width: 70%;
	}

	.sapFCalCardRightSide {
		display: flex;
		flex-direction: column;

		.sapFCalCardAppList {
			width: 100%;
		}

		.sapMBtn {
			align-self: center;
		}
	}

	.sapUiCalendarAppContainer.sapUiCalendarAppCurrent > .sapUiCalendarAppContainerRight {
		position: relative;

		&::after {
			content: '';
			display: block;
			position: absolute;
			border: 2px solid var(--sapLegend_CurrentDateTime);
			border-radius: 4px;
			top: -4px;
			left: -4px;
			bottom: -4px;
			right: -4px;
			pointer-events: none;
		}
	}

	.sapUiCalendarAppContainer > .sapUiCalendarAppContainerRight > .sapUiCalendarApp {
		margin: 0;
	}

	.sapUiCalLegMoreText {
		font-size: @sapMFontMediumSize;
		color: var(--sapLink_Active_Color);
		margin-left: 0.25rem;

		& > .sapUiUnifiedLegendSquare {
			display: none;
		}
	}

	.sapFCalCardNoItemsText {
		line-height: 2rem;
		text-align: center;
		font-size: 0.9rem;
	}

	.sapUiUnifiedLegend {
		padding: 1rem 0.5rem;
	}

	.sapUiCalendarAppContainer > .sapUiCalendarAppContainerRight > .sapUiCalendarApp:not(.sapUiCalendarAppDisabled):active {

		.sapUiCalendarAppCont {

			.sapUiCalendarAppIcon::before,
			.sapUiCalendarAppTitleWrapper .sapUiCalendarAppTitle,
			.sapUiCalendarAppTitleWrapper .sapUiCalendarAppText {
				color: var(--sapContent_Selected_TextColor);
			}
		}
	}

	.sapUiCalendarApp.sapUiCalendarAppDisabled.sapUiCalendarAppSel,
	.sapUiCalendarApp.sapUiCalendarAppDisabled:active,
	.sapUiCalendarApp.sapUiCalendarAppDisabled.sapUiCalendarAppSel:active {
		color: transparent;
		background-color: transparent;
	}

	.sapUiCalendarApp.sapUiCalendarAppDisabled {
		 cursor: auto;
	}
}

.sapUiSizeCompact {

	.sapFCardCalendarContent .sapFCalCard {

		.sapUiCalMonthPicker,
		.sapUiCalYearPicker {
			left: 0;
			margin-left: 0;
		}

		.sapUiCalContent {
			min-height: 14.5rem;
		}
	}
}

.sapFCalCard .sapMTBStandard {
	border-bottom: none;
}

.sapFCalCard .sapUiCalendarAppCont {
	height: 100%;
	display: flex;
}

/* center vertically if it is title-only or text-only appointment */
.sapFCalCard .sapUiCalendarAppOneLine {

	.sapUiCalendarAppIcon,
	.sapUiCalendarAppTitle,
	.sapUiCalendarAppText {
		height: 3rem;
		line-height: 3rem;
		padding-top: 0;
		padding-bottom: 0;
	}

	.sapUiCalendarAppIcon {
		top: 0;
	}
}

/* Two columns */

.sapFCardCalendarContent.sapMPCInCardTwoColumns {

	.sapFCalCardLayout {
		display: flex;
	}

	.sapFCalCardLineSeparator {
		display: none;
	}

	.sapFCalCardLeftSide,
	.sapFCalCardRightSide {
		width: 50%;
	}

	.sapFCalCardRightSide {
		display: flex;
		flex-direction: column;

		.sapFCalCardAppList {
			width: 100%;
		}

		.sapMBtn {
			align-self: center;
		}
	}

	/* visualize the start and end on top of the appointment content */
	.sapUiCalendarAppContainer {
		flex-direction: column;

		.sapUiCalendarAppContainerLeft {
			width: 100%;
			margin: 0;
			padding: 0 0 0.0625rem 0;

			.sapUiCalendarAppStart,
			.sapUiCalendarAppEnd {
				display: inline-block;
				margin: 0;
				padding: 0;
			}

			.sapUiCalendarAppEnd {
				margin-left: 0.25rem;
			}
		}

		.sapUiCalendarAppContainerRight {
			width: 100%;
		}
	}

	.sapUiCalContent {
		min-height: 19.25rem;
	}
}

/* adjust calendar card on small screen sizes (phone) or higner zoom factor */
html.sapUiMedia-Std-Phone,
html.sapUiMedia-StdExt-Phone {

	.sapFCardCalendarContent .sapFCalCard {
		padding: 1rem 0.375rem;

		.sapMIBar.sapMTB .sapMBarChild ~ .sapMBarChild {
			margin-left: 0.125rem;
		}
	}
}

html.sapUiMedia-Std-Tablet,
html.sapUiMedia-StdExt-Tablet {

	.sapFCardCalendarContent .sapFCalCard {

		.sapMIBar.sapMTB .sapMBarChild ~ .sapMBarChild {
			margin-left: 0.25rem;
		}
	}
}

.sapFCardCalendarContent .sapFCalCard {

	.sapUiCalMonthPicker,
	.sapUiCalYearPicker {
		width: auto;
	}
}
/* END "CalendarContent.less" */

/* START "Card.less" */
/* =============================================== */
/* CSS for control sap.ui.integration.widgets/Card */
/* Base theme                                      */
/* ================================================*/

.sapUiIntCard {

	.sapMListTblHeader,
	.sapMLIBTypeInactive {
		cursor: default;
	}
}

.sapMDialog.sapUiIntCardDialog {

	&.sapUiIntCardDialogAnimate {
		transition: opacity 0.4s, left 0.4s, top 0.4s;
	}

	.sapMDialogSection,
	.sapMDialogScroll,
	.sapMDialogScrollCont,
	.sapUiIntCard {
		/* allows scrolling inside the card content instead of dialog content */
		max-height: inherit;
	}

	.sapUiIntCard,
	.sapMDialogScrollCont {
		/* allows resizing */
		height: 100%;
	}

	.sapFCardHeader {
		box-shadow: var(--sapContent_HeaderShadow);
		border-radius: var(--sapElement_BorderCornerRadius) var(--sapElement_BorderCornerRadius) 0 0;
	}

	&.sapMDialogDraggable .sapFCardHeader {

		.sapMNC,
		.sapFCardStatus {
			cursor: text;
		}

		.sapFAvatar {
			cursor: default;
		}
	}

	.sapUiIntCard {
		border-radius: 0 0 var(--sapElement_BorderCornerRadius) var(--sapElement_BorderCornerRadius);

		.sapFCardFilterBar {
			border-bottom: none;
			box-shadow: var(--sapContent_HeaderShadow);
		}

		.sapFCardContent {
			overflow: auto;
			border-radius: 0 0 var(--sapElement_BorderCornerRadius) var(--sapElement_BorderCornerRadius);
		}

		.sapFCardObjectContent > .sapMVBox {
			padding-bottom: 1rem;
		}

		.sapFCardFooter {
			border-top: 1px solid var(--sapPageFooter_BorderColor);
			padding-top: 0.25rem;
			padding-bottom: 0.25rem;
		}
	}

	&.sapMDialog:not(.sapUiResponsiveContentPadding):not(.sapUiContentPadding) .sapMDialogScroll {
		padding-bottom: 0;
		padding-top: 0;
	}

	&.sapMDialog {
		min-height: 5.5rem; /* 2.75 + 2.75, which is the min-height of the content of the Dialog plus the footer of the Card; */
	}
}

.sapFCard.sapUiIntCardWithFooter:not(.sapUiIntCardFooterInvisible) .sapFCardContent {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.sapUiIntCard .sapFCardContentMessageContainer {
	padding-top: 0;
}

.sapUiIntCardCustomImage {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
}

.sapMIllustratedMessageMainContent:has(.sapUiIntCardCustomImage) svg {
	visibility: hidden;
}

.sapUiIntCard .sapFCardBaseContent.sapFCardBaseContentHasMessageLoading > .sapUiLocalBusyIndicator {
	background-color: var(--sapTile_Background);
	opacity: 0.4;
	transition: unset;

	.sapUiLocalBusyIndicatorAnimation {
		visibility: hidden;
	}
}

.sapUiIntCard .sapFCardContentMessageContainer .sapFCardContentMessage {
	pointer-events: all;
	box-shadow: 0 0 12px 0 var(--sapList_BorderColor);
	width: 100%;
	position: absolute;
	border-right: 0;
	border-left: 0;
	border-radius: 0;

	&.sapFCardContentMessageToast {
		background-color: var(--sapTile_Background);
		border-color: var(--sapGroup_ContentBorderColor);

		.sapMBtn .sapMBtnInner:not(:hover):not(:active) {
			background-color: transparent;
			border-color: transparent;
		}
	}

	&.sapFCardContentMessageLoading {
		background-color: var(--sapTile_Background);
		z-index: 1;
		clip-path: polygon(0 0, 100% 0, 100% 0, 75% 0, 50% 0, 25% 1px, 0 3px);
		border-top-width: 2px;
		border-top-color: var(--sapContent_BusyColor);
		opacity: 0.6;
		animation: sapUiIntCardLoadingMessage 2s linear infinite;
	}
}

@keyframes sapUiIntCardLoadingMessage {

	0% {
		clip-path: polygon(0 0, 100% 0, 100% 0, 75% 0, 50% 0, 25% 1px, 0 3px);
	}

	17% {
		clip-path: polygon(0 0, 100% 0, 100% 0, 75% 0, 50% 1px, 25% 3px, 0 1px);
	}

	34% {
		clip-path: polygon(0 0, 100% 0, 100% 0, 75% 1px, 50% 3px, 25% 1px, 0 0);
	}

	51% {
		clip-path: polygon(0 0, 100% 0, 100% 1px, 75% 3px, 50% 1px, 25% 0, 0 0);
	}

	66% {
		clip-path: polygon(0 0, 100% 0, 100% 3px, 75% 1px, 50% 0, 25% 0, 0 0);
	}

	84% {
		clip-path: polygon(0 0, 100% 0, 100% 1px, 75% 0, 50% 0, 25% 0, 0 1px);
	}

	100% {
		clip-path: polygon(0 0, 100% 0, 100% 0, 75% 0, 50% 0, 25% 1px, 0 3px);
	}
}

html[data-sap-ui-animation='on'] .sapUiIntCard .sapFCardContentMessageContainer .sapFCardContentMessage:not(.sapFCardContentMessageLoading):not(.sapUiIntCardShowMessageFinished) {
	animation: sapUiIntCardShowMessage 0.4s ease-in-out;
}

@keyframes sapUiIntCardShowMessage {

	0% {
		opacity: 0.7;
		clip-path: polygon(0 0, 30% 1px, 30% 1px, 0 1px);
	}

	40% {
		opacity: 1;
		clip-path: polygon(0 0, 100% 0, 100% 1px, 0 1px);
	}

	100% {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
		opacity: 1;
	}
}

html[data-sap-ui-animation='on'] .sapUiIntCard .sapFCardContentMessageContainer .sapFCardContentMessage:not(.sapUiIntCardMessageIconAppearFinished) {

	.sapMMsgStripIcon {
		animation: sapUiIntCardMessageIconAppear 0.5s 0.4s ease-in-out;
		transform: scale(0);
		opacity: 0;
		animation-fill-mode: forwards;
	}
}

@keyframes sapUiIntCardMessageIconAppear {

	0% {
		transform: scale(0);
	}

	50% {
		transform: scale(1.18);
		opacity: 1;
	}

	80% {
		transform: scale(0.9);
		opacity: 0.7;
	}

	100% {
		transform: scale(1);
		opacity: 1;
	}
}

html[data-sap-ui-animation='on'] .sapUiIntCard .sapFCardContentMessageContainer .sapFCardContentMessageClosing:not(.sapFCardContentMessageLoading) {
	animation: sapUiIntCardHideMessage 0.4s ease-in-out;
}

.sapFCardContentMessage.sapUiIntCardHideMessageFinished {
	/* prevents a re-appearing effect on close */
	visibility: hidden;
}

@keyframes sapUiIntCardHideMessage {

	0% {
		opacity: 1;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	}

	40% {
		opacity: 1;
		clip-path: polygon(0 0, 100% 0, 100% 1px, 0 1px);
	}

	100% {
		clip-path: polygon(0 0, 100% 0, 100% 1px, 0 1px);
		opacity: 0;
	}
}
/* END "Card.less" */

/* START "CardVariants.less" */
/* =============================================================== */
/* CSS for control sap.ui.integration.widgets/Card in Tile Variant */
/* Base theme                                                      */
/* ================================================================*/

.sapFCard.sapUiIntCardTileStandard,
.sapFCard.sapUiIntCardTileStandardWide,
.sapFCard.sapUiIntCardTileFlat,
.sapFCard.sapUiIntCardTileFlatWide {

	.sapFCardHeader {
		height: 100%;
		position: relative;
		padding: 0;

		&.sapFCardHeaderHasToolbar {

			/* Always hide toolbar for tiles */
			.sapFCardHeaderToolbarCont {
				display: none;
			}

			.sapFCardHeaderMainPart {
				align-items: unset;
			}

			.sapFCardHeaderText {
				margin-inline-end: 0;
			}
		}

		.sapFCardDataTimestamp,
		.sapFCardStatus {
			display: none;
		}

		.sapFCardHeaderMainPart {
			padding: 1rem;
			box-sizing: border-box;
			flex-direction: column;
			justify-content: space-between;
			height: 100%;
			text-decoration: none;
		}

		.sapFCardHeaderText {
			justify-content: flex-start;
		}

		&.sapFCardNumericHeader {

			.sapFCardHeaderMainPart .sapFCardSubtitle {
				align-items: flex-start;
			}

			.sapFCardAvatarAndIndicatorsLine {
				display: flex;
				align-items: center;
				overflow: hidden;

				.sapFCardIcon.sapFAvatar {
					margin-top: 0.5rem;
					margin-right: 0.5rem;

					&.sapFAvatarImage {
						margin-right: 0.5rem;
					}
				}
			}

			.sapFCardNumericIndicators {
				margin-top: 0.5rem;
			}
		}

		.sapFCardHeaderTopRow,
		.sapFCardHeaderMainWrapper {
			border-radius: var(--sapTile_BorderCornerRadius);
		}
	}

	&.sapFCardNoContent .sapFCardHeader .sapFCardHeaderMainPart {
		border-radius: inherit;
	}
}

.sapUiIntCardTileStandard,
.sapUiIntCardTileStandardWide,
.sapUiIntCardTileFlat,
.sapUiIntCardTileFlatWide,
.sapUiIntCardStandardHeader {

	&.sapFCardNoContent .sapFCardHeader.sapFCardHeaderMainPartOnly .sapFCardHeaderMainPart {
		align-items: unset;
	}
}

.sapFCard.sapUiIntCardTileFlat,
.sapFCard.sapUiIntCardTileFlatWide {

	.sapFCardHeader {

		.sapFCardHeaderMainPart {
			padding: 1rem 1rem 0.75rem;
		}

		.sapFCardHeaderText {
			justify-content: flex-start;
		}

		.sapFCardIcon.sapFAvatar {
			margin-top: 0;
		}

		.sapFCardIcon.sapFAvatarXS.sapFAvatarColorTransparent .sapUiIcon {
			font-size: 1.75rem;
		}

		&.sapFCardHeaderHasIcon,
		&.sapFCardHeaderHasNumber {

			.sapFCardSubtitle,
			.sapFCardUnitOfMeasurement {
				display: none;
			}
		}

		&.sapFCardNumericHeader {

			.sapFCardHeaderMainPart {
				padding: 1rem 1rem 0.75rem;
			}

			.sapFCardHeaderDetailsWrapper {
				display: none;
			}

			.sapFCardAvatarAndIndicatorsLine {

				.sapFCardIcon.sapFAvatar {
					margin-top: 0;
				}

				.sapFCardNumericIndicators {
					margin: 0;
					align-items: center;

					.sapMNC {
						margin: 0;

						.sapMNCValue > .sapMNCLargeFontSize {
							padding: 0;
							height: 1.75rem;
						}

						.sapMNCValue.WithoutMargin {
							justify-content: start;
						}

						.sapMNCIndScale {
							margin-left: 0.125rem;
							padding: 0rem;
						}
					}

					.sapFCardNumericIndicatorsSide {
						margin: 0;
						padding: 0;
					}
				}
			}

			&.sapFCardHeaderHasNumber .sapFCardIcon.sapFAvatarXS.sapFAvatarColorTransparent .sapUiIcon {
				font-size: 1.5rem;
			}
		}

		.sapFCardHeaderBanner {
			position: absolute;
			bottom: 0.75rem;
			right: 1.125rem;
		}

		.sapMIllustratedMessage {
			padding: 0;

			.sapMTitle {
				font-size: 0.875rem;
			}

			.sapMIllustratedMessageDescription {
				font-size: 0.75rem;
			}
		}
	}
}

.sapFCard.sapUiIntCardTileStandard,
.sapFCard.sapUiIntCardTileFlat {

	.sapFCardHeader .sapFCardNumericIndicatorsSide {
		display: none;
	}

	.sapFCardHeader .sapUiIntMicrochartChartWrapper {
		display: none;
	}
}

.sapFCard.sapUiIntCardSmallHeader,
.sapFCard.sapUiIntCardTileFlatWide {

	.sapFCardHeader .sapFCardNumericIndicatorsSide {
		flex-wrap: nowrap;
	}

	.sapFCardHeader.sapFCardNumericHeaderSIMC .sapFCardNumericIndicatorsSide {
		display: none;
	}

	.sapFCardHeader .sapUiIntMicrochartChartWrapper .sapUiIntMicrochartChart {
		max-height: 2.2rem;
		min-height: 2rem;
	}

	.sapFCardHeader .sapUiIntMicrochartChartWrapper .sapUiIntMicrochartChart .sapUiIntMicrochartChartInner {
		height: 2rem;
	}

	.sapMNCValue.WithoutMargin {
		justify-content: start;
	}
}

.sapFCard.sapUiIntCardTileStandardWide .sapFCardNumericHeader {

	&.sapFCardHeader .sapFCardNumericIndicatorsSide {
		flex-wrap: nowrap;
	}

	&.sapFCardNumericHeaderSIMC .sapUiIntMicrochartChartWrapper {
		position: absolute;
		top: 2.5rem;
		right: 1rem;
		width: 38%;
	}

	&.sapFCardNumericHeaderSIMC .sapFCardHeaderText {
		max-width: 58%;
	}

	&.sapFCardNumericHeaderMC .sapFCardAvatarAndIndicatorsLine .sapUiIntMicrochartChartWrapper {
		margin-top: -0.5rem;
	}
}

.sapFCard.sapUiIntCardTileFlat .sapFCardHeaderBanner {
	/* there is no space for banner in 2x1 tile */
	display: none;
}

.sapFCard.sapUiIntCardStandard .sapFCardHeaderBanner {
	/* the banner feature is not yet available for standard card variant */
	display: none!important;
}

.sapFCard.sapUiIntCardCompactHeader {
	height: 3rem;
	min-height: 3rem;

	.sapFCardHeader {
		padding: 0;

		.sapFCardHeaderMainPart {
			padding: 0.5rem 0.75rem
		}

		.sapFCardIcon.sapFAvatar {
			height: 1.9rem;
			width: 1.9rem;
			font-size: 0.9rem;
			letter-spacing: -1px;

			&.sapFAvatarColorTransparent .sapUiIcon {
				font-size: 1.25rem;
			}
		}

		.sapFCardHeaderText {
			height: 2rem;
		}

		.sapFCardHeaderTextSecondLine {
			display: inline-block;
			margin-top: 0;
		}

		.sapFCardHeaderToolbarCont .sapFCardHeaderToolbar {
			margin: -0.4rem 0 -0.25rem -1.8rem;
			height: 2rem;
		}
	}
}

.sapUiSizeCompact .sapFCard.sapUiIntCardCompactHeader {

	.sapFCardHeaderToolbarCont {
		padding-top: 0.25rem;
	}
}

.sapUiIntCardSmallHeader.sapFCard.sapFCardNoContent .sapFCardHeader.sapFCardHeaderMainPartOnly .sapFCardHeaderMainPart {
	align-items: center;
}
/* END "CardVariants.less" */

/* START "CustomElementBase.less" */
/* ======================================== */
/* CSS for control sap.ui.integration/Base  */
/* Base theme                               */
/* ======================================== */

ui-integration-card {
	display: inline-block;
	width: 100%;

	& > div[data-sap-ui-area] {
		height: 100%;
		width: 100%;
	}
}
/* END "CustomElementBase.less" */

/* START "CustomElementCard.less" */
/* ======================================== */
/* CSS for control sap.ui.integration/Card  */
/* Base theme                               */
/* ======================================== */

ui-integration-card {
	.sapFCard {
		height: 100%;
	}
}
/* END "CustomElementCard.less" */

/* START "HeaderInfoSection.less" */
/* ===================================================================== */
/* CSS for control sap.ui.integration.controls/headerInfoSectionControls */
/* Base theme                                                            */
/* ===================================================================== */

.sapUiIntHeaderInfoSectionRow {
	display: flex;
	flex-direction: row;
	gap: 0.5rem;
}

.sapUiIntHeaderInfoSectionColumn {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.sapUiIntHeaderInfoSectionItemsGroup {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

/* justify-content */
.sapUiIntHeaderInfoSectionItemJustifyStart {
	justify-content: flex-start;
}

.sapUiIntHeaderInfoSectionItemJustifyEnd {
	justify-content: flex-end;
}

.sapUiIntHeaderInfoSectionItemJustifySpaceBetween {
	justify-content: space-between;
}
/* END "HeaderInfoSection.less" */

/* START "Paginator.less" */
/* ====================================================== */
/* CSS for control sap.ui.integration.delegate/Paginator  */
/* Base theme                                             */
/* ====================================================== */

.sapUiIntPaginatorBusyIndicator {
	width: 100%;

	.sapMBusyIndicatorBusyArea {
		min-height: 4.625rem;
	}
}
/* END "Paginator.less" */

/* START "Footer.less" */
/* ================================================ */
/* CSS for control sap.ui.integration.cards/Footer  */
/* Base theme                                       */
/* ================================================ */

.sapFCardFooter {
	display: flex;
	justify-content: end;
	gap: 0.5rem;

	.sapFCardFooterShowMoreButton {
		max-width: 100%;
	}
}

.sapFCardFooterBorderLine {
	border-top: 1px solid var(--sapPageFooter_BorderColor);
}

.sapUiIntCard.sapUiIntCardIsOverflowing .sapFCardFooter {
	position: relative;
}

.sapUiIntCard.sapUiIntCardIsOverflowing:not(.sapUiIntCardDialogCard) .sapFCardFooter::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: -3rem;
	height: 3rem;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, var(--sapShellColor) 100%);
	pointer-events: none;
}
/* END "Footer.less" */

/* START "ImageWithOverlay.less" */
/* ============================================================= */
/* CSS for control sap.ui.integration.controls/ImageWithOverlay  */
/* Base theme                                                    */
/* ============================================================= */

.sapUiIntImageWithOverlay {
	display: flex;

	.sapUiIntImgWithOverlayImg {
		width: 100%;
		height: 100%;
	}

	.sapUiIntImgWithOverlayLayout {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		padding: 1rem;
		height: 100%;
		opacity: 0;

		.sapMText {
			line-height: 1.5rem;

			&.sapUiIntImgWithOverlayTitle {
				font-size: 1.75rem;
				line-height: 1.75rem;
				font-weight: 900;
			}
		}
	}

	&.sapUiIntImageWithOverlayPaddingMediumStart .sapUiIntImgWithOverlayLayout {
		padding-inline-start: @sapUiMarginMedium;
	}
}

.sapFCardObjectGroup {

	.sapUiIntImageWithOverlay.sapFCardObjectImageFullWidth.sapFCardObjectImage:only-child {
		height: ~"calc(100% + 32px)";
	}

	.sapUiIntImageWithOverlay:not(.sapFCardObjectImageFullWidth):only-child .sapUiIntImgWithOverlayImg {
		max-height: 100%;
	}
}

.sapUiIntImgWithOverlayLoaded .sapUiIntImgWithOverlayLayout {
	animation: sapUiInImgWithOverlayFadeInAnimation ease 1s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
	animation-delay: 500ms;
}

@keyframes sapUiInImgWithOverlayFadeInAnimation {

	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

.sapUiIntImageWithOverlay.sapUiIntImgWithOverlayNoAnimation .sapUiIntImgWithOverlayLayout {
	opacity: 1;
}
/* END "ImageWithOverlay.less" */

/* START "ListContentItem.less" */
/* ============================================================ */
/* CSS for control sap.ui.integration.controls/ListContentItem  */
/* Base theme                                                   */
/* ============================================================ */

@_sap_ui_integration_ListContentItem_BottomBorderHeight: 1px;
@_sap_ui_integration_ListContentItem_TextShadow: 0 0 var(--sapList_TextColor);

.sapUiIntLCI {
	padding: unset;

	&:not(.sapMLIBActionable) {
		cursor: auto;
	}

	/* apply the padding to the contents, to prevent clipping when buttons are hovered for example, due to overflow */
	.sapUiIntLCIContent > * {
		padding: 0 1rem;
	}

	&.sapUiIntLCIOneLine .sapUiIntLCIIconAndLines {
		min-height: calc(2.75rem ~"-" @_sap_ui_integration_ListContentItem_BottomBorderHeight);
		align-items: center;
	}

	&.sapUiIntLCIOneLine.sapUiIntLCIWithActionsStrip .sapUiIntLCIIconAndLines {
		min-height: 2.75rem;
	}

	&.sapUiIntLCITwoLines .sapUiIntLCIIconAndLines,
	&.sapUiIntLCIOneLine.sapUiIntLCIThumbnail .sapUiIntLCIIconAndLines {
		min-height: calc(5rem ~"-" @_sap_ui_integration_ListContentItem_BottomBorderHeight);
		align-items: center;
	}

	&.sapUiIntLCITwoLines.sapUiIntLCIWithActionsStrip .sapUiIntLCIIconAndLines,
	&.sapUiIntLCIOneLine.sapUiIntLCIThumbnail.sapUiIntLCIWithActionsStrip .sapUiIntLCIIconAndLines {
		min-height: 5rem;
	}

	&.sapUiIntLCIMultipleLines {
		padding-top: 1rem;
		padding-bottom: calc(1rem ~"-" @_sap_ui_integration_ListContentItem_BottomBorderHeight);

		.sapUiIntActionsStrip {
			margin-top: 0.5rem;
		}
	}

	&.sapUiIntLCITwoLines,
	&.sapUiIntLCIMultipleLines {

		.sapUiIntLCITitleWrapper {
			margin-bottom: 0.25rem;
		}
	}

	&.sapUiIntLCIWithActionsStrip {
		padding-bottom: calc(0.5rem ~"-" @_sap_ui_integration_ListContentItem_BottomBorderHeight);
	}

	.sapUiIntLCIIconAndLines {
		display: flex;

		> .sapFCardIcon {
			flex-shrink: 0;
		}

		.sapUiIntLCILines {
			flex: 1;
			overflow: hidden;
			display: flex;
			flex-direction: column;
			row-gap: 0.5rem;
			justify-content: center;

			.sapUiIntLCIAttrRow {
				display: flex;
				align-items: center;
			}

			.sapUiIntLCIAttrSecondCell {
				justify-content: flex-end;

				.sapMObjStatus {
					text-align: end;
				}
			}

			.sapUiIntLCIAttrCell {
				flex: 1;
				display: flex;
				align-items: center;
			}

			.sapMObjStatusNone .sapMObjStatusText {
				color: var(--sapContent_LabelColor);
			}
		}
	}

	.sapUiIntLCITitleWrapper,
	.sapUiIntLCIDescriptionWrapper {
		display: flex;
	}

	&.sapMLIBShowSeparator:last-child {
		border-bottom: 1px solid transparent;
	}
}

.sapUiIntLCITitle {
	color: var(--sapList_TextColor);
	text-shadow: @_sap_ui_integration_ListContentItem_TextShadow;
	font-size: @sapMFontMediumSize;
	flex: 1;
}

.sapUiIntLCIDescription {
	color: var(--sapContent_LabelColor);
	font-size: @sapMFontMediumSize;
	flex: 1;
}

.sapUiIntLCIInfo {
	display: flex;
	font-size: @sapMFontMediumSize;
	text-align: right;
	margin-left: 1rem;
	max-width: 40%;
}

.sapUiIntLCITitle,
.sapUiIntLCIDescription,
.sapUiIntLCIInfo {
	line-height: 1rem;
	font-family: var(--sapFontFamily);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sapUiIntLCIContent .sapUiIntLCIInfo {
	white-space: normal;
}

/* Interactive states */
.sapUiIntLCI.sapMLIBActive {

	.sapFCardIcon.sapFAvatar .sapUiIcon,
	.sapUiIntLCIInfo {
		color: var(--sapList_Active_TextColor);
	}
}

/* Styles for compact mode only */
.sapUiSizeCompact .sapUiIntLCI {

	&.sapUiIntLCIOneLine .sapUiIntLCIIconAndLines {
		min-height: calc(2rem ~"-" @_sap_ui_integration_ListContentItem_BottomBorderHeight);
	}

	&.sapUiIntLCIOneLine.sapUiIntLCIWithActionsStrip .sapUiIntLCIIconAndLines {
		min-height: 2rem;
	}

	&.sapUiIntLCIOneLine.sapUiIntLCIThumbnail .sapUiIntLCIIconAndLines {
		min-height: 5rem;
	}
}
/* END "ListContentItem.less" */

/* START "Microchart.less" */
/* ======================================================= */
/* CSS for control sap.ui.integration.controls/Microchart  */
/* Base theme                                              */
/* ======================================================= */

.sapUiIntMicrochartValue {

	&Neutral {
		color: var(--sapNeutralTextColor);
	}

	&Good {
		color: var(--sapPositiveTextColor);
	}

	&Error {
		color: var(--sapNegativeTextColor);
	}

	&Critical {
		color: var(--sapCriticalTextColor);
	}
}

.sapUiIntMicrochartChartWrapper {
	min-height: 1rem;
	max-height: 3rem;
	display: flex;
	align-items: center;
	justify-content: space-between;

	.sapUiIntMicrochartChart {
		flex-grow: 1;

		.sapUiIntMicrochartChartInner {
			height: 100%;
		}
	}
}

.sapUiIntMicrochartInHeader.sapUiIntMicrochartChartWrapper {
	flex-grow: 1;
	max-width: 8.5rem;
	min-width: 5rem;

	&:has(.sapUiIntMicrochartSizeS) {
		max-height: 3.5rem;
		margin-top: 0.25rem;
		max-width: 8.25rem;

		&:has(.sapMSLIInfo) {
			max-width: 13rem;
		}
	}

	.sapUiIntMicrochartSizeS {
		height: 3.5rem;
	}

	&:only-child {
		max-width: 100%;
	}
}
/* END "Microchart.less" */

/* START "MicrochartLegend.less" */
/* ============================================================= */
/* CSS for control sap.ui.integration.controls/MicrochartLegend  */
/* Base theme                                                    */
/* ============================================================= */

.sapUiIntMicrochartLegend {
	padding-top: 0.5rem;
	padding-left: 1rem;

	.sapUiIntMicrochartLegendItem {
		display: inline-flex;
		margin-right: 3rem;
		margin-bottom: 0.5rem;
		max-width: 100%;

		/* color segment */
		:first-child {
			flex-shrink: 0;
			width: 0.75rem;
			height: 0.75rem;
			margin-right: 0.5rem;
		}

		/* title */
		:nth-child(2) {
			height: 0.75rem;
			font-size: 0.75rem;
			overflow: hidden;
			white-space: nowrap;
			text-overflow: ellipsis;
		}
	}
}

.sapUiIntMicrochartLegendItem {

	&Neutral {
		background: @sapUiChartPaletteSemanticNeutral;
	}

	&Good {
		background: @sapUiChartPaletteSemanticGood;
	}

	&Error {
		background: @sapUiChartPaletteSemanticBad;
	}

	&Critical {
		background: @sapUiChartPaletteSemanticCritical;
	}
}
/* END "MicrochartLegend.less" */

/* START "ObjectContent.less" */
/* ======================================================= */
/* CSS for control sap.ui.integration.cards/ObjectContent  */
/* Base theme                                              */
/* ======================================================= */

.sapFCardObjectContent {
	&:not(.sapUiIntCardContentWithBlockingMessage) {
		padding: 1rem;
	}

	&.sapUiIntCardContentWithBlockingMessage {
		/* when we have blocking message we don't need the 1 rem padding, but need bigger min-height than the default (inline) one of 3rem */
		min-height: 5rem !important;
	}

	&.sapFCardObjectContentWithOverlay {

		.sapMFlexBox.sapUiIntImgWithOverlayLayout,
		.sapMFlexBox.sapFCardObjectGroup:has( > .sapUiIntImageWithOverlay:only-child ),
		 > .sapMFlexBox,
		.sapUiIntImageWithOverlay:only-child {
			height: 100%;
		}
	}
}

.sapUiIntCardWithFooter:not(.sapUiIntCardFooterInvisible) .sapFCardObjectContent {
	padding-bottom: 0;
}

.sapFCardObjectGroup {

	.sapFCardObjectItemTitle {
		margin-bottom: 0.5rem;
	}

	> .sapFCardObjectItemLabel {
		margin-top: 1rem;
	}

	&:not(.sapFCardObjectGroupLastInColumn) {
		padding-bottom: 1.75rem;
	}

	&:not(.sapFCardObjectGroupWithTitle) {

		/* Don't apply margin to the first label when there is no title */
		> .sapFCardObjectItemLabel {
			margin-top: 0;
		}

		/* Apply margin to the rest of the labels */
		> .sapFCardObjectItemLabel ~ .sapFCardObjectItemLabel {
			margin-top: 1rem;
		}
	}

	/* Don't add margin top to the value if it's the first element in the group (not labeled) */
	.sapFCardObjectItemValue:not(:first-child) {
		margin-top: 0.375rem;
	}

	.sapUiSizeCompact & .sapFCardObjectItemValue:not(:first-child) {
		margin-top: 0.25rem;
	}

	.sapFCardObjectItemPairContainer {
		min-width: 0; /* prevent overflow of the flex container */
	}

	.sapFCardObjectItemAvatar {
		margin-right: 0.5rem;
		flex-shrink: 0;
	}

	/* Rating Indicator */
	.sapMRI {
		margin-bottom: 0;
	}

	/* Image */
	> .sapFCardObjectImage:not(:first-child) {
		margin-top: 1rem;
	}

	.sapUiIntImageWithOverlay.sapFCardObjectImageFullWidth:first-child,
	.sapMImg.sapFCardObjectImageFullWidth:first-child {
		top: -16px;
		margin-top: 0;
		height: ~"calc(100% + 16px)";
	}

	.sapUiIntImageWithOverlay.sapFCardObjectImageFullWidth:last-child,
	.sapMImg.sapFCardObjectImageFullWidth:last-child {
		margin-bottom: -16px;
	}

	.sapUiIntImageWithOverlay.sapFCardObjectImageFullWidth:only-child,
	.sapMImg.sapFCardObjectImageFullWidth:only-child {
		margin-bottom: -32px;
	}

	.sapUiIntImageWithOverlay.sapFCardObjectImageFullWidth,
	.sapMImg.sapFCardObjectImageFullWidth {
		width: ~"calc(100% + 32px)";
		left: -16px;
	}

	.sapFCardObjectImage {
		position: relative;
	}
}

.sapFCardObjectSpaceBetweenGroup {
	margin-right: 2rem;
}

.sapFCard .sapFCardContent {

	.sapFCardObjectContent .sapUiAFLayout .sapUiAFLayoutItem.sapFCardInvisibleContent {
		display: none;
	}
}

/* Removing top space of NumericIndicators */
.sapUiIntOCNumericIndicators {

	/* size L */
	&:not(.sapMTileSmallPhone) {

		/* number */
		.sapMNCValue >:first-child {
			padding-top: 0;
			height: 2.5rem;
			line-height: 2rem;
		}

		/* trend and unit */
		.sapMNCValue :nth-child(2) {
			padding-top: 0;
			height: 2rem;
		}
	}

	/* size S */
	&.sapMTileSmallPhone {

		.sapMNC {
			width: auto;
		}

		/* number */
		.sapMNCValue :first-child {
			padding-top: 0.25rem;
		}

		/* trend and unit */
		.sapMNCValue .sapMNCIndScale {
			padding-top: 0px;

			.sapMNCScale,
			.sapMNCIndIcon {
				padding-top: 0;
			}
		}
	}
}

.sapUiIntOCNumericIndicators .sapUiIntOCNumericIndicatorsDetails {
	color: var(--sapTile_TextColor);
	height: 1rem;
}

.sapFCardObjectContent {

	.sapFAvatarGroupInactive {
		pointer-events: none;

		&.sapFAvatarGroupIndividual .sapFAvatarGroupItem {
			pointer-events: none;
		}
	}

	.sapFAvatarGroupMoreButton.sapMBtnDisabled {
		cursor: default;
		opacity: 1;
	}

	.sapUiIntCardObjectButtonGroup {
		padding-left: 0;

		.sapMBarChild:first-child {
			margin-left: 0;
		}
	}
}
/* END "ObjectContent.less" */

/* START "ObjectStatus.less" */
/* ============================================================== */
/* CSS for control sap.ui.integration.controls/sapUiIntObjStatus  */
/* Base theme                                                     */
/* ============================================================== */

.sapMObjStatus.sapUiIntObjStatus:not(.sapMObjStatusInverted) {

	.sapMObjStatusText,
	.sapMObjStatusWrapper {
		display: inline;
		vertical-align: top;
	}
}
/* END "ObjectStatus.less" */

/* START "WebPageContent.less" */
/* ======================================================== */
/* CSS for control sap.ui.integration.cards/WebPageContent  */
/* Base theme                                               */
/* ======================================================== */

.sapFCardWebPageContent {
	padding: 1px;

	.sapUiIntWPCFrame {
		display: block;
		box-sizing: border-box;
		border: none;
		width: 100%;
		min-height: 100%;
	}

	/* Hide the placeholder using CSS only, to avoid re-rendering the iframe, which results in page reload. */
	&:not(.sapFCardContentLoading) .sapFCardContentPlaceholder {
		display: none;
	}
}
/* END "WebPageContent.less" */

