.button{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius);font-family:var(--cyber-font-mono);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:var(--cyber-border-width) solid transparent;white-space:nowrap;max-width:100%;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);font-weight:600;line-height:1.4;display:inline-flex;position:relative;overflow:hidden}.button:focus-visible{box-shadow:0 0 0 2px var(--focused-border-color), var(--cyber-neon-glow);outline:none}.button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;pointer-events:none}.button[data-style=primary]{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.button[data-style=primary]:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--cyber-neon-glow)}.button[data-style=primary]:active:not(:disabled){box-shadow:var(--cyber-neon-glow-strong)}.button[data-style=primary]:after{content:"";background:repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0, 0, 0, var(--cyber-scanline-opacity)) 2px, rgba(0, 0, 0, var(--cyber-scanline-opacity)) 4px);pointer-events:none;position:absolute;inset:0}.button[data-style=secondary]{background:var(--primary-color-5);color:var(--secondary-color-1);border-color:var(--color-border)}.button[data-style=secondary]:hover:not(:disabled){background:var(--primary-color-6);border-color:var(--secondary-color-5)}.button[data-style=destructive]{background:var(--color-danger);color:var(--color-on-danger);border-color:var(--color-danger)}.button[data-style=destructive]:hover:not(:disabled){box-shadow:0 0 8px rgba(255,0,64,.5),0 0 20px rgba(255,0,64,.2)}.button[data-style=outline]{color:var(--color-primary);border-color:var(--color-primary);background:0 0}.button[data-style=outline]:hover:not(:disabled){background:var(--primary-color-5);box-shadow:var(--cyber-neon-glow)}.button[data-style=ghost]{color:var(--color-on-surface);background:0 0;border-color:transparent}.button[data-style=ghost]:hover:not(:disabled){background:var(--primary-color-5);color:var(--color-primary)}@media (width<=768px){.button{white-space:normal;text-align:center}}