@mixin destructive_button() {
  button.destructive-action {
    border-width: 1px;
    border-style: solid;
    border-color: gtkmix($error_color, $fg_color, 0.2);
    border-radius: $button_radius;
    color: gtkmix($selected_fg_color, $error_color, 0.1);
    background-color: $error_color;
    background-image: linear-gradient(to bottom, gtkshade($error_color, 1.2), gtkshade($error_color, 0.8));

    &:hover {
      border-color: gtkmix($error_color, $fg_color, 0.3);
      background-color: gtkmix($error_color, $selected_fg_color, 0.2);
    }

    &:active {
      border-color: gtkmix($error_color, $fg_color, 0.3);
      background-color: gtkmix($error_color, $fg_color, 0.1);
      background-image: linear-gradient(to top, gtkshade($error_color, 1.2), gtkshade($error_color, 0.8));
    }

    &:backdrop {
      border-color: gtkmix($error_color, $unfocused_fg_color, 0.2);
      color: gtkmix($unfocused_selected_fg_color, $error_color, 0.1);
      background-color: gtkmix($error_color, $unfocused_bg_color, 0.3);
      background-image: linear-gradient(to bottom, gtkshade(gtkmix($error_color, $unfocused_bg_color, 0.3), 1.2), gtkshade(gtkmix($error_color, $unfocused_bg_color, 0.3), 0.8));
    }
  }
}
