button { font-size: 0.9rem; padding: 0.55rem 1.25rem; border-radius: 8px; border: 1px solid var(--border); cursor: pointer; font-weight: 500; transition: all 0.15s ease; &.primary { background: var(--primary); color: #fff; border-color: var(--primary); box-shadow: var(--shadow); &:hover { background: var(--primary-hover); border-color: var(--primary-hover); box-shadow: var(--shadow-md); } } &.secondary { background: var(--card-bg); color: var(--text); box-shadow: var(--shadow); &:hover { background: #f9fafb; border-color: #9ca3af; } } &.danger { background: #fff; color: var(--error-text); border-color: var(--error-border); &:hover { background: var(--error-bg); border-color: var(--error-text); } } &:disabled { opacity: 0.4; cursor: not-allowed; box-shadow: none; } &.btn-success, &.btn-success:hover { background: var(--success-text); border-color: var(--success-text); color: #fff; cursor: default; opacity: 0.7; } }