// Responsive breakpoints mixin @mixin add_variables( $view: frontend ) { @if frontend == $view { :root { @content; } } @if editor == $view { :root, body { @content; } } } // Button style // - Applies button styles to blocks and elements that share them. @mixin button-style() { border: var(--button--border-width) solid transparent; border-radius: var(--button--border-radius); cursor: pointer; display: block; font-weight: var(--button--font-weight); font-family: var(--button--font-family); font-size: var(--button--font-size); line-height: var(--button--line-height); padding: var(--button--padding-vertical) var(--button--padding-horizontal); text-decoration: none; // Standard Button Color Relationship Logic &:not(:hover):not(:active) { // Text colors &:not(.has-text-color) { color: var(--global--color-background); // Nested .has-background & { color: var(--local--color-background, var(--global--color-primary)); &.has-background { color: var(--global--color-primary); } } } // Background-colors &:not(.has-background) { background-color: var(--global--color-primary); // Nested .has-background & { background-color: var(--local--color-primary, var(--global--color-primary)); } } } // Hover Button color should match parent element foreground color &:hover, &:active { background-color: transparent; border-color: currentColor; color: inherit; } // Focus Button outline color should always match the current text color &:focus { outline-offset: -6px; outline: 2px dotted currentColor; } // Disabled Button colors &:disabled { background-color: var(--global--color-white-50); border-color: var(--global--color-white-50); color: var(--button--color-text-active); } } @mixin innerblock-margin-clear($container) { // Clear the top margin for the first-child. > #{$container} > *:first-child { margin-top: 0; } // Last child that is not the appender. > #{$container} > *:last-child:not(.block-list-appender) { margin-bottom: 0; } // When selected, the last item becomes the second last because of the appender. &.has-child-selected > #{$container} > *:nth-last-child(2), &.is-selected > #{$container} > *:nth-last-child(2) { margin-bottom: 0; } }