feat(buttons): dark-surface button variants with WCAG-AA contrast
This commit is contained in:
@@ -53,6 +53,7 @@
|
|||||||
|
|
||||||
--color-primary-fixed: #dce1ff;
|
--color-primary-fixed: #dce1ff;
|
||||||
--color-primary-fixed-dim: #b6c4ff;
|
--color-primary-fixed-dim: #b6c4ff;
|
||||||
|
--color-on-primary: #05297a;
|
||||||
--color-on-primary-fixed: #00164e;
|
--color-on-primary-fixed: #00164e;
|
||||||
--color-on-primary-fixed-variant: #264191;
|
--color-on-primary-fixed-variant: #264191;
|
||||||
|
|
||||||
|
|||||||
@@ -174,3 +174,43 @@ x-button:has(.button[data-button-width="full"]) { @apply w-full; }
|
|||||||
opacity: 1;
|
opacity: 1;
|
||||||
outline: 2px solid var(--color-info, #233a7a);
|
outline: 2px solid var(--color-info, #233a7a);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Dark-surface button variants (WCAG-AA against #100e0b) */
|
||||||
|
.button {
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
font-weight: 600;
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.1;
|
||||||
|
padding: 0.5rem 2rem;
|
||||||
|
border-radius: 0.5rem;
|
||||||
|
border: 3px solid transparent;
|
||||||
|
text-decoration: none;
|
||||||
|
transition: color 200ms ease, background-color 200ms ease, border-color 200ms ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button:active { transform: scale(0.99); }
|
||||||
|
@media (prefers-reduced-motion: reduce) { .button:active { transform: none; } }
|
||||||
|
|
||||||
|
.button:focus-visible { outline: 2px solid var(--color-primary, #b6c4ff); outline-offset: 3px; }
|
||||||
|
|
||||||
|
.button--primary {
|
||||||
|
background: var(--color-primary, #b6c4ff);
|
||||||
|
color: var(--color-on-primary, #05297a);
|
||||||
|
border-color: var(--color-primary, #b6c4ff);
|
||||||
|
}
|
||||||
|
.button--primary:hover { background: var(--color-primary-87, #dce1ff); border-color: var(--color-primary-87, #dce1ff); }
|
||||||
|
|
||||||
|
.button--outline {
|
||||||
|
background: transparent;
|
||||||
|
color: var(--color-on-surface, #e3e1e9);
|
||||||
|
border-color: var(--color-outline, #8f909d);
|
||||||
|
}
|
||||||
|
.button--outline:hover { border-color: var(--color-primary, #b6c4ff); color: var(--color-primary, #b6c4ff); }
|
||||||
|
|
||||||
|
.button--secondary {
|
||||||
|
background: var(--color-surface-container-high, #292a2f);
|
||||||
|
color: var(--color-on-surface, #e3e1e9);
|
||||||
|
border-color: var(--color-outline-variant, #444651);
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user