/* variables specific to current element */ $element-specific-variables: ""; .#{$namespace}sitfinCard { /* Save root element context for easy access if nesting is needed */ $self: &; /* properties of current element + media queries */ display: flex; flex-direction: column; justify-content: space-between; position: relative; border: $border-width solid; @include custom-prop-fallback("border-color","sys-color-border-primary-moderate"); @include spacer-component-inset-horiz-greater("sm","md"); @include custom-prop-fallback("background-color", "comp-card-background-color"); width: 265px; min-height: 128px; border-radius: map-deep-get($token-radius-map, "4"); flex-shrink: 0; /* Pseudo Elements */ &::before { } &::after { } /* Include elements that are linked to the current element but have to reside at the root level of the stylesheet (e.g: keyframes) */ @at-root { @keyframes sitfinSlidingLoader { 0% { background-position: 100% 100%; } 100% { background-position: -100% 100%; /*OR top left*/ } } } /* children - write selector in full in comments in order to facilitate search */ // sitfinCard__header &__header { // follows same logic as parent display: flex; justify-content: space-between; width: 100%; background-color: inherit; } &__action#{$self}__action { position: relative; top: -(map-deep-get($token-spacer-stack-max-map, "sm")); right: 0; &:hover, &:focus { background-color: inherit !important; @include custom-prop-fallback("color", "sys-color-text-secondary-vivid", "true", "true"); } } &__middle { //position: relative; //top: -(map-deep-get($token-spacer-stack-map, "xs")); background-color: inherit; width: 100%; &.-hasSeparator { &::after { content: ""; display: block; height: $border-width; @include custom-prop-fallback("background-color", "sys-color-border-primary-subtle"); } } } &__middleIcon { position: absolute; z-index: z("low"); top: 50%; transform: translateY(-50%); right: map-deep-get($token-spacer-inset-map, "md"); background-color: inherit; width: map-deep-get($token-sizes-unit-map, "40"); padding-left: map-deep-get($token-spacer-inline-map, "md"); box-sizing: content-box; } &__footer { display: flex; justify-content: space-between; align-items: flex-end; width: 100%; @include spacer-component-inline("md"); } &__footerIcon { width: map-deep-get($token-sizes-unit-map, "40"); position: relative; top: 0.125em; } &__footerBlockStart { flex-grow: 1; @include spacer-component-inline("xs"); position: relative; min-width: 0; // for truncate in flex context } &__loader { @extend %contentLoadingBlock; min-height: map-deep-get($token-sizes-unit-map, "16"); transform: translateY(-50%); } &__dotBefore, &__dotAfter { display: none; position: absolute; top: 50%; } &__dotBefore { right: 100%; transform: translateY(-50%) translateX(50%); } &__dotAfter { left: 100%; transform: translateY(-50%) translateX(-50%); } &__alert { @include custom-prop-fallback("color", "sys-color-text-status-warning-vivid"); &::before { font-size: map-deep-get($token-font-size-map, "body", "m"); } } &__helper { @include custom-prop-fallback("color", "sys-color-text-primary-muted"); } /* modifiers */ // sitfinCard -rounded &.-rounded { // follows same logic as base element border-radius: map-deep-get($token-radius-map, "24"); } &.-dashed { border-style: dashed; } /* random parent element */ /* * * Syntax : .randomParentElt & {} * */ /* Pseudo Classes */ &:hover { @media (hover: hover) { box-shadow: map-deep-get($token-shadow-map,"active"); } } &:focus { } &:active { } &:focus, &:active { } }