@mixin box($bg_color: white, $border_color: black) { border-radius: 10px; padding: 10px; border: 1px solid $border_color; background-color: $bg_color; color: $page_text_color; } @mixin error_box { @include box($error_box_color, $error_box_border_color); } @mixin info_box { @include box($info_box_color, $info_box_border_color); } @mixin success_box { @include box($success_box_color, $success_box_border_color); } @mixin warning_box { @include box($warning_box_color, $warning_box_border_color); } @mixin button { display: block; text-decoration: none; text-align: center; font-size: 100%; @include box($button_color, $secondary_border_color); &:hover { background-color: darken($button_color, 10%); } &:focus { background-color: darken($button_color, 20%); box-shadow: 0 0 1.5px 1px $secondary_color; } }