|
- @use 'variables' as *;
-
- // ─── Base Button ─────────────────────────────────────────────────────────────
- .btn {
- display: inline-flex;
- align-items: center;
- justify-content: center;
- gap: $space-2;
- padding: $space-2 $space-5;
- font-family: $font-family-base;
- font-size: $font-size-base;
- font-weight: $font-weight-medium;
- line-height: 1.4;
- border: none;
- border-radius: $radius-pill;
- cursor: pointer;
- text-decoration: none;
- transition:
- background-color $transition-fast,
- box-shadow $transition-fast,
- transform $transition-fast;
- white-space: nowrap;
-
- &:active {
- transform: translateY(1px);
- }
-
- &:focus-visible {
- outline: 2px solid $color-primary;
- outline-offset: 3px;
- }
- }
-
- // ─── Variants ────────────────────────────────────────────────────────────────
- .btn-primary {
- background: linear-gradient(135deg, $color-accent-light, $color-accent);
- color: $color-white;
- box-shadow: $shadow-button;
-
- &:hover {
- background: linear-gradient(135deg, $color-accent, $color-accent-dark);
- box-shadow: 0 3px 12px rgba(240, 165, 0, 0.45);
- }
- }
-
- .btn-secondary {
- background: transparent;
- color: $color-text-muted;
- padding-left: $space-3;
- padding-right: $space-3;
-
- &:hover {
- color: $color-text-dark;
- text-decoration: underline;
- }
- }
-
- .btn-ghost {
- background: rgba(255, 255, 255, 0.15);
- color: $color-white;
- border-radius: $radius-sm;
- padding: $space-1 $space-3;
-
- &:hover {
- background: rgba(255, 255, 255, 0.25);
- }
- }
|