/* variables specific to current element */ $element-specific-variables: ""; .#{$namespace}announceBubble { /* Save root element context for easy access if nesting is needed */ $self: &; /* properties of current element + media queries */ display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; border-radius: map-deep-get($token-radius-map, "circle"); @include custom-prop-fallback("background-color", "sys-color-background-highlight-100"); @include custom-prop-fallback("color", "sys-color-text-neutral-inverse"); width: map-deep-get($token-sizes-unit-map, "8") * 17; height: map-deep-get($token-sizes-unit-map, "8") * 17; position: relative; z-index: z("zero"); /* Pseudo Elements */ &::before { content: ""; background-color: inherit; width: map-deep-get($token-sizes-unit-map, "24"); height: map-deep-get($token-sizes-unit-map, "24"); position: absolute; top: 100%; right: 75%; transform: translateY(-155%); } &::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 */ // announceBubble__text &__text { // follows same logic as parent max-width: 11ch; } /* modifiers */ // announceBubble -warning &.-warning { // follows same logic as base element @include custom-prop-fallback("background-color", "sys-color-background-status-warning-100"); } // announceBubble -critical &.-critical { // follows same logic as base element @include custom-prop-fallback("background-color", "sys-color-background-status-danger-100"); } /* random parent element */ /* * * Syntax : .randomParentElt & {} * */ /* Pseudo Classes */ &:hover { @media (hover: hover) { } } &:focus { } &:active { } &:focus, &:active { } }