/* variables specific to current element */ @use "sass:math"; $img-container-dimensions-mobile: map-deep-get($token-sizes-unit-map, "64"); $img-container-dimensions-desktop: map-deep-get($token-sizes-unit-map, "120"); .#{$namespace}iconHeader { /* Save root element context for easy access if nesting is needed */ $self: &; /* properties of current element + media queries */ position: relative; height: map-deep-get($token-sizes-unit-map, "32"); border-top-left-radius: map-deep-get($token-radius-map, "16"); border-top-right-radius: map-deep-get($token-radius-map, "16"); @include custom-prop-fallback("background-image", "sys-color-background-primary-gradient"); margin-bottom: math.div($img-container-dimensions-mobile, 2); flex-shrink: 0; @include media-breakpoint-up(md) { height: 100px; margin-bottom: math.div($img-container-dimensions-desktop, 2); } /* 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 { } /* children - write selector in full in comments in order to facilitate search */ // iconHeader__icon &__iconContainer { // follows same logic as parent width: $img-container-dimensions-mobile; height: $img-container-dimensions-mobile; border-radius: map-deep-get($token-radius-map, "circle"); display: flex; align-items: center; justify-content: center; position: absolute; right: map-deep-get($token-spacer-unit-map, "16"); top: 100%; transform: translate(0,-25%); background-color: map-deep-get($token-color-grayscale-map, "0"); @include spacer-component-inset("md"); @include media-breakpoint-up(md) { right: auto; left: 50%; transform: translate(-50%,-50%); width: $img-container-dimensions-desktop; height: $img-container-dimensions-desktop; @include spacer-component-inset("lg"); } * { max-height: 100%; } } /* modifiers */ // iconHeader -bfm &.-bfm { // follows same logic as base element @include gradient-directional(map-deep-get($token-color-brand-map, "secondary", "160"), map-deep-get($token-color-brand-map, "secondary", "140"), 0, 100%, 45deg, true); } /* random parent element */ /* * * Syntax : .randomParentElt & {} * */ /* Pseudo Classes */ &:hover { @media (hover: hover) { } } &:focus { } &:active { } &:focus, &:active { } }