.btn{border-radius:var(--radius-md);height:36px;font-size:var(--font-base);font-weight:var(--weight-medium);align-items:center;gap:var(--space-md);padding:0 14px;transition:background .15s,border-color .15s,color .15s,transform .12s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--fill-cta);color:#fff}.btn-primary:hover{background:var(--fill-cta-hover)}.btn-ghost{background:var(--surface);border:1px solid var(--border-strong);color:var(--ink)}.btn-ghost:hover{background:var(--surface-hover)}.btn-sm{height:30px;font-size:var(--font-cap);border-radius:var(--radius-md);padding:0 11px}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}
