/* variables specific to current element */ $element-specific-variables: ""; .#{$namespace}contentBox { /* Save root element context for easy access if nesting is needed */ $self: &; /* properties of current element + media queries */ display: flex; align-items: stretch; @include custom-prop-fallback("background-color", "comp-alert-banner-primary-background-color"); @include custom-prop-fallback-override("comp-heading-text-color", "comp-alert-banner-primary-heading-text-color"); width: 100%; // for button elements text-align: left; gap: map-deep-get($token-spacer-inline-map, "md"); padding: map-deep-get($token-spacer-inset-map, "md"); border-radius: map-deep-get($token-radius-map, "16"); @include media-breakpoint-up(lg) { padding: map-deep-get($token-spacer-inset-map, "lg"); } /* 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 */ // contentBox__text &__text { // follows same logic as parent display: flex; flex-direction: column; justify-content: center; align-items: flex-start; @include custom-prop-fallback("color", "comp-heading-text-color"); flex-grow: 1; flex-shrink: 1; } /* modifiers */ // contentBox -inverted &.-info { // follows same logic as base element @include custom-prop-fallback("background-color", "comp-alert-banner-info-background-color"); @include custom-prop-fallback-override("comp-heading-text-color", "comp-alert-banner-info-heading-text-color"); &.-outline { @include custom-prop-fallback("border-color", "sys-color-border-status-info-strong"); } } &.-important { // follows same logic as base element @include custom-prop-fallback("background-color", "comp-alert-banner-danger-background-color"); @include custom-prop-fallback-override("comp-heading-text-color", "comp-alert-banner-danger-heading-text-color"); &.-outline { @include custom-prop-fallback("border-color", "sys-color-border-status-danger-strong"); } } &.-success { // follows same logic as base element @include custom-prop-fallback("background-color", "comp-alert-banner-success-background-color"); @include custom-prop-fallback-override("comp-heading-text-color", "comp-alert-banner-success-heading-text-color"); &.-outline { @include custom-prop-fallback("border-color", "sys-color-border-status-success-strong"); } } &.-warning { // follows same logic as base element @include custom-prop-fallback("background-color", "comp-alert-banner-warning-background-color"); @include custom-prop-fallback-override("comp-heading-text-color", "comp-alert-banner-warning-heading-text-color"); &.-outline { @include custom-prop-fallback("border-color", "sys-color-border-status-warning-strong"); } } &.-outline { border: $border-width*2 solid; @include custom-prop-fallback("background-color", "sys-color-elevation-surface-flat"); @include custom-prop-fallback-override("comp-heading-text-color", "comp-alert-banner-primary-heading-text-color"); } &.-hasLinkBtn { flex-wrap: wrap; } /* random parent element */ /* * * Syntax : .randomParentElt & {} * */ /* Pseudo Classes */ &:hover { @media (hover: hover) { } } &:focus { } &:active { } &:focus, &:active { } }