.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:3rem;padding:var(--space-3) var(--space-5);border:var(--border-width) solid transparent;border-radius:var(--radius-button);font-family:var(--ff-body);font-weight:700;font-size:var(--text-base);text-align:center;cursor:pointer;line-height:1.2;text-decoration:none;display:inline-flex}@media (prefers-reduced-motion:no-preference){.button{transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out)}}.button--lg{min-height:3.5rem;padding:var(--space-4) var(--space-6);font-size:var(--text-md)}.button--sm{min-height:2.75rem;padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.button--primary{background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--lift-shadow)}.button--outline{color:var(--color-text);border-color:var(--color-text-subtle);background:0 0}.button--outline:hover{border-color:var(--color-accent);color:var(--color-accent)}@media (prefers-reduced-motion:no-preference){.button:hover{transform:translateY(-2px)}.button--primary:hover{box-shadow:0 8px 0 var(--color-bg-deep)}.button:active{box-shadow:0 2px 0 var(--color-bg-deep);transform:translateY(2px)}.button:hover .button__icon-end{transform:translate(3px)}.button__icon-end{transition:transform var(--duration-fast) var(--ease-out)}}
