.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:var(--radius-md);font-weight:700;font-family:var(--font-display);cursor:pointer;text-decoration:none;transition:background .18s,color .18s,box-shadow .18s,transform .18s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:.4rem .85rem;font-size:.875rem}.btn-md{padding:.65rem 1.2rem;font-size:.9375rem}.btn-lg{padding:.85rem 1.6rem;font-size:1rem}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:var(--color-text-inverse);box-shadow:0 8px 22px rgb(15 118 110/28%)}.btn-primary:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.05);text-decoration:none}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-muted);text-decoration:none}.btn-ghost{background:transparent;color:var(--color-text-muted)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-muted);color:var(--color-text);text-decoration:none}.btn-danger{background:var(--color-danger);color:white}.btn-block{width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{padding:var(--space-lg);border-bottom:1px solid var(--color-border-subtle)}.card-header h3{margin-bottom:.25rem}.card-header p{margin:0;font-size:.9375rem}.card-body{padding:var(--space-lg)}.card-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border-subtle);background:var(--color-bg)}