/* decor */ %button, %internal-button { @extend %user-select-none; cursor: pointer; white-space: nowrap; } %button:disabled, %internal-button:disabled { cursor: default; box-shadow: none; } %copy-button { @extend %button; min-height: 17px; } %copy-button::before { @extend %with-copy-action-mask, %as-pseudo; background-color: $gray-500; } %copy-button:not(:empty)::before { margin-right: 10px; } %primary-button, %secondary-button, %dangerous-button { @extend %button; border-width: 1px; border-radius: $decor-radius-100; box-shadow: $decor-elevation-300; } /* color */ %copy-button { color: $color-action; background-color: $color-transparent; } %copy-button:hover:not(:disabled):not(:active), %copy-button:focus { /*frame-grey frame-blue*/ color: $color-action; background-color: $gray-050; } %copy-button:hover::before { background-color: $blue-500; } %copy-button:active { background-color: $gray-200; } %primary-button { @extend %frame-blue-800; } %primary-button:hover:not(:disabled):not(:active), %primary-button:focus { @extend %frame-blue-700; } %primary-button:disabled { @extend %frame-blue-600; } %primary-button:hover:active { @extend %frame-blue-900; } /**/ %secondary-button:hover:not(:disabled):not(:active), %secondary-button:focus { @extend %frame-gray-300; } %secondary-button { @extend %frame-gray-400; } %secondary-button:disabled { color: $gray-600; } %secondary-button:active { /* %frame-gray-something */ @extend %frame-gray-700; background-color: $gray-200; color: $gray-800; border-color: $gray-700; } /**/ %dangerous-button { @extend %frame-red-300; } %dangerous-button:hover:not(:disabled):not(:active), %dangerous-button:focus { @extend %frame-red-700; } %dangerous-button:disabled { @extend %frame-red-600; } %dangerous-button:hover:active { @extend %frame-red-900; } %internal-button { color: $gray-900; } %internal-button-dangerous { @extend %frame-red-300; } %internal-button-dangerous-intent { @extend %frame-red-700; } %internal-button-intent { background-color: $gray-050; } %internal-button:focus, %internal-button:hover { @extend %internal-button-intent; } %internal-button-dangerous:focus, %internal-button-dangerous:hover { @extend %internal-button-dangerous-intent; } %split-button span::after { @extend %as-pseudo; position: absolute; background-color: $gray-300; width: 1px; top: 0; height: 100%; margin-left: 8px; } %split-button::before { @extend %as-pseudo; height: 16px; } %sort-button::before { @extend %with-sort-icon; margin-top: 8px; width: 16px; height: 16px; }