.ui-button{border-radius:var(--radius-sm);transition:all var(--transition-normal);color:var(--text-primary);border:1px solid #0000;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.ui-button:disabled{opacity:.5;cursor:not-allowed}.ui-button--sm{padding:.5rem .75rem;font-size:.875rem}.ui-button--md{padding:.75rem 1.5rem;font-size:1rem}.ui-button--lg{padding:1rem 2rem;font-size:1.125rem}.ui-button--primary{background:var(--accent-primary);color:#fff}.ui-button--primary:hover{background:var(--accent-hover);box-shadow:0 4px 12px var(--accent-glow)}.ui-button--secondary{background:var(--bg-surface-elevated);border-color:var(--border-subtle)}.ui-button--secondary:hover{border-color:var(--border-highlight);background:#ffffff0d}.ui-button--ghost{background:0 0}.ui-button--ghost:hover{background:var(--bg-surface-elevated)}.ui-button--glow{background:var(--accent-gradient);color:#fff;z-index:1;position:relative}.ui-button--glow:before{content:"";border-radius:inherit;background:var(--accent-secondary);z-index:-1;opacity:0;transition:opacity var(--transition-normal);position:absolute;inset:0}.ui-button--glow:hover:before{opacity:1}.ui-button--glow:hover{box-shadow:0 8px 24px var(--accent-glow);transform:translateY(-1px)}.ui-card{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}
