ui/_button.scss
@import "theme";
.btn
{
font-family: $display-font;
font-weight: 700;
font-size: 16px;
letter-spacing: 0.5px;
padding: 12px 22px;
border-radius: 12px;
border: 2px solid rgba( 0, 0, 0, 0.25 );
background-color: $surface-mid;
color: $text-default;
cursor: pointer;
align-items: center;
justify-content: center;
box-shadow:
0px 4px 0px rgba( 0, 0, 0, 0.35 ),
0px 6px 14px rgba( 0, 0, 0, 0.35 );
transition: all 0.12s ease-out;
}
.btn:hover
{
transform: translateY( -2px );
box-shadow:
0px 6px 0px rgba( 0, 0, 0, 0.4 ),
0px 10px 18px rgba( 0, 0, 0, 0.45 );
}
.btn:active
{
transform: translateY( 2px );
box-shadow:
0px 1px 0px rgba( 0, 0, 0, 0.35 ),
0px 2px 6px rgba( 0, 0, 0, 0.3 );
}
.btn.disabled
{
opacity: 0.4;
pointer-events: none;
transform: none;
}
// Primary - positive, headline action
.btn-primary
{
background-color: $accent-green;
color: $text-on-green;
}
.btn-primary:hover
{
background-color: #82e891;
box-shadow:
0px 6px 0px rgba( 0, 0, 0, 0.4 ),
0px 10px 22px rgba( 107, 221, 126, 0.55 );
}
// Secondary - neutral / utility
.btn-secondary
{
background-color: $surface-light;
color: $text-default;
}
.btn-secondary:hover
{
background-color: $surface-hover;
}
// Danger - destructive
.btn-danger
{
background-color: $accent-red;
color: white;
}
.btn-danger:hover
{
background-color: #ff7a93;
box-shadow:
0px 6px 0px rgba( 0, 0, 0, 0.4 ),
0px 10px 22px rgba( 255, 92, 122, 0.55 );
}
// Size variants
.btn-lg
{
font-size: 18px;
padding: 16px 32px;
border-radius: 14px;
}
.btn-sm
{
font-size: 13px;
padding: 8px 14px;
border-radius: 10px;
}